* Updated print_registration functions to fix "register-show" command Added unit test to validate the argparse options to the register show command. Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com> * Updated the register.py script to once again register an engine list Previosly each engine were registered into a dictionary with multiple keys, but once the engine.json started to self describe the registered content that came with it, it was reduced to a single 'path' key. Therefore it has been changed to a list to be consistent with other o3de object paths Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com> * Updated the SettingsRegistryMergeUtitls Code which parses the attempts to locate the engine path associated associated with the project.json engine key to check the 'engines_path' object within the o3de_manifest.json Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com> * Updated print registration unit test to patch the get_project_path This is to make sure that the existence of the placeholder project path isn't validated when running the test Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com> * Typo and formatting fixes for the print_registration script Also corrected indentation in unit_test_print_registration script Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>
Open 3D Engine
Open 3D Engine (O3DE) is an open-source, real-time, multi-platform 3D engine that enables developers and content creators to build AAA games, cinema-quality 3D worlds, and high-fidelity simulations without any fees or commercial obligations.
Contribute
For information about contributing to Open 3D Engine, visit https://o3de.org/docs/contributing/
Download and Install
This repository uses Git LFS for storing large binary files.
Verify you have Git LFS installed by running the following command to print the version number.
git lfs --version
If Git LFS is not installed, download and run the installer from: https://git-lfs.github.com/.
Install Git LFS hooks
git lfs install
Clone the repository
git clone https://github.com/o3de/o3de.git
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/
- Install the following workloads:
- Game Development with C++
- MSVC v142 - VS 2019 C++ x64/x86
- C++ 2019 redistributable update
- Install the following workloads:
- CMake 3.20 minimum: https://cmake.org/download/
Optional
- Wwise version 2021.1.1.7601 minimum: https://www.audiokinetic.com/download/
- Note: This requires registration and installation of a client application to download
- Note: It is generally okay to use a more recent version of Wwise, but some SDK updates will require code changes
- Make sure to select the
SDK(C++)component during installation of Wwise - CMake can find the Wwise install location in two ways:
- The
LY_WWISE_INSTALL_PATHCMake cache variable -- this is checked first - The
WWISEROOTenvironment variable which is set when installing Wwise SDK
- The
Quick Start Build Steps
-
Create a writable folder to cache 3rd Party dependencies. You can also use this to store other redistributable SDKs.
-
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
-
Configure the source into a solution using this command line, replacing 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=AutomatedTestingNote: Do not use trailing slashes for the <3rdParty cache path>
-
Alternatively, you can do this through the CMake GUI:
- Start
cmake-gui.exe - Select the local path of the repo under "Where is the source code"
- Select a path where to build binaries under "Where to build the binaries"
- Click "Configure"
- Wait for the key values to populate. Fill in the fields that are relevant, including
LY_3RDPARTY_PATHandLY_PROJECTS - Click "Generate"
- Start
-
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 path> --target AutomatedTesting.GameLauncher AssetProcessor Editor --config profile -- /m -
This will compile after some time and binaries will be available in the build path you've specified
Setting up new projects
- While still within the repo folder, register the engine with this command:
scripts\o3de.bat register --this-engine - Setup new projects using the
o3de create-projectcommand.<Repo path>\scripts\o3de.bat create-project --project-path <your new project path> - Register the engine to the project
<Repo path>\scripts\o3de.bat register --project-path <New project path> - 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 project build path> --target <New Project Name>.GameLauncher --config profile -- /m
For a tutorial on project configuration, see Creating Projects Using the Command Line in the documentation.
License
For terms please see the LICENSE*.TXT file at the root of this distribution.