ProwlEngine / ProwlEngine/Prowl

NativeAOT support

Open
#181 7 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement help wanted
Dominant language
C#
Stars
1.2k
Forks
120
Avg merge
11h 28m
Merged PRs (30d)
11

Description

Is your feature request related to a problem? Please describe.
The current runtime build size is quite big and requires the .NET runtime. NativeAOT builds don't require the runtime and trim down the final binary size quite a lot.

Describe the solution you'd like
Add support for NativeAOT release builds, at least for built games. The editor requiring the .NET SDK is fine.

Additional context
I've tested building it with NativeAOT myself, as Silk.NET already supports it. While it works after registering the GLFW window and input platforms manually, the render pipeline can't initialize for some reason. Probably because something important related to it was trimmed out. Would be nice to get easy NativeAOT support out of the box.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing a NativeAOT release build for a game, including the manual GLFW window and input platform registration described in the issue. Investigate why the render pipeline fails to initialize after trimming; done means built games run without the .NET runtime and the render pipeline initializes out of the box.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp
Domain
build-system, computer-graphics, game-dev
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.