🌱 C# Beginner
15 lessons 2.5 hours
These tutorials cover the beginner principles of using C# when working with the Stride game engine. Start here if you are new to Stride.
Note: These tutorials do not serve as an introduction to C# itself. While having some coding experience is helpful, it is not mandatory to get started with these tutorials.
To create the C# beginner tutorial project:
- Start the Stride launcher
- Create a new project
- Select the template: Tutorials -> C# beginner
Each scene is loaded as a child scene and demonstrates a sample script.
Stride C# beginner YouTube tutorial series
All tutorials are accompanied by a YouTube video. You can watch the entire C# Beginners playlist here.
All tutorials

Introduction
Learn about the C# beginners project template, how entities and components work, different types of scripts, and more.
📺 Watch the Introduction tutorial

Getting the Entity
Learn how to retrieve the entity, retrieve the parent entity, print debug text, and more.
📺 Watch the Getting the Entity tutorial

Child entities
Learn how to get a specific child entity, retrieve children in a list, and access children of children.
📺 Watch the Child entities tutorial

The transform
Learn how to access the Transform component, get the local position, and get the world position.
📺 Watch the transform tutorial

Editor properties
Discover how to define various editor properties, create lists, and hide public properties.
📺 Watch the Editor properties tutorial

Getting a component
Understand how to get a component, remove a component, and access methods of other components.
📺 Watch the Getting a component tutorial

Adding a component
Explore adding a component, removing all components of one type, and creating a component if it doesn't exist.
📺 Watch the Adding a component tutorial

Delta time
Learn how to retrieve delta time, create a simple timer, and make a simple countdown timer.
📺 Watch the Delta time tutorial

Cloning an entity
Learn how to clone an entity, add an entity to the current scene, and add an entity as a child to a parent entity.
📺 Watch the Cloning an entity tutorial

Removing an entity
Explore cloning new entities using a timer, removing entities using a timer, and removing an entity from the scene.
📺 Watch the Removing an entity tutorial

Mouse input
Understand how to manage holding down a mouse button, clicking or releasing a mouse button, and using the mouse wheel.
📺 Watch the Mouse input tutorial

Keyboard input
Discover how to handle holding down a key, clicking a key, and releasing a key.
📺 Watch the Keyboard input tutorial

Virtual buttons
Learn how to define a virtual key configuration, bind input to the configuration, and use the virtual buttons.
📺 Watch the Virtual buttons tutorial

Linear Interpolation
Explore calculating 'lerp' values, lerping between `Vector3` values, and using random values.
📺 Watch the Linear Interpolation tutorial

Loading content
Discover how to load content from code, unload content, and attach models to entities.
📺 Watch the Loading content tutorial

Instantiating prefabs
Learn how to instantiate a prefab, load a prefab from content, and parent a prefab entity.
📺 Watch the Instantiating prefabs tutorial