/Razix

High Performance Research Engine for Production Pipeline

Primary LanguageC++Apache License 2.0Apache-2.0


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: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 11, GXM, GCM, GNM and GNMX). 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.

View the Trello Board and the Architecture notes

Features

  • Support for Windows, Linux, macOS, PSVita and PS3 systems.
  • Support for OpenGL, Vulkan DirectX 11, GXM, GCM.
  • 3D audio using OpenAL.
  • Rendering 3D models with deferred PBR shading.
  • Editor using Dear ImGui.
  • Multi Physics engine support.
  • 3D physics using PhysX, Bullet and Havok.
  • 2D physic using Box2D.
  • Basic lua scripting support for entities.
  • Extremely detailed profiling using Tracy, RenderDoc and Razor integrated deep into the engine systems.
  • Custom Animation and state machine engine and supports Havok Animation system
  • Supports GLSL, HLSL and PSSL shading languages to create custom materials
  • Supports Hull, Domain, Geometry, Compute shaders for all Platforms
  • Asset streaming pipeline and custom asset format
  • Future support for Falcor and Render Graph Editor
  • Data drive pipeline architecture

Tools

Razix also provides a rich set of GUI and Commmand Line Tools along with the Editor for various purposes such as

TODO

- Blender exporter and Importer for model and navmesh formats
- Razix Asset packer
- Blender Integration
- Script debugger

RoadMap

V 1.0.0 - RC

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

Architecture

⚠️ Still a work in progress

For individual module architecture and documentation check the Docs folder or check the individual folders for a detailed description (ex. Core Systems)

For individual module architecture and documentation check the Docs folder or check the individual folders for a detailed description (ex. Core Systems)

Changelog and Release Notes

Click to view changelog

Click to view ReleaseNotes

License

Razix Engine is distributed under Apache 2.0 license. LICENSE