BSGameLib.Game 1.0.11-preview

This is a prerelease version of BSGameLib.Game.
dotnet add package BSGameLib.Game --version 1.0.11-preview
                    
NuGet\Install-Package BSGameLib.Game -Version 1.0.11-preview
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="BSGameLib.Game" Version="1.0.11-preview" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="BSGameLib.Game" Version="1.0.11-preview" />
                    
Directory.Packages.props
<PackageReference Include="BSGameLib.Game" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add BSGameLib.Game --version 1.0.11-preview
                    
#r "nuget: BSGameLib.Game, 1.0.11-preview"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package BSGameLib.Game@1.0.11-preview
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=BSGameLib.Game&version=1.0.11-preview&prerelease
                    
Install as a Cake Addin
#tool nuget:?package=BSGameLib.Game&version=1.0.11-preview&prerelease
                    
Install as a Cake Tool

BSGameLib.Game

A 2D game engine for .NET: derive from Game, override what you need, and call Run(). SDL3 owns the window and input; rendering goes through Vulkan, or OpenGL, behind a frame graph; services live in a Microsoft.Extensions.DependencyInjection container your game adds to.

  • Vulkan (the default) and OpenGL renderers, with sprite and shape batching, text, materials and custom shaders, full-screen effects, point lights and render targets.
  • Shaders compiled to SPIR-V at build: list your GLSL as BSGameLibShader items and the package's build step compiles them, so a game needs no shader compiler at runtime.
  • Textures, texture atlases, BMFont and TrueType fonts, and content overlays for mods.
  • Keyboard, mouse and gamepad input, with bindings and input contexts.
  • Audio on SDL3_mixer, localization from JSON, and Dear ImGui.
  • Windows, Linux and macOS, with SDL3 and MoltenVK brought in by BSGameLib.Sdl3.Interop.
using BSGameLib.Game;
using BSGameLib.Game.Drawing;
using BSGameLib.Game.Input;
using BSGameLib.Game.Rendering;

using var game = new MyGame();
game.Run();

public class MyGame : Game
{
  public MyGame() : base(new WindowOptions { Title = "My Game", Width = 1280, Height = 720 }) { }

  protected override void Update(IGameTime gameTime)
  {
    if (Keyboard.IsKeyDown(Key.Escape))
      Exit();
    base.Update(gameTime);
  }

  protected override void Draw(IGameTime gameTime)
  {
    using var encoder = Graphics2D.Begin();
    encoder.Clear(Color.CornflowerBlue);
    encoder.SubmitShape(ShapeDrawOptions.RectangleFilled(new Rectangle(20, 20, 220, 80), Color.White));
  }
}

Shaders of your own, compiled at build and embedded:

<ItemGroup>
  <EmbeddedResource Include="Shaders\*" />
  <BSGameLibShader Include="Shaders\*.vert;Shaders\*.frag" />
</ItemGroup>

For menus and other UI, add BSGameLib.UI.

Documentation: https://docs.burningstormstudios.com/

Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (2)

Showing the top 2 NuGet packages that depend on BSGameLib.Game:

Package Downloads
BSGameLib.UI

The UI layer for BSGameLib.Game: views in XML or C#, bound to view-models, with layouts, controls, styles, themes, toasts and tooltips.

BSGameLib.Game.ShaderCompiler

Compiles GLSL to SPIR-V at runtime for BSGameLib.Game's Vulkan renderer, with an on-disk cache, for shaders the build never saw.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.0.11-preview 56 11/9/2026