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.
βοΈ Functional/Complete
π§ Work in progres
Blank - Not Started
π« Not-applicable
Feature | Windows | Android | Linux | Mac | iOS |
---|---|---|---|---|---|
Renderer - Vulkan | π§ | ||||
Renderer - DirectX 11 | π§ | π« | π« | π« | |
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.
βοΈ Functional/Complete
π§ Work in progres
Blank - Not Started
π« Not-supported
Feature | DX11 | 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