stride/sources
Basewq 66fa00c921
[Build] Update Silk.NET from 2.20.0 to 2.22.0 (#2521)
Co-authored-by: Basewq <Basewq@users.noreply.github.com>
2024-11-16 12:28:44 +01:00
..
assets fix: Xml comments fix 5 (#2419) 2024-09-01 21:04:44 +02:00
buildengine fix: use tryadd instead of containskey guard clause (#2299) 2024-05-30 17:14:32 +02:00
core feat: TransformComponent.SetWorld, strict equality and fix misc. typos (#2503) 2024-11-10 20:52:49 +01:00
data fix: Remove unused data (#2389) 2024-08-11 14:53:40 +02:00
editor Fixed getting actual bounds and refresh rate of the output (monitor/display) from GraphicsOutput.CurrentDisplayMode when using Direct3D (#2494) 2024-11-10 20:52:59 +01:00
engine Fixed getting actual bounds and refresh rate of the output (monitor/display) from GraphicsOutput.CurrentDisplayMode when using Direct3D (#2494) 2024-11-10 20:52:59 +01:00
launcher [Build] Switch to new .NET Foundation code signing tool 2024-09-18 17:21:55 +09:00
localization
metrics [Build] Use central package management - missed a couple of projects 2023-11-20 16:18:14 +01:00
native fix: Continuation of PR #2112 (Enable to build native libs on Linux) 2024-04-23 19:41:38 +02:00
prerequisites [Build] Switch to new .NET Foundation code signing tool 2024-09-18 17:21:55 +09:00
presentation fix: Replace ToWindowsPath with ToOSPath (#2371) 2024-07-06 21:19:37 +02:00
shaders fix: use tryadd instead of containskey guard clause (#2299) 2024-05-30 17:14:32 +02:00
shared [NuGet] Fix setting platform version on the target framework moniker (TFM) when passed to NuGet resolver to properly load NuGet libraries (#2432) 2024-09-07 00:33:15 +02:00
targets [AssemblyProcessor] - Remove unused options and deadcode (#1979) 2024-09-29 09:55:13 +02:00
tests feat: Modernize PVRTexLib dependency (#2342) 2024-07-06 13:42:42 +02:00
tools feat: Make Stride.StorageTool as Gui Tool (#2479) 2024-10-08 17:44:05 +02:00
Directory.Packages.props [Build] Update Silk.NET from 2.20.0 to 2.22.0 (#2521) 2024-11-16 12:28:44 +01:00
README.md fix: Update README.md (#2188) 2024-04-21 20:43:00 +02:00
Settings.StyleCop

README.md

Stride Sources

Folders and projects layout

core

  • 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...

presentation

  • 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.

buildengine

  • 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)

shader

  • 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)
  • Irony.GrammarExplorer: As the name suggests, language syntax tester, you can check how Stride Shading Language (SDSL) works or test the newly introduced features

targets

  • MSBuild target files to create easily cross-platform solutions (Android, iOS, WinRT, etc...), and define behaviors and targets globally. Extensible.

Use in your project

Source repository

There is two options to integrate this repository in your own repository:

Basic use

Simply add the projects you want to use directly in your Visual Studio solution.

Optional: Activate assembly processor

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>