Razix Engine
Razix is a High Performance Research Engine for production pipeline with emphasis on experimenting with different rendering techniques. Razix supports Windows, Mac, Linux, PSVita and PS3 systems.
:warning: WARNING:Currently Razix is WIP and the renderer is undergoing major design overhaul hence nothing will make sense, check the RoadMap below for release information |
About
Cross-Platform 2D and 3D engine with multi render API support (OpenGL, Vulkan, DirectX 12, GXM & GCM). Supports a wide range of Renders with extreme emphasis on scene optimization and implementing state-of-the art rendering techniques. The engine architecture supports a very educational and optimized design.
(PSVita and PS3 will be supported sometime far in future).
View the Trello Board and the Architecture notes on Draw.io
Features
Node based Frame Graph Editor |
![](./Branding/DemoImages/ReleaseNotes/Frame_Graph_Editor_design_demo_5.png) |
- 3D audio using OpenAL
- Complete Deferred pipeline + Bindless resources + nanite-like renderers(Future support for customizable render graph editor for complete control).
- Level Editor & tools built using QT
- Multi Physics engine support.
- 3D physics using Jolt.
- Basic lua scripting support for entities.
- Extremely detailed profiling using Tracy and RenderDoc integrated
- Supports GLSL, HLSL shading languages to create custom materials + Custom Razix Shaders files for easy compilation
- Resource Pool base management and custom asset format
Resource Viewer |
![](./Branding/DemoImages/ReleaseNotes/ResourceViewerPreview_2_Full.png) |
- Data drive pipeline architecture - WIP
- Custom Razix STL and Razix Memory
-
WorldRenderer Passes
- Lighting and shadows
- Directional lights with CSM (Cascaded Shadow Mapping)
- Point lights
- Spot lights
- Deferred PBR
- IBL
- Skybox (HDR & Procedural)
- SSAO
- Debug Drawing
- ImGUi
- Tonemapping
- FXAA
- TAA (WIP)
Tools
Razix also provides a rich set of GUI and Commmand Line Tools along with the Editor for various purposes such as
-
Razix Asset Packer - CLI Tool + API for Editor - Export 3D Models into custom razix format Meshes and Materials
-
Razix Code Editor - Shaders and Scripts code editor for Razix Engine (Sony ATF)
TODO
- Blender exporter and Importer for model and navmesh formats
- Blender Integration
- Script debugger for Lua
RoadMap
V 1.0.0 - RC
![](./Docs/Architecture/RazixEngine-RoadMap-V1.0.0RC.png)
Contributing
More information will be update on creating PRs and other ways to contribute to Razix Engine.
Style Guide
Check the style guide for Razix Style enforcements
Screenshots/Demos
Architecture
:warning: Still a work in progress
![](./Docs/Architecture/RazixEngine-Architecture-V.1.0.0.RC.png)
ex. Lua Scriping API cheatsheet ![Lua Scriping API cheatsheet](./Docs/RazixLuaScriptingAPICheatSheet.png)
Check the Docs folder or Architecture notes on Draw.io for a detailed architecture description
Core Systems |
Frame Graph |
![](./Docs/Architecture/RazixEngine-CoreSystems.png) |
![](./Docs/Architecture/Razix%20Engine-FrameGraph.png) |
Changelog and Release Notes
Click to view changelog
Click to view ReleaseNotes
License
Razix Engine is distributed under Apache 2.0 license. LICENSE