Open 3D Engine (O3DE) is an Apache 2.0-licensed 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. #o3de #gameengine #engine

Chris Galvan 1da5ef16a8 Merge pull request #6046 from aws-lumberyard-dev/cgalvan/gitflow_211130_o3de_main 3 gadi atpakaļ
.github ccb686b0fc Bug report template improvement suggestions (#4478) 3 gadi atpakaļ
Assets 6e70097ad7 Fixed all errors with default seeds (#5489) 3 gadi atpakaļ
AutomatedTesting dbc5d7a8bc Cherry-pick of Linux deb package to stabilization (#5778) 3 gadi atpakaļ
Code 99d0c39273 O3DE.exe Project-Centric "Open Editor" fix (#5852) 3 gadi atpakaļ
Gems 64139b7636 Add new-line to end of file 3 gadi atpakaļ
Registry dbc5d7a8bc Cherry-pick of Linux deb package to stabilization (#5778) 3 gadi atpakaļ
Templates dbc5d7a8bc Cherry-pick of Linux deb package to stabilization (#5778) 3 gadi atpakaļ
Tools c35f74e9ce Physics/test axis aligned box shape configuration works #7378a (#5366) 3 gadi atpakaļ
cmake b3c0200345 Restore missing variable 'target_filename_ext' needed to determine if RPATH fix is necessary or not (#5824) 3 gadi atpakaļ
python b779f358d0 Refactor DCCsi to work better with O3DE changes (#4226) 3 gadi atpakaļ
scripts dbc5d7a8bc Cherry-pick of Linux deb package to stabilization (#5778) 3 gadi atpakaļ
.clang-format 4a5b7edbfe Updates to kd-tree ray intersection - ATOM-15673 (#1026) 4 gadi atpakaļ
.editorconfig a10351f38d Initial commit 4 gadi atpakaļ
.gitattributes 78d6909bda Merge branch 'main' into cpack_installer 4 gadi atpakaļ
.gitignore 99d0c39273 O3DE.exe Project-Centric "Open Editor" fix (#5852) 3 gadi atpakaļ
.lfsconfig 7cda947f6e Update .lfsconfig instructions 4 gadi atpakaļ
CMakeLists.txt 4e1825a3fe Better compiler detection on Linux (#5376) 3 gadi atpakaļ
CODE_OF_CONDUCT.md 70dc678be7 Create CODE_OF_CONDUCT.md 4 gadi atpakaļ
CONTRIBUTING.md bb52475ce8 Updated text to be more descriptive 4 gadi atpakaļ
Doxyfile_ScriptBinds a10351f38d Initial commit 4 gadi atpakaļ
LICENSE.txt e7f787572e Updates licenses to APACHE-2.0 OR MIT (#1685) 4 gadi atpakaļ
LICENSE_APACHE2.TXT e7f787572e Updates licenses to APACHE-2.0 OR MIT (#1685) 4 gadi atpakaļ
LICENSE_MIT.TXT e7f787572e Updates licenses to APACHE-2.0 OR MIT (#1685) 4 gadi atpakaļ
README.md 57b201b0da Merged stabilization/2110 -> main 3 gadi atpakaļ
SerializeContextAnalysis.bat 38261d0800 Shorten copyright headers by splitting into 2 lines (#2213) 4 gadi atpakaļ
SliceBuilderSettings.json a10351f38d Initial commit 4 gadi atpakaļ
aztest_bootstrap.json a10351f38d Initial commit 4 gadi atpakaļ
editor.cfg 80db67e90a Remove many unused variables and unused setting files (#4607) 3 gadi atpakaļ
engine.json d30fdb759d Gem repo template (#5774) 3 gadi atpakaļ
pytest.ini ea442b80d1 Renamed ctest_pytest.ini to pytest.ini so it is used by default, added TestSuite_ as collection file (#4822) 3 gadi atpakaļ
system_android_android.cfg 80db67e90a Remove many unused variables and unused setting files (#4607) 3 gadi atpakaļ
system_ios_ios.cfg 80db67e90a Remove many unused variables and unused setting files (#4607) 3 gadi atpakaļ
system_linux_pc.cfg 80db67e90a Remove many unused variables and unused setting files (#4607) 3 gadi atpakaļ
system_mac_mac.cfg 80db67e90a Remove many unused variables and unused setting files (#4607) 3 gadi atpakaļ
system_windows_pc.cfg c35f74e9ce Physics/test axis aligned box shape configuration works #7378a (#5366) 3 gadi atpakaļ

README.md

O3DE (Open 3D Engine)

O3DE (Open 3D Engine) 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/.

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.

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

For the latest details and system requirements, refer to System Requirements in the documentation.

Windows

Optional

  • Wwise audio SDK
    • For the latest version requirements and setup instructions, refer to the Wwise Audio Engine Gem reference in the documentation.

Quick start engine setup

To set up a project-centric source engine, complete the following steps. For other build options, refer to Setting up O3DE from GitHub in the documentation.

  1. Create a writable folder to cache downloadable third-party packages. You can also use this to store other redistributable SDKs.

  2. Install the following redistributables:

    • 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.
  3. Configure the engine source into a solution using this command line, replacing <your build path>, <your source path>, and <3rdParty package path> with the paths you've created:

    cmake -B <your build path> -S <your source path> -G "Visual Studio 16" -DLY_3RDPARTY_PATH=<3rdParty package path>
    

    Example:

    cmake -B C:\o3de\build\windows_vs2019 -S C:\o3de -G "Visual Studio 16" -DLY_3RDPARTY_PATH=C:\o3de-packages
    

    Note: Do not use trailing slashes for the <3rdParty package path>.

  4. 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 Add Entry and add a cache entry for the <3rdParty package path> folder you created, using the following values:
      1. Name: LY_3RDPARTY_PATH
      2. Type: STRING
      3. Value: <3rdParty package path>
    5. Click Configure.
    6. Wait for the key values to populate. Update or add any additional fields that are needed for your project.
    7. Click Generate.
  5. Register the engine with this command:

    scripts\o3de.bat register --this-engine
    
  6. The configuration of the solution is complete. You are now ready to create a project and build the engine.

For more details on the steps above, refer to Setting up O3DE from GitHub in the documentation.

Setting up new projects and building the engine

  1. From the O3DE repo folder, set up a new project using the o3de create-project command.

    scripts\o3de.bat create-project --project-path <your new project path>
    
  2. Configure a solution for your project.

    cmake -B <your project build path> -S <your new project source path> -G "Visual Studio 16" -DLY_3RDPARTY_PATH=<3rdParty cache path>
    

    Example:

    cmake -B C:\my-project\build\windows_vs2019 -S C:\my-project -G "Visual Studio 16" -DLY_3RDPARTY_PATH=C:\o3de-packages
    

    Note: Do not use trailing slashes for the <3rdParty cache path>.

  3. Build the project, Asset Processor, and Editor to binaries by running this command inside your project:

    cmake --build <your project build path> --target <New Project Name>.GameLauncher Editor --config profile -- /m
    

    Note: Your project name used in the build target is the same as the directory name of your project.

This will compile after some time and binaries will be available in the project build path you've specified, under bin/profile.

For a complete tutorial on project configuration, see Creating Projects Using the Command Line Interface in the documentation.

License

For terms please see the LICENSE*.TXT files at the root of this distribution.