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.
Build Status
| Pathway | Status | Download |
|---|---|---|
| Dev (nightly) | ||
| Release |
Core Feature Status
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 |
Renderer Feature Status
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) | βοΈ | π§ |
Android
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.
Sponsors
A massive thank you to some of our sponsors:
Third-Party Libraries
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