Please Add Simple Game Project that uses Source Code to main solution.
Nobody has claimed this yet.
- Dominant language
- C#
- Stars
- 7.8k
- Forks
- 1.2k
- Avg merge
- 2d 17h
- Merged PRs (30d)
- 49
Description
When starting out and trying to really get to know Stride3D, I think it really helps to be able to build against actual source code, instead of just Nuget. After spending several hours trying to get this working, I'm stuck. Currently I can find no projects inside of Stride's solution that are a "sample game that uses Stride Source code".
For example, under Avalonia, there is a sample project called "Controls.Catalog" and you can run/test it freely, directly using source code, which not only gives you a better way to do things like "Search for References" to find things, but also allows you to Edit the base Avalonia code (adding log/console statements, or just stubbing code, etc) -- this is very useful.
It's also useful as I've been able to submit a couple Avalonia fixes directly - by seeing a bug triggered by my code, and then fixing it as I saw fit -- then presenting the fixed-code back to the Avalonia team. Without being able to directly use their source code, I wouldn't be able to do this.
In short, I think Stride should have ONE very basic demo Game sample that works like an "Empty Game" project, but compiles direct from Stride Source Code (includes "Projects" instead of Nuget assemblies). This would help me to make progress a lot faster with our Code-Only effort, as I could do some experimenting when I experience things like the "CLR has detected an Invalid Program".
I believe that most serious Game Devs will find it useful to enable them to convert their Game Project over to using Stride source code, vs. Source Link (which has significant deficiencies by comparison).
FYI, here's where I ended up getting stuck on my own attempt to use Source Code:

Here is my .csproj file currently:
<Project Sdk="Microsoft.NET.Sdk">
<!--<Import Project="..\..\..\stride\sources\targets\Stride.props" />-->
<!-- NuGet resolved needed for StrideDefaultAssetsPlugin.LoadDefaultTemplates() -->
<Import Project="..\..\..\stride\sources\shared\Stride.NuGetResolver\Stride.NuGetResolver.projitems" Label="Shared" />
<PropertyGroup>
<TargetFramework>$(StrideEditorTargetFramework)</TargetFramework>
<StrideAssemblyProcessor>true</StrideAssemblyProcessor>
<StrideAssemblyProcessorOptions>--auto-module-initializer</StrideAssemblyProcessorOptions>
<StrideSkipAutoPack>false</StrideSkipAutoPack>
<IsPackable>true</IsPackable>
</PropertyGroup>
<PropertyGroup>
<TargetFrameworks>net6.0</TargetFrameworks>
<Nullable>enable</Nullable>
</PropertyGroup>
<ItemGroup>
<ProjectReference Include="..\..\..\stride\sources\engine\Stride.Engine\Stride.Engine.csproj" />
<ProjectReference Include="..\..\..\stride\sources\engine\Stride.Navigation\Stride.Navigation.csproj" />
<ProjectReference Include="..\..\..\stride\sources\engine\Stride.Particles\Stride.Particles.csproj" />
<ProjectReference Include="..\..\..\stride\sources\engine\Stride.Physics\Stride.Physics.csproj" />
<ProjectReference Include="..\..\..\stride\sources\engine\Stride.UI\Stride.UI.csproj" />
<ProjectReference Include="..\..\..\stride\sources\engine\Stride.Video\Stride.Video.csproj" />
</ItemGroup>
<ItemGroup>
<Compile Include="..\..\..\stride\sources\shared\SharedAssemblyInfo.cs">
<Link>Properties\SharedAssemblyInfo.cs</Link>
</Compile>
</ItemGroup>
</Project>
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the provided .csproj, including its references to sources/targets/Stride.props, sources/shared/Stride.NuGetResolver/Stride.NuGetResolver.projitems, and the listed engine projects. Review how a minimal sample game could be organized around those source references. Done means one basic game sample builds and runs directly against Stride source projects rather than NuGet assemblies.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- csharp
- Domain
- build-system, game-dev
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100