- Stride.Core: Reference counting, dependency property system (PropertyContainer/PropertyKey), low-level serialization, low-level memory operations (Utilities and NativeStream).
- Stride.Core.Mathematics: Mathematics library (despite its name, no dependencies on Stride.Core).
- Stride.Core.IO: Virtual File System.
- Stride.Core.Serialization: High-level serialization and git-like CAS storage system.
- Stride.Core.MicroThreading: Micro-threading library based on C# 5.0 async (a.k.a. stackless programming)
- Stride.Core.AssemblyProcessor: Internal tool used to patch assemblies to add various features, such as Serialization auto-generation, various memory/pinning operations, module initializers, etc...
- Stride.Core.Presentation: WPF UI library (themes, controls such as propertygrid, behaviors, etc...)
- Stride.Core.SampleApp: Simple property grid example.
- Stride.Core.Quantum: Advanced ViewModel library that gives ability to synchronize view-models over network (w/ diff), and at requested time intervals. That way, view models can be defined within engine without any UI dependencies.
- Stride.Core.BuildEngine.Common: Common parts of the build engine. It can be reused to add new build steps, build commands, and also to build a new custom build engine client.
- Stride.Core.BuildEngine: Default implementation of build engine tool (executable)
- Stride.Core.BuildEngine.Monitor: WPF Display live results of build engine (similar to IncrediBuild)
- Stride.Core.BuildEngine.Editor: WPF Build engine rules editor and used by most projects.
- Irony: Parsing library, used by Stride.Core.Shaders. Should later be replaced by ANTLR4.
- Stride.Core.Shaders: Shader parsing, type analysis and conversion library (used by HLSL->GLSL and Stride Shader Language)
- MSBuild target files to create easily cross-platform solutions (Android, iOS, WinRT, WinPhone, etc...), and define behaviors and targets globally. Extensible.
There is two options to integrate this repository in your own repository:
- git subtree documentation and blog post
- git submodule
Simply add the projects you want to use directly in your Visual Studio solution.
If you want to use auto-generated Serialization
code, some of Utilities
functions or ModuleInitializer
, you need to use Stride.Core.AssemblyProcessor.
Steps:
- Include both Stride.Core.AssemblyProcessor and Stride.Core.AssemblyProcessor.Common in your solution.
- Add either a Stride.Core.PostSettings.Local.targets or a YourSolutionName.PostSettings.Local.targets in your solution folder, with this content:
<!-- Build file pre-included automatically by all projects in the solution -->
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<!-- Enable assembly processor -->
<StrideAssemblyProcessorGlobal>true</StrideAssemblyProcessorGlobal>
</PropertyGroup>
</Project>