# open_3d_engine **Repository Path**: onduty1981/open_3d_engine ## Basic Information - **Project Name**: open_3d_engine - **Description**: 开放3D引擎(O3DE)是一个 Apache 2.0 许可的多平台 3D 引擎,起源于 Amazon 的 lumberyard 游戏引擎,能够帮助开发者和内容创作者能够制作 AAA - **Primary Language**: C/C++ - **License**: Apache-2.0 - **Default Branch**: development - **Homepage**: https://www.oschina.net/p/open_3d_engine - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 9 - **Created**: 2021-07-07 - **Last Updated**: 2024-06-02 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ## Updates to this readme July 06, 2021 - Switch licenses to APACHE-2.0 OR MIT 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 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. 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 ```shell > git clone https://github.com/o3de/o3de.git Cloning into 'o3de'... # initial prompt for credentials to download the repository code # enter your Github username and personal access token remote: Counting objects: 29619, done. Receiving objects: 100% (29619/29619), 40.50 MiB | 881.00 KiB/s, done. Resolving deltas: 100% (8829/8829), done. Updating files: 100% (27037/27037), done. # second prompt for credentials when downloading LFS files # enter your Github username and personal access token Filtering content: 100% (3853/3853), 621.43 MiB | 881.00 KiB/s, done. ``` 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 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 * C++ 2019 redistributable update * CMake 3.20 minimum: [https://cmake.org/download/](https://cmake.org/download/) #### Optional * 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=` * 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 - CMake can be installed to any location, as long as it's available in the system path - WWise can be installed anywhere, but you will need to set an environment variable for CMake to detect it: `set LY_WWISE_INSTALL_PATH=` 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 > ``` ``` python\get_python.bat ``` 1. Configure the source into a solution using this command line, replacing and <3rdParty cache path> to a path you've created: ``` cmake -B -S -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` 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" 1. The configuration of the solution is complete. To build the Editor and AssetProcessor to binaries, run this command inside your repo: ``` cmake --build --target AutomatedTesting.GameLauncher AssetProcessor Editor --config profile -- /m ``` 1. This will compile after some time and binaries will be available in the build path you've specified ### Setting up new projects 1. While still within the repo folder, register the engine with this command: ``` scripts\o3de.bat register --this-engine ``` 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. ``` \scripts\o3de.bat create-project --project-path ``` 1. Register the engine to the project ``` \scripts\o3de.bat register --project-path ``` 1. Once you're ready to build the project, run the same set of commands to configure and build: ``` cmake -B -S -G "Visual Studio 16" -DLY_3RDPARTY_PATH=<3rdParty cache path> // For the 0.5 branch, you must build a new Editor for each project: cmake --build --target .GameLauncher Editor --config profile -- /m // For all other branches, just build the project: cmake --build --target .GameLauncher --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 For terms please see the LICENSE*.TXT file at the root of this distribution.