Molten started as spare-time engine project, which I eventually intend to use to develop my own games without relying on other engines. Hopefully you'll find a use for it too!
While parts of this project will inevitably be a classic case of re-inventing the wheel, I'm treating it as a chance to gain more experience in the area of game engine development.
| Pathway | Status | Download |
|---|---|---|
| Dev (nightly) | ||
| Release |
See the following table for the per-platform support and status of each feature.
| Key | Description |
|---|---|
| ✔️ | Functional/Complete |
| 🚧 | Work in progres |
| Not Started | |
| 🚫 | Not-supported |
| Feature | Windows | Android | Linux | Mac | iOS |
|---|---|---|---|---|---|
| Renderer - Vulkan | 🚧 | ||||
| Renderer - DirectX 12 | 🚧 | 🚫 | 🚫 | 🚫 | |
| Networking - MNet | |||||
| Audio Engine | 🚧 | ||||
| Keyboard support | ✔️ | ||||
| Mouse support | ✔️ | ||||
| Touch support | 🚧 | 🚧 | |||
| Game pad support | ✔️ | ||||
| Entity component system | ✔️ | ✔️ | ✔️ | ✔️ | |
| Content Management System | ✔️ | ||||
| Example projects | 🚧 | ||||
| 2D Physics engine | |||||
| 3D Physics engine | |||||
| Tooling - Scene editor | |||||
| Tooling - Shader editor | |||||
| Tooling - Sprite editor | |||||
| Project templates |
See the following table for the per-renderer support and status of each feature.
| Feature | DX12 | Vulkan |
|---|---|---|
| Multi-GPU Support | 🚧 | 🚧 |
| Deferrend rendering | ||
| Physically-Based (PBR) | ||
| Geometry Shaders | ||
| Tessellation | ||
| Hull & Domain Shaders | ||
| Compute Shaders | ||
| Mesh Shaders | ||
| 2D Spite batching | ||
| 2D Primitive batching | ||
| Compressed textures | ||
| Hardware instancing | ||
| Occlusion culling | ||
| Frustrum culling | ||
| Portal culling | ||
| Level of Detail (LoD) | ||
| HDR support | ||
| 2D Texture arrays | ||
| 3D Texture arrays | ||
| 3D/volume textures | ||
| static skyboxes | ||
| real-time skyboxes | ||
| multi-window support | ||
| Render into WinForms | ||
| Render into WPF | ||
| Render into UWP | 🚫 | |
| Render into MAUI | ||
| Render into Android UI | 🚫 | |
| Raytracing | ||
| Shader Compiler (HLSL/SPIR-V) | ✔️ | 🚧 |
To build for Android you will need to install the Android workloads by running
dotnet workload install android in command prompt or powershell.
If you're upgrading from a previous .NET version, you may also need to run this command again to update the android workload.
A massive thank you to some of our sponsors:
A special thanks to each of these great libraries, without which Molten wouldn't exist in it's current form:
- Silk.NET - C# Bindings for DirectX 11/12, OpenGL, Vulkan, Assimp, OpenCL, OpenAL and OpenXR
- SharpDX - Source for some Molten.Math types
- Magick.NET - Extensive image library for .NET
- JSON.NET - JSON serialization