3D Game Engine - .NET 8.0 - C# 12 - WinAppSDK Editor
MIT License
Get it on the Microsoft Store Documentation Discord
The 3D Engine is currently in an early stage of development and is not yet equipped with the essential features required for a production-ready game engine. However, a clear and forward-looking development roadmap has been established, with active work being done to implement advanced systems such as virtualized geometry and Radiance Cascades for fully dynamic global illumination. As development progresses, I plan to foster a community starting next year, with the aim of building a C# game engine that integrates seamlessly with Unity workflows. With your support, we can create a powerful and user-friendly engine, complete with an editor, that meets the demands of modern game development.
3DEngine NuGet Package: Install the package via NuGet Package Manager for integration into your project.
dotnet new console -n Project
cd Project
dotnet add package 3DEngine
dotnet add package Costura.Fody
./Project.csproj
Example usage:
class Program
{
[STAThread]
private static void Main() =>
new Engine.Program().Run(true, null, Frame);
private static bool initialized = false;
public static void Frame()
{
if (!initialized)
{
initialized = true;
}
}
}
Setup in your project:
```xml
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>WinExe</OutputType>
<TargetFramework>net8.0-windows10.0.22621.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<SatelliteResourceLanguages>en</SatelliteResourceLanguages>
<PlatformTarget>x64</PlatformTarget>
<PublishAot>true</PublishAot>
</PropertyGroup>
<ItemGroup>
<None Remove="FodyWeavers.xml" />
</ItemGroup>
<ItemGroup>
<PackageReference Include="3DEngine" Version="3.0.39" />
<PackageReference Include="Costura.Fody" Version="5.7.0">
<PrivateAssets>all</PrivateAssets>
</PackageReference>
</ItemGroup>
<ItemGroup>
<Content Update="$(NuGetPackageRoot)\3dengine\3.0.39\contentFiles\any\net8.0-windows10.0.22621\Assets\Resources\**\*">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
</ItemGroup>
</Project>
Ensure "PreserveNewest" is set for files in the Assets folder in Visual Studio. Replace the Path to the NuGet Package 3DEngine\3.0.39
The 3D Engine repository includes:
You can build the 3DEngine (Package) for both the Editor and Engine as a MSIX Application or the Engine as a portable Win32 Application.
To compile the 3D Engine, ensure you have Visual Studio 2022 with the following components: