Foster is a small cross-platform 2D-focused game framework in C#.
★ very work in progress! likely to have frequent, breaking changes! please use at your own risk! ★
To use the framework either
- add a refence to the NuGet package,
- or clone this repository and add a reference to
Foster/Framework/Foster.Framework.csproj.
There is a Samples repo which contains various demos and examples that can help you get started.
Check out Discussons or Discord to get involved.
- dotnet 10.0 and C# 14
- SDL3, which has prebuilt binaries for various platforms through Github Actions.
- Rendering is implemented using SDL_GPU.
- Shaders must follow the SDL_GPU shader resource requirements.
- You can specify which Graphics Device to use when you run your Application.
- You must provide shaders for the resulting Renderer (ex. SPIR-V for Vulkan, etc). There are built-in shaders for 2D rendering so this only matters if you write custom shaders.
- 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.
- Contributions are welcome! However, anything that adds external dependencies or complicates the build process will not be accepted.
