Build Status
March 12, 2024 ยท View on GitHub
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