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.
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Go to file
SJ 7eeaf7dad5
Generate install layout for Mac (#2144)
* 1. Move call to install(TARGETS...) to its own function to create a platform specific implementation for Mac.
2. Add linker-signed flag to work around cmake install issue.

Signed-off-by: amzn-sj <srikkant@amazon.com>

* Add newline

Signed-off-by: amzn-sj <srikkant@amazon.com>

* 1. Rename function to ly_install_target_override and only call it if it has been implemented.
2. Pass in runtime, archive, and library directory paths as params to clean it up a bit.

Signed-off-by: amzn-sj <srikkant@amazon.com>
4 years ago
.github/ISSUE_TEMPLATE Merge pull request #2099 from aws-lumberyard-dev/TemplateCleanup 4 years ago
Assets merge stabilization/2106 into development 5 years ago
AutomatedTesting update sc that is used in physics tests to use the 'PhysicsSystemInterface' instead of 'System Interface' (#2162) 4 years ago
Code Change the InputDeviceImplementationRequest to be addressable by an InputDevcieId to account for the situation where someone may want to swap out the implementation for a single instance of a devcie type rather than all instances of that device type (the latter can still be achieved using Broadcast instead of Event when calling the EBus method). (#2180) 4 years ago
Gems Fix gesture recognizer spamming errors when clicking the mouse (#2181) 4 years ago
Registry Merged stabilization/2106 to development; Resolved merge conflicts 4 years ago
Templates Fixed cmake configuring when using an External Gem (#2020) 5 years ago
Tools Merge pull request #1979 from aws-lumberyard-dev/system_test_example_update 4 years ago
cmake Generate install layout for Mac (#2144) 4 years ago
python Allow running scripts using msys2/mingw/git bash (#1954) 5 years ago
scripts Merge pull request #2094 from aws-lumberyard-dev/cgalvan/gitflow_210712 4 years ago
.clang-format Updates to kd-tree ray intersection - ATOM-15673 (#1026) 5 years ago
.editorconfig Initial commit 5 years ago
.gitattributes Merge branch 'main' into cpack_installer 5 years ago
.gitignore Updating the ProjectManager code and scripts with new layout of the o3de package scripts 5 years ago
.lfsconfig Update .lfsconfig instructions 5 years ago
CMakeLists.txt Final update copyright headers to reference license files at the repo root (#1693) 5 years ago
CODE_OF_CONDUCT.md Create CODE_OF_CONDUCT.md 5 years ago
CONTRIBUTING.md Adding contributing guide pointer markdown (#1928) 5 years ago
Doxyfile_ScriptBinds Initial commit 5 years ago
LICENSE.txt o3de stabilization/2106 - update licenses (#1661) 5 years ago
LICENSE_APACHE2.TXT o3de stabilization/2106 - update licenses (#1661) 5 years ago
LICENSE_MIT.TXT o3de stabilization/2106 - update licenses (#1661) 5 years ago
README.md Update README LFS instructions (#1925) 5 years ago
SerializeContextAnalysis.bat Final update copyright headers to reference license files at the repo root (#1693) 5 years ago
SliceBuilderSettings.json Initial commit 5 years ago
aztest_bootstrap.json Initial commit 5 years ago
ctest_pytest.ini Final update copyright headers to reference license files at the repo root (#1693) 5 years ago
editor.cfg some replacements and fixes that were referring Sandbox/Editor 5 years ago
engine.json Merge branch 'upstream/stabilization/2106' into genewalt/gitflow_210628 5 years ago
system_android_android.cfg Renamed osx_gl to mac and es3 to android for cache folders (#949) 5 years ago
system_ios_ios.cfg Initial commit 5 years ago
system_linux_pc.cfg Initial commit 5 years ago
system_mac_mac.cfg Renamed osx_gl to mac and es3 to android for cache folders (#949) 5 years ago
system_windows_pc.cfg Initial commit 5 years ago

README.md

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

Optional

  • Wwise - 2021.1.1.7601 minimum: https://www.audiokinetic.com/download/
    • Note: This requires registration and installation of a client application to download
    • Make sure to select the SDK(C++) component during installation of Wwise
    • You will also need to set an environment variable: set LY_WWISE_INSTALL_PATH=<path to Wwise version>
    • For example: set LY_WWISE_INSTALL_PATH="C:\Program Files (x86)\Audiokinetic\Wwise 2021.1.1.7601"

Quick Start Build Steps

  1. Create a writable folder to cache 3rd Party dependencies. You can also use this to store other redistributable SDKs.

  2. 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
    • (Optional) 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>
  3. 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=AutomatedTesting 
    

    Note: Do not use trailing slashes for the <3rdParty cache 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 "Configure"
    5. Wait for the key values to populate. Fill in the fields that are relevant, including LY_3RDPARTY_PATH and LY_PROJECTS
    6. Click "Generate"
  5. 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
    
  6. 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
    
  2. Setup new projects using the o3de create-project command.
    <Repo path>\scripts\o3de.bat create-project --project-path <your new project path>
    
  3. Register the engine to the project
    <Repo path>\scripts\o3de.bat register --project-path <New project path>
    
  4. 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.