index.md 8.6 KB

C# Beginner

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 are not a introduction to C# itself. Although having some coding experience is useful, it is not mandatory to get started with these tutorials. You can create the C# beginner tutorial project by starting the Stride launcher. Create a new project and select the template: Tutorials -> C# beginner. Every single scene is loaded as a child scene and demonstrates a sample script.

All tutorials have a Youtube video. You can watch the entire Beginners playlist here: https://www.youtube.com/playlist?list=PLRZx2y7uC8mNySUMfOQf-TLNVnnHkLfPi

Youtube Tutorial Series

There is a YouTube series covering this CSharpBeginner course. It is a great companion and may be found here: https://www.youtube.com/watch?v=Z2kUQhSmdr0&list=PLRZx2y7uC8mNySUMfOQf-TLNVnnHkLfPi

All tutorials

[

Getting the Entity

![Getting the Entity tutorial](media/getting-the-entity_thumb.png "Getting the Entity")
  • Retrieve the entity
  • Retrieve the parent
  • Print debug text
](entity.md)
[

Child entities

![Child entities tutorial](media/child-entities_thumb.png "Child entities")
  • Get a specific child entity
  • Get children in a list
  • Get children of children
](child-entities.md)
[

The transform

![The transform tutorial](media/transform-position_thumb.png "The transform")
  • Accessing the Transform component
  • Get the local position
  • Get the world position
](transform-position.md)
[

Editor properties

![Editor properties tutorial](media/editor-properties_thumb.png "Editor properties")
  • Defining various editor properties
  • Defining lists
  • Hiding public properties
](editor-properties.md)
[

Getting a component

![Get a component tutorial](media/getting-a-component_thumb.png "Get a component")
  • Getting a component
  • Remove a component
  • Access methods of other components
](get-component.md)
[

Adding a component

![Add a component tutorial](media/adding-a-component_thumb.png "Add a component")
  • Adding a component
  • Removing all components of 1 type
  • Create a component if it doesn't exists
](add-component.md)
[

Delta time

![Delta time tutorial](media/deltatime_thumb.png "Delta time")
  • Retrieving delta time
  • Making a simple timer
  • Making a simple countdown timer
](delta-time.md)
[

Cloning an entity

![Cloning an entity tutorial](media/cloning-entities_thumb.png "Cloning an entity")
  • Cloning an entity
  • Adding an entity to the current scene
  • Adding an entity as a child to a parent entity
](cloning-entities.md)
[

Removing an entity

![Removing an entity tutorial](media/removing-entity_thumb.png "Removing an entity")
  • Cloning new entities using a timer
  • Removing entities using a timer
  • Removing an entity from the scene
](removing-entities.md)
[

Keyboard input

![Keyboard input tutorial](media/keyboard-input_thumb.png "Keyboard input tutorial")
  • Holding down a key
  • Clicking a key
  • Releasing a key
](keyboard-input.md)
[

Mouse input

![Mouse input tutorial](media/mouse-input_thumb.png "Mouse input tutorial")
  • Holding down a mouse button
  • Clicking or releasing a mouse button
  • Using the mouse wheel
](mouse-input.md)
[

Virtual buttons

![Virtual buttons tutorial](media/virtual-buttons_thumb.png "Virtual buttons tutorial")
  • Defining a virtual key configuration
  • Binding input to the configuration
  • Using the virtual buttons
](virtual-buttons.md)
[

Linear Interpolation

![Linear Interpolation tutorial](media/lerp_thumb.png "Linear Interpolation tutorial")
  • Calculating 'lerp' value
  • Lerp between vector 3
  • Random values
](linear-interpolation.md)
[

Loading content

![Loading content tutorial](media/loading-content_thumb.png "Loading content tutorial")
  • Loading content from code
  • Unloading content
  • Attach models to entities
](loading-content.md)
[

Instantiating prefabs

![Instantiating prefabs tutorial](media/instantiating-prefabs_thumb.png "Instantiating prefabs tutorial")
  • Instantiate prefab
  • Load prefab from content
  • Parent prefab entity
](instantiating-prefabs.md)