GAME ENGINE
Built by Dinobytes Studio, Crux is a Linux-native, free and open-source game engine written in C that provides a suite of low-level APIs for developing lightweight, high-performance games in 3D environments.
Demo videos coming soon! For now, enjoy this music by DUSQK.
ROADMAP
We still have several milestones to hit before we can provide you with a "complete" 1.0 release. Read more below about the features you'll find in Crux 1.0!
- Rendering: Use OpenGL to render Entities with models and shaders. [Completed]
- Physics: Create a simple physics engine with boxes, spheres, planes, gravity, and elastic collisions. [Completed]
- Game State: Create a centralized game state observer system. [Completed]
- Audio: Create a user-friendly API built on top of OpenAL for music and spatial sound effects. [Completed]
- UI: Display in-game popups, HUD elements, menus, and more with Clay's blazingly fast immediate-mode UI.
- Multiplayer: Support for multiplayer networking.
- Cross-Platform Support: Add support for Windows machines.
- Documentation: Write robust documentation, ensure compliance with third-party licenses, and create a tutorial for building a simple game.
- Licensing: Ensure compliance with third-party licenses
- Tutorials: Create a tutorial for building a simple game.
- Testing: Write a robust test suite.
- Miscellaneous: Many other features, bug fixes, and refactors are likely to arise, as this is our first time building an engine.
BEYOND 1.0
We have a few ideas for continuing development after the 1.0 release:
- Rendering: Features such as anti-aliasing and physically-based rendering, optimizations such as instancing, and bug fixes such as sorting transparent objects by depth for accurate blending of multiple transparent objects.
- Physics: Enhance our physics engine with more sophisticated features, such as more bounding volumes, force generators, a constraint solver, and a stack for resolving collisions in realistic order.
- Level Editor!