Readme update (#770)
- Update to the 3p system. The megazip and CDN addresses are no longer required for mainline (will still need it for 0.5) - Updates to the min requirements and notes for 3p redistributables - o3de engine registration instructions - Direct link to the full docs on the o3de docs site Co-authored-by: lumberyard-employee-dm & willihay
This commit is contained in:
@@ -4,23 +4,57 @@
|
||||
|
||||
Welcome to the Project Spectra Private Preview. This is a confidential pre-release project; your use is subject to the nondisclosure agreement between you (or your organization) and Amazon. Do not disclose the existence of this project, your participation in it, or any of the materials provided, to any unauthorized third party. To request access for a third party, please contact [Royal O'Brien, obriroya@amazon.com](mailto:obriroya@amazon.com).
|
||||
|
||||
## Full instructions can be found here:
|
||||
### https://docs.o3de.org/docs/welcome-guide/setup/setup-from-github/
|
||||
(Note: Contact Royal or [Doug Erickson, dougeric@amazon.com](mailto:dougeric@amazon.com) for access)
|
||||
|
||||
## Updates to this readme
|
||||
May 14, 2021
|
||||
- Removed instructions for the 3rdParty zip file and downloader URL. This is no longer a requirement.
|
||||
- Updated instructions for dependencies
|
||||
- Links to full documentation
|
||||
|
||||
April 7-13, 2021
|
||||
- Updates to the 3rdParty zip file
|
||||
|
||||
March 25, 2021
|
||||
- Initial commit for instructions
|
||||
|
||||
## Download and Install
|
||||
|
||||
This repository uses Git LFS for storing large binary files. You will need to create a Github personal access token to authenticate with the LFS service.
|
||||
|
||||
To install Git LFS, download the binary here: https://git-lfs.github.com/.
|
||||
|
||||
After installation, you will need to install the necessary git hooks with this command
|
||||
```
|
||||
git lfs install
|
||||
```
|
||||
|
||||
### Create a Git Personal Access Token
|
||||
|
||||
You will need your personal access token credentials to authenticate when you clone the repository.
|
||||
You will need your personal access token credentials to authenticate when you clone the repository and when downloading objects from Git LFS
|
||||
|
||||
[Create a personal access token with the 'repo' scope.](https://docs.github.com/en/github/authenticating-to-github/creating-a-personal-access-token)
|
||||
|
||||
During the clone operation, you will be prompted to enter a password. Your token will be used as the password. You will also be prompted a second time for Git LFS.
|
||||
|
||||
### (Recommended) Verify you have a credential manager installed to store your credentials
|
||||
|
||||
Recent versions of Git install a credential manager to store your credentials so you don't have to put in the credentials for every request.
|
||||
Recent versions of Git install a credential manager to store your credentials so you don't have to put in the credentials for every request.
|
||||
|
||||
It is highly recommended you check that you have a [credential manager installed and configured](https://github.com/microsoft/Git-Credential-Manager-Core)
|
||||
|
||||
For Linux and Mac, use the following commands to store credentials
|
||||
|
||||
Linux:
|
||||
```
|
||||
git config --global credential.helper cache
|
||||
```
|
||||
Mac:
|
||||
```
|
||||
git config --global credential.helper osxkeychain
|
||||
```
|
||||
|
||||
### Clone the repository
|
||||
|
||||
@@ -43,67 +77,96 @@ Filtering content: 100% (3853/3853), 621.43 MiB | 881.00 KiB/s, done.
|
||||
|
||||
```
|
||||
|
||||
If you have the Git credential manager core installed, you should not be prompted for your credentials anymore.
|
||||
If you have the Git credential manager core or other credential helpers installed, you should not be prompted for your credentials anymore.
|
||||
|
||||
## Building the Engine
|
||||
### Build Requirements and redistributables
|
||||
#### Windows
|
||||
|
||||
* Visual Studio 2019 16.9.2 (All versions supported, including Community): [https://visualstudio.microsoft.com/downloads/](https://visualstudio.microsoft.com/downloads/)
|
||||
* Visual Studio 2019 16.9.2 minimum (All versions supported, including Community): [https://visualstudio.microsoft.com/downloads/](https://visualstudio.microsoft.com/downloads/)
|
||||
* Install the following workloads:
|
||||
* Game Development with C++
|
||||
* MSVC v142 - VS 2019 C++ x64/x86
|
||||
* Visual C++ redistributable: [https://visualstudio.microsoft.com/downloads/#other-family](https://visualstudio.microsoft.com/downloads/#other-family)
|
||||
* FBXSDK for VS2015: [https://www.autodesk.com/developer-network/platform-technologies/fbx-sdk-2016-1-2](https://www.autodesk.com/developer-network/platform-technologies/fbx-sdk-2016-1-2)
|
||||
* WWise - 2019.2.8.7432: [https://www.audiokinetic.com/download/](https://www.audiokinetic.com/download/)
|
||||
* CMake 3.19.1: [https://cmake.org/files/LatestRelease/cmake-3.19.1-win64-x64.msi](https://cmake.org/files/LatestRelease/cmake-3.19.1-win64-x64.msi)
|
||||
* C++ 2019 redistributable update
|
||||
* CMake 3.19.1 minimum: [https://cmake.org/files/LatestRelease/cmake-3.19.1-win64-x64.msi](https://cmake.org/files/LatestRelease/cmake-3.19.1-win64-x64.msi)
|
||||
|
||||
### Build Steps
|
||||
#### Optional
|
||||
|
||||
1. Download the 3rdParty zip file from here: **[https://d2c171ws20a1rv.cloudfront.net/3rdParty-windows-no-symbols-rev13.zip](https://d2c171ws20a1rv.cloudfront.net/3rdParty-windows-no-symbols-rev13.zip)**
|
||||
2. Unzip this file into a writable folder. This will also act as a cache location for the 3rdParty downloader by default (configurable with the `LY_PACKAGE_DOWNLOAD_CACHE_LOCATION` environment variable)
|
||||
3. Install the following redistributables to the following:
|
||||
* WWise - 2019.2.8.7432 minimum: [https://www.audiokinetic.com/download/](https://www.audiokinetic.com/download/)
|
||||
* Note: This requires registration and installation of a client to download
|
||||
* You will also need to set a environment variable: `set LY_WWISE_INSTALL_PATH=<path to WWise version>`
|
||||
* For example: `set LY_WWISE_INSTALL_PATH="C:\Program Files (x86)\Audiokinetic\Wwise 2019.2.8.7432"`
|
||||
|
||||
### Quick Start Build Steps
|
||||
|
||||
1. Create a writable folder to cache 3rd Party dependencies. You can also use this to store other redistributable SDKs.
|
||||
|
||||
> For the 0.5 branch - Create an empty text file named `3rdParty.txt` in this folder, to allow a legacy CMake validator to pass
|
||||
|
||||
1. Install the following redistributables to the following:
|
||||
- Visual Studio and VC++ redistributable can be installed to any location
|
||||
- FBXSDK should be installed to `<3rdParty path>\FbxSdk\2016.1.2-az.1`. See the README in this folder for details
|
||||
- WWise should be installed to: `<3rdParty Path>\Wwise\2019.2.8.7432`
|
||||
- CMake should be installed to: `<3rdParty Path>\CMake\3.19.1`
|
||||
4. Add the following environment variables through the command line
|
||||
- CMake can be installed to any location, as long as it's available in the system path, otherwise it can be installed to: `<3rdParty Path>\CMake\3.19.1`
|
||||
- WWise can be installed anywhere, but you will need to set an environment variable for CMake to detect it: `set LY_WWISE_INSTALL_PATH=<path to WWise>`
|
||||
|
||||
1. Navigate into the repo folder, then download the python runtime with this command
|
||||
|
||||
> For the 0.5 branch - Set this environment variable prior to the `get_python` command below:
|
||||
> ```
|
||||
> set LY_PACKAGE_SERVER_URLS=https://d2c171ws20a1rv.cloudfront.net
|
||||
> ```
|
||||
|
||||
```
|
||||
set LY_3RDPARTY_PATH=<Location of the unzipped 3rdParty zip>
|
||||
set LY_PACKAGE_SERVER_URLS="https://d2c171ws20a1rv.cloudfront.net"
|
||||
python\get_python.bat
|
||||
```
|
||||
|
||||
5. Configure the source into a solution using this command line, replacing <your build location> to a path you've created
|
||||
1. While still within the repo folder, register the engine with this command:
|
||||
```
|
||||
cmake -B <your build location> -S <source-dir> -G "Visual Studio 16 2019" -DLY_3RDPARTY_PATH=%LY_3RDPARTY_PATH% -DLY_UNITY_BUILD=ON -DLY_PROJECTS=AutomatedTesting
|
||||
scripts\o3de.bat register --this-engine
|
||||
```
|
||||
|
||||
6. Alternatively, you can do this through the CMake GUI:
|
||||
1. Configure the source into a solution using this command line, replacing <your build path> and <3rdParty cache path> to a path you've created:
|
||||
```
|
||||
cmake -B <your build path> -S <your source path> -G "Visual Studio 16" -DLY_3RDPARTY_PATH=<3rdParty cache path> -DLY_UNITY_BUILD=ON -DLY_PROJECTS=AutomatedTesting
|
||||
```
|
||||
> Note: Do not use trailing slashes for the <3rdParty cache path>
|
||||
|
||||
1. Alternatively, you can do this through the CMake GUI:
|
||||
|
||||
1. Start `cmake-gui.exe`
|
||||
2. Select the local path of the repo under "Where is the source code"
|
||||
3. Select a path where to build binaries under "Where to build the binaries"
|
||||
4. Click "Configure"
|
||||
5. Wait for the key values to populate. Fill in the fields that are relevant, including `LY_3RDPARTY_PATH`, `LY_PACKAGE_SERVER_URLS`, and `LY_PROJECTS`
|
||||
6. Click "Generate"
|
||||
1. Select the local path of the repo under "Where is the source code"
|
||||
1. Select a path where to build binaries under "Where to build the binaries"
|
||||
1. Click "Configure"
|
||||
1. Wait for the key values to populate. Fill in the fields that are relevant, including `LY_3RDPARTY_PATH` and `LY_PROJECTS`
|
||||
1. Click "Generate"
|
||||
|
||||
7. The configuration of the solution is complete. To build the Editor and AssetProcessor to binaries, run this command inside your repo:
|
||||
1. The configuration of the solution is complete. To build the Editor and AssetProcessor to binaries, run this command inside your repo:
|
||||
```
|
||||
cmake --build <your build location> --target AutomatedTesting.GameLauncher AssetProcessor Editor --config profile -- /m
|
||||
cmake --build <your build path> --target AutomatedTesting.GameLauncher AssetProcessor Editor --config profile -- /m
|
||||
```
|
||||
|
||||
8. This will compile after some time and binaries will be available in the build path you've specified
|
||||
1. This will compile after some time and binaries will be available in the build path you've specified
|
||||
|
||||
### Setting up new projects
|
||||
1. Setup new projects using this command
|
||||
1. Setup new projects using the `o3de create-project` command. In the 0.5 branch, the project directory must be a subdirectory in the repo folder.
|
||||
```
|
||||
<Repo path>\scripts\o3de.bat create-project --project-path <New project path>
|
||||
<Repo path>\scripts\o3de.bat create-project --project-path <your new project path>
|
||||
```
|
||||
2. Once you're ready to build the project, run the same set of commands to configure and build:
|
||||
1. Register the engine to the project
|
||||
```
|
||||
cmake -B <your build location> -S <source-dir> -G "Visual Studio 16 2019" -DLY_3RDPARTY_PATH=%LY_3RDPARTY_PATH% -DLY_PROJECTS=<New project name> -DLY_MONOLITHIC_GAME=1
|
||||
<Repo path>\scripts\o3de.bat register --project-path <New project path>
|
||||
```
|
||||
1. Once you're ready to build the project, run the same set of commands to configure and build:
|
||||
```
|
||||
cmake -B <your project build path> -S <your new project source path> -G "Visual Studio 16" -DLY_3RDPARTY_PATH=<3rdParty cache path>
|
||||
|
||||
cmake --build <your build location> --target <New Project Name> --config profile -- /m
|
||||
// For the 0.5 branch, you must build a new Editor for each project:
|
||||
cmake --build <your project build path> --target <New Project Name> Editor --config profile -- /m
|
||||
|
||||
// For all other branches, just build the project:
|
||||
cmake --build <your project build path> --target <New Project Name> --config profile -- /m
|
||||
```
|
||||
|
||||
For a tutorial on project configuration, see [Creating Projects Using the Command Line](https://docs.o3de.org/docs/welcome-guide/get-started/project-config/creating-projects-using-cli) in the documentation.
|
||||
|
||||
## License
|
||||
|
||||
|
||||
Reference in New Issue
Block a user