
เครื่องยนต์ Razix
Razix เป็นเครื่องมือวิจัยที่มีประสิทธิภาพสูงสำหรับการผลิตไปป์ไลน์โดยเน้นการทดลองด้วยเทคนิคการแสดงผลที่แตกต่างกัน Razix รองรับระบบ Windows, Mac, Linux, PSVITA และ PS3
| คำเตือน: ปัจจุบัน Razix เป็น WIP และ Renderer กำลังอยู่ระหว่างการออกแบบที่สำคัญการยกเครื่องด้วยความระมัดระวังในขณะที่ใช้ตรวจสอบแผนงานด้านล่างสำหรับข้อมูลการเปิดตัว |
|---|
เกี่ยวกับ
เครื่องยนต์ Cross-Platform 2D และ 3D ที่มีการรองรับ API แบบเรนเดอร์หลายรายการ (Vulkan, DirectX 12) รองรับการแสดงผลที่หลากหลายโดยเน้นไปที่การเพิ่มประสิทธิภาพฉากและการใช้เทคนิคการแสดงผลงานศิลปะที่ทันสมัย สถาปัตยกรรมเครื่องยนต์รองรับการออกแบบที่มีการศึกษาและปรับให้เหมาะสม
ดูกระดาน Trello และบันทึกสถาปัตยกรรมบน draw.io
คุณสมบัติ
- สร้างขึ้นโดยใช้ C ++ 17 (เครื่องยนต์จะถูกเปลี่ยนกลับเป็น C ++ 14 เมื่อถูกลบออกจาก Entt/SOL และ Jolt เท่านั้นที่จะรวบรวมในโหมด C ++ 17)
- C ++ 14 มากกว่า C ++ 11 เนื่องจาก
constexpr และ sizeof และ lamdbas ที่ได้รับการปรับปรุงเป็นสิ่งจำเป็นสำหรับ FrameGraph
- รองรับ Windows, Linux, MacOS
- สนับสนุน OpenGL, Vulkan & DirectX 12
- Data Driven FrameGraph ใช้เครื่องยนต์ Frostbite ของ EA (ใช้การใช้งาน FrameGraph ของ Skaarj 1989)
- ใช้ตัวแก้ไขกราฟโหนดที่กำหนดเอง
ตามโหนด ตัวแก้ไขกราฟเฟรม |  |
|---|
- เสียง 3 มิติโดยใช้โอเพ่นซอร์ส
- เสร็จสิ้นไปป์ไลน์รอการตัดบัญชี + ทรัพยากรแบบไม่มี bindless + เรนเดอร์เหมือน Nanite (การสนับสนุนในอนาคตสำหรับตัวแก้ไขกราฟเรนเดอร์ที่ปรับแต่งได้สำหรับการควบคุมที่สมบูรณ์)
- ตัวแก้ไขระดับและเครื่องมือที่สร้างขึ้นโดยใช้ QT
- การสนับสนุนเครื่องยนต์ฟิสิกส์หลายตัว
- ฟิสิกส์ 3 มิติโดยใช้ Jolt
- การสนับสนุนการเขียนสคริปต์ LUA ขั้นพื้นฐานสำหรับเอนทิตี
- การทำโปรไฟล์ที่มีรายละเอียดอย่างมากโดยใช้ Tracy และ RenderDoc Integrated
- รองรับภาษาการแรเงา GLSL, HLSL เพื่อสร้างวัสดุที่กำหนดเอง + ไฟล์ Razix Shaders ที่กำหนดเองเพื่อการรวบรวมได้ง่าย
- การจัดการฐานทรัพยากรพูลและรูปแบบสินทรัพย์ที่กำหนดเอง
| ผู้ดูทรัพยากร |  |
|---|
- สถาปัตยกรรมท่อส่งข้อมูล - FrameGraph ใช้ไฟล์ JSON
- หน่วยความจำ Razix Razix และ Razix ที่กำหนดเอง
- WorldRenderer ผ่านไป
- แสงและเงา
- ไฟทิศทางด้วย CSM (การทำแผนที่เงาแบบเรียงซ้อน)
- ไฟจุด
- ไฟสปอต
- PBR รอการตัดบัญชี
- ibl
- Skybox (HDR & ขั้นตอน)
- ssao
- ภาพวาดดีบั๊ก
- Imgui
- การทำ tonemapping
- FXAA
- TAA (WIP)
คุณสมบัติการทดลอง:
- การเรียนรู้ของเครื่อง Sandbox (Custom NNS Class + Transformers WIP) CPU เท่านั้นในตอนนี้อาจถูกพอร์ตผ่านเลเยอร์เครื่องยนต์ RHI
- การทำโปรไฟล์งบประมาณหน่วยความจำ/เฟรมตามเวลา (แรงบันดาลใจจาก SMS GDC Talk และ Insomniac Engine)
DirectX11, OpenGL เลิกใช้แล้ว จะรองรับ API ระดับสูงและระดับ RTX ระดับสูงเท่านั้น PSVITA (GXM) และ PS3 (GCM) จะได้รับการสนับสนุนในอนาคต
เครื่องมือ
Razix ยังมีชุด เครื่องมือ GUI และ CommMand Line พร้อมกับบรรณาธิการเพื่อวัตถุประสงค์ต่าง ๆ เช่น
- Razix Asset Packer - CLI Tool + API สำหรับ Editor - Export 3D Models ไปยังรูปแบบ Razix ที่กำหนดเองและวัสดุ
แผนงาน
V 1.0.0 - RC

การบริจาค
ข้อมูลเพิ่มเติมจะได้รับการอัปเดตเกี่ยวกับการสร้าง PRS และวิธีอื่น ๆ ในการมีส่วนร่วมใน Razix Engine
คู่มือสไตล์
ตรวจสอบคู่มือสไตล์สำหรับการบังคับใช้สไตล์ Razix
ภาพหน้าจอ/การสาธิต

สถาปัตยกรรม
ยังคงเป็นงานที่กำลังดำเนินอยู่

อดีต. Lua Scriping API Cheatsheet 
ตรวจสอบโฟลเดอร์เอกสารหรือบันทึกสถาปัตยกรรมที่ draw.io สำหรับคำอธิบายสถาปัตยกรรมโดยละเอียด
| ระบบหลัก | กราฟเฟรม |
|---|
 |  |
Changelog และ Notes Release
คลิกเพื่อดู Changelog
คลิกเพื่อดู releasenotes
ใบอนุญาต
เครื่องยนต์ Razix มีการแจกจ่ายภายใต้ใบอนุญาต Apache 2.0 ใบอนุญาต