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