[go: up one dir, main page]

Skip to content

stride3d/stride

Repository files navigation

The stride logo, a geometrical 'S' in the form of a cube

Join the chat at https://discord.gg/f6aerfE All Contributors Financial sponsors License

Welcome to the Stride source code repository!

Stride is an open-source C# game engine for realistic rendering and VR. The engine is highly modular and aims at giving game makers more flexibility in their development. Stride comes with an editor that allows you to create and manage the content of your games or applications visually and intuitively.

Stride Editor

To learn more about Stride, visit stride3d.net.

Earn money by contributing

If you are a developer with solid experience in C#, rendering techniques, or game development, we want to hire you! We have allocated funds from supporters on OpenCollective and can pay for work on certain projects. More info about this here.

License and governance

.NET Foundation

This project is supported by the .NET Foundation.

License

Stride is covered by the MIT License unless stated otherwise (i.e. for some files that are copied from other projects). You can find the list of third-party projects here. Contributors need to sign the following Contribution License Agreement.

Code of conduct

Stride being a .NET Foundation project, it has adopted the code of conduct defined by the Contributor Covenant to clarify expected behavior in our community. For more information see the .NET Foundation Code of Conduct.

Documentation

Find explanations and information about Stride:

Community

Ask for help or report issues:

Building from source

Prerequisites

  1. Latest Git with Large File Support selected in the setup on the components dialog and for convenience a git UI client like GitExtensions.
  2. .NET 8.0 SDK
    • Run dotnet --info in a console or powershell window to see which versions you have installed
  3. Visual Studio 2022 with the following workloads:
    • .NET desktop development with .NET Framework 4.7.2 targeting pack (should be enabled by default)
    • Desktop development with C++ with
      • Windows 10 SDK (10.0.18362.0) or later version (should be enabled by default)
      • MSVC v143 - VS2022 C++ x64/x86 build tools (Latest) (should be enabled by default)
      • C++/CLI support for v143 build tools (Latest) (not enabled by default)
    • Optional (to target iOS/Android): .NET Multi-paltform App UI development and Android SDK setup individual component (enabled by default), then in Visual Studio go to Tools > Android > Android SDK Manager and install NDK (version 20.1+) from Tools tab.
    • Optional (to build VSIX package): Visual Studio extension development

Build Stride

  1. Clone the repo with a git UI or open a command prompt, point it to a directory and clone Stride to it: git lfs clone https://github.com/stride3d/stride.git
    • Do NOT use GitHub -> Code -> Download ZIP, this won't include the lfs files.
  2. Open <StrideDir>\build\Stride.sln with Visual Studio 2022 and build Stride.GameStudio in the 60-Editor solution folder (it should be the default startup project) or run it from VS's toolbar.
    • Optionally, open and build Stride.Android.sln, Stride.iOS.sln, etc.

Build Stride without Visual Studio

  1. Install Visual Studio Build Tools with the same prerequisites listed above
  2. Add MSBuild's directory to your system's PATH (ex: C:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\MSBuild\Current\Bin)
  3. Clone the repo with a git UI or open a command prompt, point it to a directory and clone Stride to it: git lfs clone https://github.com/stride3d/stride.git
  4. Navigate to /Build with the command prompt, input msbuild /t:Restore Stride.sln then compile.bat

If building failed:

  • Some errors for test projects are normal, GameStudio will start anyway.
  • The Visual Studio extension might fail to build if you are missing the Visual Studio SDK, but GameStudio will start anyway.
  • If you skipped one of the Prerequisites thinking that you already have the latest version, update to the latest anyway just to be sure.
  • Visual Studio might have issues properly building if an anterior version is present alongside 2022. If you want to keep those version make sure that they are up to date and that you are building Stride through VS 2022.
  • Your system's PATH should not contain older versions of MSBuild (ex: ...\Microsoft Visual Studio\2019\BuildTools\MSBuild\Current\Bin should be removed)
  • Some changes might require a system reboot, try that if you haven't yet.
  • Make sure that Git, Git LFS and Visual Studio can access the internet.
  • Close VS, clear the nuget cache (in your cmd dotnet nuget locals all --clear), delete the hidden .vs folder inside \build and the files inside bin\packages, kill any msbuild and other vs processes, build the whole solution then build and run GameStudio.

Do note that test solutions might fail but it should not prevent you from building Stride.GameStudio.

Contribution Guidelines

Please check our Contributing Guidelines.

Build Status

Branch master
Windows D3D11
Windows D3D12
Windows Vulkan
Windows OpenGL
Windows OpenGL ES
iOS
Android
Linux Vulkan
Linux OpenGL
Tests Windows Simple
Tests Windows D3D11

Contributors ✨

Thanks goes to these wonderful people (emoji key):

xen2
xen2

💻
Eideren
Eideren

💻
Jorn Theunissen
Jorn Theunissen

📖
Tebjan Halm
Tebjan Halm

💻
Elias Holzer
Elias Holzer

💻
Johan Gustafsson
Johan Gustafsson

💻
Youness KAFIA
Youness KAFIA

💻
Marian Dziubiak
Marian Dziubiak

💻
AmbulantRex
AmbulantRex

💻
Basewq
Basewq

💻
Jarmo
Jarmo

💻
Antonio Junaković
Antonio Junaković

💻
Nicolas Musset
Nicolas Musset

💻
Novaleaf
Novaleaf

💻
salahchafai
salahchafai

🎨
Mehar
Mehar

💻
Vaclav Elias
Vaclav Elias

💻
EternalTamago
EternalTamago

💻
WhyPenguins
WhyPenguins

💻
Aunnop Kattiyanet
Aunnop Kattiyanet

💻
Anon
Anon

🎨
D3ZAX
D3ZAX

💻
Phr00t
Phr00t

💻
sebl
sebl

💻
Artromskiy
Artromskiy

💻
Jean-François Pustay
Jean-François Pustay

💻
Daniel Miller
Daniel Miller

💻
joreg
joreg

💻
James Rinker
James Rinker

💻
Tristan McPherson
Tristan McPherson

💻
Eric
Eric

💻
Sebastian Gregor
Sebastian Gregor

💻
insomnyawolf
insomnyawolf

💻
Doprez
Doprez

💻
Jakub Ławreszuk
Jakub Ławreszuk

💻
Mario Guerra
Mario Guerra

💻
tamamutu
tamamutu

💻
IXLLEGACYIXL
IXLLEGACYIXL

💻
arturo
arturo

💻
Chia-Hsiang Cheng
Chia-Hsiang Cheng

💻
Nicolae Tugui
Nicolae Tugui

💻
Mattias Cibien
Mattias Cibien

💻
Oleg Ageev
Oleg Ageev

💻
SeleDreams
SeleDreams

💻
Alexandre Castro
Alexandre Castro

💻
SVNMLR
SVNMLR

🎨
Jeromy Walsh
Jeromy Walsh

💻
Parham Gholami
Parham Gholami

🎨
adrsch
adrsch

💻
Alexander Schill
Alexander Schill

💻
froce
froce

💻
Anthony Marmont
Anthony Marmont

💻
MaximilianEmel
MaximilianEmel

💻
Schossi
Schossi

💻
Dagan Hartmann
Dagan Hartmann

💻

This project follows the all-contributors specification. Contributions of any kind welcome!