Stride Community Toolkit Manual
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.
Welcome to the Stride Community Toolkit Manual. This guide helps you make the most of the toolkit for Stride, an open-source C# game engine. Whether you're new to Stride or an experienced developer, you'll find tips, insights, and instructions to enhance your game development.
Table of Contents
- Getting Started: Set up and start using the toolkit.
- Code-Only Approach: Create and manage Stride projects using only C#.
- Create Project: Step-by-step guide to creating a Stride project using a C# console app.
- C# Basic Examples
- Capsule with rigid body: Demonstrates creating and positioning a 3D capsule in a scene.
- Mesh line: Demonstrates creating a mesh line.
- Material: Demonstrates creating a material and applying it to a 3D entity.
- Give me a cube: A variant of the above, positioning a 3D cube in a scene.
- Stride UI - Capsule with rigid body and Window: Demonstrates creating a 3D capsule, positioning it, and showing a simple window with text.
- Stride UI - Grid - Save and load game state: Demonstrates a simple game where clicking a cube increases the score and manages game state.
- Procedural geometry: Demonstrates creating procedural meshes (triangle, plane, circle) and adding them to a scene.
- Cylinder mesh: Demonstrates creating a cylinder mesh.
- Partial torus mesh: Demonstrates creating a partial torus mesh.
- Particles: Demonstrates creating a particle system.
- Raycast: Demonstrates raycasting and physics interactions.
- Collision Group: Demonstrates a scene with two players and an enemy using collision groups.
- Collision Layer: Demonstrates a similar scene using collision layers.
- C# Advanced Examples
- Simple Constraint: Demonstrates creating a simple constraint between two entities.
- Various Constraints: Demonstrates distance limit, distance servo, ball socket, and point-on-line servo constraints between entities.
- Myra UI - Draggable Window, GetService(): Demonstrates using Myra UI to create a draggable window, display a health bar, and access registered services.
- Stride UI - Draggable Window: Demonstrates using Stride UI to create a draggable window.
- ImGui UI: Demonstrates using ImGui to create a simple UI.
- Image Processing: Demonstrates applying image-processing effects to a texture.
- Root Renderer Shader: Demonstrates creating a custom shader for the root renderer.
- Box2D.NET Physics: Demonstrates integrating Box2D.NET physics into a Stride project.
- Mesh Outline: Demonstrates creating a mesh-outline effect.
- Other Examples
- Debug Shapes: Sets up a basic 3D scene and adds debug visuals.
- Debug Shapes Usage: Shows practical usage patterns for debug shapes in a 3D scene.
- Renderer: Compares two approaches to implementing custom rendering in Stride.
- Stride + SignalR: Integrates SignalR with Stride for real-time communication.
- F# Basic Examples
- Capsule with rigid body: Demonstrates creating and positioning a 3D capsule in a scene.
- Partial torus mesh: Demonstrates creating a partial torus mesh.
- VB Basic Examples
- Extensions
- Extensions
- Animation Extensions
- Camera Extensions: Convenient ways to work with the camera.
- Entity Extensions: Enhancements and utilities for entities.
- Game Extensions: From performance monitoring to material creation and entity manipulation.
- Model Extensions
- Script Extensions: Additional features and tools for development.
- Script System Extensions: Utilities for async methods.
- Rendering
- MeshBuilder: Create meshes dynamically at runtime.
- TextureCanvas: Create textures dynamically at runtime.
- Troubleshooting: Solutions and tips for common issues.
Explore these sections to discover the full potential of the Stride Community Toolkit and enhance your game development skills.