2020-04-19 14:18:45 +03:00
![Stride ](sources/data/images/Logo/stride-logo-readme.png )
2018-06-19 12:06:54 +03:00
=======
2020-04-14 17:37:41 +03:00
Welcome to the Stride source code repository!
2018-06-19 12:06:54 +03:00
2020-04-14 17:37:41 +03:00
Stride is an open-source C# game engine for realistic rendering and VR.
2018-06-19 12:06:54 +03:00
The engine is highly modular and aims at giving game makers more flexibility in their development.
2020-04-27 01:09:21 +03:00
Stride comes with an editor that allows you to create and manage the content of your games or applications visually and intuitively.
2018-06-19 12:06:54 +03:00
2020-04-14 17:37:41 +03:00
![Stride Editor ](https://stride3d.net/images/external/script-editor.png )
2018-06-19 12:06:54 +03:00
2020-04-14 17:37:41 +03:00
To learn more about Stride, visit [stride3d.net ](https://stride3d.net/ ).
2018-06-19 12:06:54 +03:00
## License
2020-04-27 01:09:21 +03:00
Stride is covered by the [MIT License ](LICENSE.md ) unless stated otherwise (i.e. for some files that are copied from other projects).
2018-06-19 12:06:54 +03:00
2018-08-02 15:26:29 +03:00
You can find the list of third party projects [here ](THIRD%20PARTY.md ).
2018-06-19 12:06:54 +03:00
2018-08-30 07:57:39 +03:00
Contributors need to sign the following [Contribution License Agreement ](docs/ContributorLicenseAgreement.md ).
2018-06-19 12:06:54 +03:00
## Documentation
2020-04-14 17:37:41 +03:00
Find explanations and information about Stride:
* [Stride Manual ](https://doc.stride3d.net/latest/manual/index.html )
* [API Reference ](https://doc.stride3d.net/latest/api/index.html )
* [Release Notes ](https://doc.stride3d.net/latest/ReleaseNotes/index.html )
2018-06-19 12:06:54 +03:00
## Community
Ask for help or report issues:
2019-01-06 18:16:35 +03:00
* [Chat with the community on Discord ](https://discord.gg/f6aerfE ) [![Join the chat at https://discord.gg/f6aerfE ](https://img.shields.io/discord/500285081265635328.svg?style=flat&logo=discord&label=discord )](https://discord.gg/f6aerfE)
2020-04-14 17:37:41 +03:00
* [Discuss topics on our forums ](http://forums.stride3d.net/ )
* [Report engine issues ](https://github.com/stride3d/stride/issues )
2020-04-19 14:48:14 +03:00
* [Donate to support the project ](https://www.patreon.com/stride3d )
2020-04-14 17:37:41 +03:00
* [List of Projects made by users ](https://github.com/stride3d/stride-community-projects )
2019-09-23 14:51:27 +03:00
* [Localization ](docs/localization.md )
2018-06-19 12:06:54 +03:00
## Building from source
### Prerequisites
2020-04-27 01:09:21 +03:00
1. **Latest** [Git ](https://git-scm.com/downloads ) **with Large File Support** selected in the setup on the components dialog.
2019-05-04 12:00:50 +03:00
2. [Visual Studio 2019 ](https://www.visualstudio.com/downloads/ ) with the following workloads:
2019-01-21 05:37:03 +03:00
* `.NET desktop development` with `.NET Framework 4.7.2 targeting pack`
2019-11-27 16:13:00 +03:00
* `Desktop development with C++` with
2020-06-21 19:02:42 +03:00
* `Windows 10 SDK (10.0.18362.0)` (it's currently enabled by default but it might change)
2020-06-19 22:44:26 +03:00
* `MSVC v142 - VS2019 C++ x64/x86 build tools (v14.26)` or later version (should be enabled by default)
2020-06-21 19:02:42 +03:00
* `C++/CLI support for v142 build tools (v14.26)` or later version ** (not enabled by default)**
2018-09-21 05:13:43 +03:00
* `.NET Core cross-platform development`
2019-11-27 16:13:00 +03:00
* Optional (to target UWP): `Universal Windows Platform development` with
2020-06-19 22:44:26 +03:00
* `Windows 10 SDK (10.0.18362.0)` or later version
2020-06-21 19:02:42 +03:00
* `MSVC v142 - VS2019 C++ ARM build tools (v14.26)` or later version ** (not enabled by default)**
2019-07-30 19:11:08 +03:00
* Optional (to target iOS/Android): `Mobile development with .NET` and `Android SDK setup (API level 27)` individual component, then in Visual Studio go to `Tools > Android > Android SDK Manager` and install `NDK` (version 19+) from `Tools` tab.
2020-04-27 01:09:21 +03:00
3. ** [FBX SDK 2019.0 VS2015 ](https://www.autodesk.com/developer-network/platform-technologies/fbx-sdk-2019-0 )**
2018-06-19 12:06:54 +03:00
2020-04-14 17:37:41 +03:00
### Build Stride
2018-08-06 09:26:05 +03:00
2020-04-27 01:09:21 +03:00
1. Open a command prompt, point it to a directory and clone Stride to it: `git clone https://github.com/stride3d/stride.git`
2. Open `<StrideDir>\build\Stride.sln` with Visual Studio 2019 and build `Stride.GameStudio` (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.
2020-12-25 02:49:47 +03:00
* For .Net 5.0 make sure that you have the latest SDK and runtime, navigate to ``\sources\targets\Stride.Core.TargetFrameworks.Editor.props`` and change ``net472`` to ``net5.0-windows``
2020-04-27 01:09:21 +03:00
If building failed:
* 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 outdated version of 2017 is present alongside 2019. If you want to keep VS 2017 make sure that it is up to date and that you are building Stride through VS 2019.
* Some changes might require a system reboot, try that if you haven't yet.
2020-12-25 02:49:47 +03:00
* Make sure that git and visual studio can access the internet.
2020-12-25 17:43:54 +03:00
* 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.
2020-04-27 01:09:21 +03:00
Do note that test solutions might fail but it should not prevent you from building `Stride.GameStudio` .
2018-08-06 09:26:05 +03:00
2018-09-06 04:05:15 +03:00
### Contribution Guidelines
Please check our [Contributing Guidelines ](docs/CONTRIBUTING.md ).
2018-08-06 05:31:43 +03:00
### Build Status
2018-08-06 07:50:50 +03:00
|Branch| **master** |
|:--:|:--:|
2020-04-14 17:37:41 +03:00
|Windows D3D11|< a href = "https://teamcity.stride3d.net/viewType.html?buildTypeId=Engine_BuildWindowsD3d11&branch=master&guest=1" > < img src = "https://teamcity.stride3d.net/app/rest/builds/buildType:(id:Engine_BuildWindowsD3d11),branch:master/statusIcon" / > < / a >
|Windows D3D12|< a href = "https://teamcity.stride3d.net/viewType.html?buildTypeId=Engine_BuildWindowsD3d12&branch=master&guest=1" > < img src = "https://teamcity.stride3d.net/app/rest/builds/buildType:(id:Engine_BuildWindowsD3d12),branch:master/statusIcon" / > < / a >
|Windows Vulkan|< a href = "https://teamcity.stride3d.net/viewType.html?buildTypeId=Engine_BuildWindowsVulkan&branch=master&guest=1" > < img src = "https://teamcity.stride3d.net/app/rest/builds/buildType:(id:Engine_BuildWindowsVulkan),branch:master/statusIcon" / > < / a >
|Windows OpenGL|< a href = "https://teamcity.stride3d.net/viewType.html?buildTypeId=Engine_BuildWindowsOpenGL&branch=master&guest=1" > < img src = "https://teamcity.stride3d.net/app/rest/builds/buildType:(id:Engine_BuildWindowsOpenGL),branch:master/statusIcon" / > < / a >
|Windows OpenGL ES|< a href = "https://teamcity.stride3d.net/viewType.html?buildTypeId=Engine_BuildWindowsOpenGLES&branch=master&guest=1" > < img src = "https://teamcity.stride3d.net/app/rest/builds/buildType:(id:Engine_BuildWindowsOpenGLES),branch:master/statusIcon" / > < / a >
|UWP|< a href = "https://teamcity.stride3d.net/viewType.html?buildTypeId=Engine_BuildWindowsUWP&branch=master&guest=1" > < img src = "https://teamcity.stride3d.net/app/rest/builds/buildType:(id:Engine_BuildWindowsUWP),branch:master/statusIcon" / > < / a >
|iOS|< a href = "https://teamcity.stride3d.net/viewType.html?buildTypeId=Engine_BuildiOS&branch=master&guest=1" > < img src = "https://teamcity.stride3d.net/app/rest/builds/buildType:(id:Engine_BuildiOS),branch:master/statusIcon" / > < / a >
|Android|< a href = "https://teamcity.stride3d.net/viewType.html?buildTypeId=Engine_BuildAndroid&branch=master&guest=1" > < img src = "https://teamcity.stride3d.net/app/rest/builds/buildType:(id:Engine_BuildAndroid),branch:master/statusIcon" / > < / a >
|Linux Vulkan|< a href = "https://teamcity.stride3d.net/viewType.html?buildTypeId=Engine_BuildLinuxVulkan&branch=master&guest=1" > < img src = "https://teamcity.stride3d.net/app/rest/builds/buildType:(id:Engine_BuildLinuxVulkan),branch:master/statusIcon" / > < / a >
|Linux OpenGL|< a href = "https://teamcity.stride3d.net/viewType.html?buildTypeId=Engine_BuildLinuxOpenGL&branch=master&guest=1" > < img src = "https://teamcity.stride3d.net/app/rest/builds/buildType:(id:Engine_BuildLinuxOpenGL),branch:master/statusIcon" / > < / a >
|Tests Windows Simple| < a href = "https://teamcity.stride3d.net/viewType.html?buildTypeId=Engine_Tests_WindowsSimple&branch=master&guest=1" > < img src = "https://teamcity.stride3d.net/app/rest/builds/buildType:(id:Engine_Tests_WindowsSimple),branch:master/statusIcon" / > < / a >
|Tests Windows D3D11|< a href = "https://teamcity.stride3d.net/viewType.html?buildTypeId=Engine_Tests_WindowsD3D11&branch=master&guest=1" > < img src = "https://teamcity.stride3d.net/app/rest/builds/buildType:(id:Engine_Tests_WindowsD3D11),branch:master/statusIcon" / > < / a >