Table of Contents

Stride Community Toolkit

Join the chat at https://discord.gg/f6aerfE License

Warning

The toolkit is currently in development. Documentation is incomplete and may contain errors. We published it early for your convenience, ahead of the toolkit's completion.

👋 Introduction

The Stride Community Toolkit is a set of C# helpers and extensions designed to enhance your experience with the Stride Game Engine. It simplifies and streamlines routine development tasks 🛠️, making it easier to build applications for Stride using .NET 10. The library is written in C# but works from any .NET language - the examples include F# and Visual Basic.

Tip

Experienced developers can go straight to the source: these helpers are thin wrappers over Stride APIs, meant to accelerate iteration, not to hide the engine.

📦 Libraries

Each library focuses on a specific concern (core helpers, physics integration, UI/debug aids, etc.):

  • Stride.CommunityToolkit
    • The core library: extensions for regular Stride projects and the code-only approach. It brings in the Stride packages a code-only project needs, including the asset compiler build step.
  • Stride.CommunityToolkit.Bepu
    • Bepu Physics helpers, the recommended physics package: scene setup with physics, primitives with colliders, the grabber, raycasts from the camera, 2D bodies and the debug view.
  • Stride.CommunityToolkit.Bullet
    • Bullet Physics helpers, for projects on Stride's Bullet-based physics. Kept building; no new features are planned, since the focus is Bepu.
  • Stride.CommunityToolkit.Box2D
    • Box2D.NET as an experimental 2D physics alternative: a Box2D world bound to Stride entities, with contact, hit and sensor events. Not on NuGet yet; it runs from a clone of the repository.
  • Stride.CommunityToolkit.Skyboxes
    • A skybox for code-only projects in one call, from a bundled HDR texture.
  • Stride.CommunityToolkit.DebugShapes
    • Immediate-mode debug shapes: lines, arrows, cubes, spheres, capsules, cylinders, cones, circles, quads and bounds, drawn from any script for one frame or a set time.
  • Stride.CommunityToolkit.Shapes
    • Vector shapes whose outline stays a constant few pixels wide at any zoom or distance, measured per fragment by a signed distance function: discs, rings, rounded rectangles, wire boxes, camera-facing billboards and thick 3D lines, thousands per frame in one instanced draw call. Also the reference grid.
  • Stride.CommunityToolkit.Charts
    • Charts drawn every frame through a shape batch, with no assets to author: function plots, parametric curves, scatter and area series, with axes, grid, legend and cursor in pixel widths. Not on NuGet yet; it runs from a clone of the repository.
  • Stride.CommunityToolkit.Effects
    • The pieces that ship a shader of their own: night-vision and thermal post-processing, and GPU picking.
  • Stride.CommunityToolkit.ImGui
    • Dear ImGui through Hexa.NET.ImGui: a system that draws ImGui over the scene with Stride's input, plus ready-made debug windows. For debugging tools, editor windows and in-game UI.
  • Stride.CommunityToolkit.ImGuiNet
    • The same through ImGui.NET, for projects that already depend on it. Not on NuGet yet; it runs from a clone of the repository.
  • Stride.CommunityToolkit.Linux
    • The Linux package for code-only projects: the asset compiler as a build-only dependency and the native libraries it needs, copied into the build output for linux-x64.
  • Stride.CommunityToolkit.Windows
    • Superseded: the core package brings in the asset compiler and holds WindowsDpiManager. This package is empty and only depends on the core, so a project still naming it keeps building. Reference Stride.CommunityToolkit instead.

🚀 Fast Iteration (Preview Status)

This toolkit favours momentum and rapid 🏃 feature delivery. Expect:

  • Breaking changes between releases (namespaces / APIs may shift).
  • Early access to experimental helpers.
  • Occasional rough edges in less-travelled code paths.

Stability will improve as patterns settle. Pin a version if you need consistency.

🔧 Installation

The toolkit, available as 📦 NuGet packages, can be integrated into new or existing Stride projects. Each toolkit version targets one Stride release - the Getting Started page has the compatibility table and the installation steps.

🛠️ Toolkit Repository

The Stride Community Toolkit is an open-source, MIT-licensed project hosted on GitHub and supported by the community. Access the source code or contribute 🤝 to the toolkit on its GitHub Repository.

Found a gap? Open an issue or PR. Even small doc clarifications help. See the Contributing section for guidelines.

🎮 Stride Game Engine Repository

Access the source code or contribute 🤝 to the Stride Game Engine on its GitHub Repository. Explore a comprehensive guide on the Stride Docs website.

📃 Documentation & Resources

  • Manual: Detailed guidance and best practices
  • Tutorials: Step-by-step tutorials to help you learn various features
  • Release Notes: Stay updated with the latest changes and improvements
  • API Reference: In-depth API documentation for a deep dive into the toolkit's capabilities
  • Contributing: Guidelines for contributing to the toolkit

👥 Contributors

Thanks to everyone pushing this forward: