Foster
Foster is cross-platform game framework made in C#.
★ very work in progress! likely to have frequent, breaking changes! please use at your own risk! ★
what's here
- Framework: The main Foster library used for creating a Window, handling Input, and Drawing.
- Platform: A small C library used to handle native platform implementations, which in turn uses SDL2.
dependencies
- dotnet 7.0 and C# 11
- SDL2 is the only external dependency, which is required by the Platform library. By default this is statically compiled.
platform library
- The Platform library is a simple C library that implements native methods required to run the application.
- By default it is currently built for 64-bit Linux, MacOS, and Windows
- To add support for more platforms, you need to build the Platform library and then include it in Foster.Framework.csproj
rendering
- implemented in OpenGL for Linux/Mac/Windows and D3D11 for Windows.
- separate shaders are required depending on which rendering API you're targetting.
- planning to replace the rendering implementation with SDL3 GPU when it is complete.
notes
- Taken a lot of inspiration from other Frameworks and APIs, namely FNA.
- This is the second iteration of this library. The first can be found here.