This repository houses a few basic projects to test capabilities of the Stride Game Engine (formerly called Xenko).
The projects are currently built with Stride version 4.1.0.1734, and have only been created with the Windows projects (apologies to any non-Windows developers!). Note that some projects were originally created with Xenko, then upgraded to Stride through its launcher, however some things do not get upgraded (eg. Xenko assets & icons), so some things may differ if you have created a new project from the Stride templates.
These projects are aimed more towards intermediate to advanced programmers, and may require further investigation into the Stride source code, or search online, for more information on how some of the applied code works, as some of the some techniques may not be officially what the Stride developers intended for us to use.
This repository contains the following projects:
- CustomAssetExample: Example on creating and consuming a custom asset.
- CutsceneTimelineExample: Playing and previewing a simple cutscene in Stride and Game Studio.
- DialogueTextControlExample: Custom Stride UI control for an RPG-styled dialogue text box.
- EntityProcessorExample: Processor-centric code rather than "Script"/Component-centric code.
- GameScreenManagerExample: Game screen navigation via a
GameScreenManager
entity. - LevelEditorExtensionExample: Custom component & processor running in the editor to extend the Game Studio's functionality.
- MultiplayerExample: Multiplayer project with a client application and a server application, both running with Stride code.
- ObjectInfoRenderTargetExample: Render entity information onto a
Texture
and then read this in a subsequent shader. - SceneEditorExtensionExample: Advanced editor extension to paint foliage in the editor scene and save/load this as a custom asset at run-time.
- ScreenSpaceDecalExample: Use a cube projector and renders a given
Texture
onto any surfaces within the projector. - ScreenSpaceDecalRootRendererExample: Similar to
ScreenSpaceDecalExample
, but uses aRootRenderFeature
instead of making a processor fake aRenderMesh
. - UINavigationExample: Example on extending existing UI controls to add the ability to traverse between UI via keyboard/gamepad.
Random selection of screenshots for some of the proof of concepts in this repository:
Dialogue Text Control Example: