ในพื้นที่เก็บข้อมูลนี้ คุณจะพบซอร์สโค้ดที่กลับรายการทั้งหมดสำหรับ GTA III (สาขาหลัก) และ GTA VC (สาขาไมอามี)
ได้รับการทดสอบและใช้งานได้บน Windows, Linux, MacOS และ FreeBSD บน x86, amd64, arm และ arm64
การเรนเดอร์ได้รับการจัดการโดย RenderWare ดั้งเดิม (D3D8) หรือการปรับใช้ librw (D3D9, OpenGL 2.1 หรือสูงกว่า, OpenGL ES 2.0 หรือสูงกว่า)
เสียงเสร็จสิ้นด้วย MSS (โดยใช้ dll จาก GTA ดั้งเดิม) หรือ OpenAL
โครงการนี้ยังได้รับการย้ายไปยัง Nintendo Switch, Playstation Vita และ Nintendo Wii U
เรายังไม่สามารถสร้างสำหรับ PS2 หรือ Xbox ได้ หากคุณสนใจที่จะทำเช่นนั้น โปรดติดต่อเรา
เราได้นำการเปลี่ยนแปลงและปรับปรุงหลายอย่างมาสู่เกมต้นฉบับ สามารถกำหนดค่าได้ใน core/config.h
บางส่วนสามารถสลับได้ในขณะรันไทม์ บางส่วนไม่สามารถสลับได้
ควรมี/ทำสิ่งต่อไปนี้ก็ดี:
การแก้ไขเนื้อหา (โมเดล พื้นผิว การจัดการ สคริปต์ ...) ควรทำงานในลักษณะเดียวกับ GTA ดั้งเดิมเป็นส่วนใหญ่
สคริปต์ CLEO ทำงานร่วมกับ CLEO Redux
Mods ที่เปลี่ยนแปลงโค้ด (dll/asi, ตัวปรับขีดจำกัด) จะ ไม่ ทำงาน บางสิ่งที่ม็อดเหล่านี้ทำได้ถูกนำไปใช้แล้วใน re3 (ส่วนใหญ่ของ SkyGFX, GInput, SilentPatch, ฟิกซ์ไวด์สกรีน) ส่วนอื่นๆ ก็สามารถทำได้ง่ายๆ (เพิ่มลิมิส ดูที่ config.h
) ส่วนอื่นๆ ก็แค่เขียนใหม่และรวมเข้ากับโค้ด โดยตรง. ขออภัยในความไม่สะดวก
เมื่อใช้ premake คุณอาจต้องการชี้ตัวแปรสภาพแวดล้อม GTA_III_RE_DIR ไปที่โฟลเดอร์รูท GTA3 หากคุณต้องการให้ไฟล์ปฏิบัติการถูกย้ายไปที่นั่นผ่านสคริปต์หลังการสร้าง
โคลนพื้นที่เก็บข้อมูลด้วย git clone --recursive https://github.com/halpz/re3.git
จากนั้น cd re3
ลงในที่เก็บโคลน
สำหรับ Linux ที่ใช้ premake ให้ดำเนินการต่อ: สร้างบน Linux
ติดตั้ง python และ conan จากนั้นรัน build
conan export vendor/librw librw/master@
mkdir build
cd build
conan install .. re3/master@ -if build -o re3:audio=openal -o librw:platform=gl3 -o librw:gl3_gfxlib=glfw --build missing -s re3:build_type=RelWithDebInfo -s librw:build_type=RelWithDebInfo
conan build .. -if build -bf build -pf package
สำหรับ MacOS ที่ใช้ premake ให้ดำเนินการต่อ: สร้างบน MacOS
สำหรับ FreeBSD ที่ใช้ premake ให้ดำเนินการต่อ: สร้างบน FreeBSD
สมมติว่าคุณมี Visual Studio 2015/2017/2019:
premake-vsXXXX.cmd
บนโฟลเดอร์รูทMicrosoft เพิ่งยกเลิกการดาวน์โหลด DX9 SDK คุณสามารถดาวน์โหลดเวอร์ชันที่เก็บถาวรได้ที่นี่: https://archive.org/details/dxsdk_jun10
หากคุณเลือก OpenAL บน Windows คุณต้องอ่านการเรียกใช้ OpenAL build บน Windows
premake มีตัวเลือก
--with-lto
หากคุณต้องการให้โปรเจ็กต์ถูกคอมไพล์ด้วย Link Time Optimization
มีการตั้งค่าต่างๆ ใน config.h คุณอาจต้องการดูที่นั่น
re3 ใช้เอ็นจิ้นการเรนเดอร์การแทนที่โฮมบรูว์ RenderWare โดยสมบูรณ์ librw. librw มาในรูปแบบโมดูลย่อยของ re3 แต่คุณสามารถใช้ตัวแปรสภาพแวดล้อม LIBRW เพื่อระบุเส้นทางไปยัง librw ของคุณเองได้
หากคุณรู้สึกว่าจำเป็น คุณยังสามารถใช้ CodeWarrior 7 เพื่อคอมไพล์ re3 โดยใช้โปรเจ็กต์ codewarrior/re3.mcp ที่ให้มา ซึ่งต้องใช้ไลบรารี RW33 ดั้งเดิมและ DX8 SDK แม้ว่าบิลด์จะไม่เสถียรเมื่อเปรียบเทียบกับบิลด์ MSVC และส่วนใหญ่มีไว้เพื่อใช้เป็นข้อมูลอ้างอิง
ตราบใดที่ไม่ใช่เลเยอร์ linux/cross-platform/ความเข้ากันได้ โค้ดทั้งหมดบน repo ที่ไม่อยู่เบื้องหลังเงื่อนไขของตัวประมวลผลล่วงหน้า (เช่น FIX_BUGS) จะถูกย้อนกลับโค้ดจากไบนารีดั้งเดิม โดยสมบูรณ์
เรา ไม่ ยอมรับโค้ดที่กำหนดเอง ตราบใดที่ไม่ได้ห่อผ่านเงื่อนไขของตัวประมวลผลล่วงหน้า หรือเป็น linux/โครงกระดูกข้ามแพลตฟอร์ม/เลเยอร์ที่เข้ากันได้
เรายอมรับเฉพาะการประชาสัมพันธ์ประเภทนี้เท่านั้น
เรามีเอกสาร Coding Style ที่ไม่ได้รับการปฏิบัติตามหรือบังคับใช้เป็นอย่างดี
อย่าใช้คุณสมบัติจาก C ++ 11 หรือใหม่กว่า
re3 เริ่มต้นในช่วงฤดูใบไม้ผลิปี 2018 โดยเริ่มแรกเป็นวิธีการทดสอบการชนกันแบบย้อนกลับและรหัสฟิสิกส์ภายในเกม สิ่งนี้ทำได้โดยการแทนที่ฟังก์ชันเดียวของเกมด้วยฟังก์ชันที่กลับกันโดยใช้ dll
หลังจากทำงานไปสักพัก โปรเจ็กต์ก็หยุดนิ่งไปประมาณหนึ่งปี และถูกหยิบขึ้นมาอีกครั้งและถูกผลักไปที่ GitHub ในเดือนพฤษภาคม 2019 ตอนนั้นฉัน (aap) กลับรายการโค้ดประมาณ 10,000 บรรทัดและประมาณว่าเกมสุดท้ายจะมีประมาณ 200- 250,000 คนอื่นๆ เข้าร่วมความพยายามอย่างรวดเร็ว (Fire_Head, shfil, erorcun และ Nick007J ตามลำดับเวลา และ Serge ในภายหลังเล็กน้อย) และเรามีความคืบหน้าอย่างรวดเร็วตลอดฤดูร้อนปี 2019 หลังจากนั้นความเร็วก็ช้าลงเล็กน้อย
เนื่องจากทุกคนอยู่บ้านในช่วงเริ่มต้นของการแพร่ระบาดของโคโรนา ทุกคนจึงมีเวลามากมายในการทำงาน re3 อีกครั้ง และในที่สุดเราก็มี exe แบบสแตนด์อโลนในเดือนเมษายน 2020 (ตอนนั้นประมาณ 180,000 ไลน์)
หลังจากตื่นเต้นเร้าใจและแก้ไขและขัดเกลาโค้ดต่อไป reVC ก็เริ่มต้นในต้นเดือนพฤษภาคม 2020 โดยเริ่มจากโค้ด re3 ไม่ใช่เริ่มจากการแทนที่ฟังก์ชันด้วย dll หลังจากไม่กี่เดือนของความก้าวหน้าอย่างต่อเนื่อง เราถือว่า reVC เสร็จสิ้นในเดือนธันวาคม
ตั้งแต่นั้นเป็นต้นมา เราได้เริ่มต้น reLCS ซึ่งขณะนี้อยู่ระหว่างดำเนินการ
เราไม่รู้สึกว่าเราอยู่ในฐานะที่จะให้สิทธิ์ใช้งานโค้ดนี้ได้
รหัสควรใช้เพื่อการศึกษา เอกสารประกอบ และการดัดแปลงเท่านั้น
เราไม่สนับสนุนการละเมิดลิขสิทธิ์หรือการใช้งานเชิงพาณิชย์
โปรดเก็บผลงานโอเพ่นซอร์สที่สืบทอดมาและให้เครดิตที่เหมาะสม