GithubHelp home page GithubHelp logo

o3de / o3de Goto Github PK

View Code? Open in Web Editor NEW
7.4K 140.0 2.1K 204.64 MB

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.

Home Page: https://o3de.org

License: Other

CMake 1.88% Python 13.55% C++ 83.22% Lua 0.29% Mathematica 0.01% Batchfile 0.13% C 0.34% Objective-C 0.01% Objective-C++ 0.20% Java 0.06% HTML 0.01% QMake 0.01% Shell 0.05% CSS 0.01% JavaScript 0.01% HLSL 0.01% ShaderLab 0.05% GLSL 0.01% PowerShell 0.01% Jinja 0.19%
3d-graphics-engine 3d-graphics animation game-development game-engine gamedev

o3de's Introduction

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/.

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 -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"
    

    Example:

    cmake -B C:\my-project\build\windows -S C:\my-project -G "Visual Studio 16"
    

    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.

Code Contributors

This project exists thanks to all the people who contribute. [Contribute].

License

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

o3de's People

Contributors

amzn-alexpete avatar amzn-daimini avatar amzn-gene avatar amzn-jillich avatar amzn-mike avatar amzn-phil avatar amzn-puvvadar avatar amzn-scottr avatar amznestebanpapp avatar antonmic avatar burelc-amzn avatar carlitosan avatar cgalvan avatar dmcdiarmid-ly avatar dtamkin1 avatar gadams3 avatar greerdv avatar hultonha avatar jckand avatar jonawals avatar jromnoa avatar kberg0 avatar lemonade-dm avatar lsemp3d avatar mbalfour-amzn avatar pollend avatar santorac avatar selfisholex avatar sergeyamzn avatar sphrose avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

o3de's Issues

clang 12 errors (linux)

When attempting to build with clang 12, I get this:

[ 0%] Building CXX object Code/Framework/AzCore/CMakeFiles/AzCore.dir/AzCore/Component/EntityUtils.cpp.o
cd /home/spot/rpmbuild/BUILD/o3de/x86_64-redhat-linux-gnu/Code/Framework/AzCore && /usr/bin/clang++ -DAZ_BUILD_CONFIGURATION_TYPE="release" -DLINUX -DLINUX64 -DNDEBUG -DRELEASE -D_HAS_EXCEPTIONS=0 -D_RELEASE -D__linux__ -I/home/spot/rpmbuild/BUILD/o3de/Code/Framework/AzCore/. -I/home/spot/rpmbuild/BUILD/o3de/Code/Framework/AzCore/Platform/Linux -I/home/spot/rpmbuild/BUILD/o3de/Code/Framework/AzCore/Platform/Common -isystem /usr/include/lua-5.1 -isystem /home/spot/rpmbuild/BUILD/o3de/3rdParty/rapidxml/1.13-modified.1/include -fno-exceptions -fvisibility=hidden -fvisibility-inlines-hidden -Wall -Werror -Wrange-loop-analysis -Wno-unknown-warning-option -Wno-#pragma-messages -Wno-absolute-value -Wno-defaulted-function-deleted -Wno-dynamic-class-memaccess -Wno-format-security -Wno-inconsistent-missing-override -Wno-invalid-offsetof -Wno-multichar -Wno-parentheses -Wno-reorder -Wno-self-assign -Wno-switch -Wno-tautological-compare -Wno-undefined-var-template -Wno-unknown-pragmas -Wno-unused-function -Wno-unused-private-field -Wno-unused-value -Wno-unused-variable -Wno-non-pod-varargs -Wno-unused-lambda-capture -Wno-nonportable-include-path -fPIC -msse4.1 -O2 -std=c++17 -o CMakeFiles/AzCore.dir/AzCore/Component/EntityUtils.cpp.o -c /home/spot/rpmbuild/BUILD/o3de/Code/Framework/AzCore/AzCore/Component/EntityUtils.cpp
In file included from /home/spot/rpmbuild/BUILD/o3de/Code/Framework/AzCore/AzCore/UnitTest/MockComponentApplication.cpp:13:
In file included from /home/spot/rpmbuild/BUILD/o3de/Code/Framework/AzCore/./AzCore/UnitTest/MockComponentApplication.h:15:
In file included from /home/spot/rpmbuild/BUILD/o3de/Code/Framework/AzCore/./AzCore/Component/ComponentApplicationBus.h:15:
In file included from /home/spot/rpmbuild/BUILD/o3de/Code/Framework/AzCore/./AzCore/EBus/EBus.h:25:
In file included from /home/spot/rpmbuild/BUILD/o3de/Code/Framework/AzCore/./AzCore/EBus/BusImpl.h:25:
In file included from /home/spot/rpmbuild/BUILD/o3de/Code/Framework/AzCore/./AzCore/EBus/Internal/BusContainer.h:14:
In file included from /home/spot/rpmbuild/BUILD/o3de/Code/Framework/AzCore/./AzCore/std/functional.h:24:
In file included from /home/spot/rpmbuild/BUILD/o3de/Code/Framework/AzCore/./AzCore/std/allocator.h:17:
/home/spot/rpmbuild/BUILD/o3de/Code/Framework/AzCore/./AzCore/RTTI/TypeInfo.h:165:35: error: use of template template parameter 'T' requires template arguments
static_assert(false_v, "Missing specialization for this template. Make sure it's registered for type info support.");
^
/home/spot/rpmbuild/BUILD/o3de/Code/Framework/AzCore/./AzCore/RTTI/TypeInfo.h:162:46: note: template is declared here
template<template<typename...> class T>
~~~~~~~~~~~~~~~~~~~~~ ^
/home/spot/rpmbuild/BUILD/o3de/Code/Framework/AzCore/./AzCore/RTTI/TypeInfo.h:173:35: error: use of template template parameter 'T' requires template arguments
static_assert(false_v, "Missing specialization for this template. Make sure it's registered for type info support.");
^
/home/spot/rpmbuild/BUILD/o3de/Code/Framework/AzCore/./AzCore/RTTI/TypeInfo.h:170:51: note: template is declared here
template<templateAZStd::size_t... class T>
~~~~~~~~~~~~~~~~~~~~~~~~~~ ^
/home/spot/rpmbuild/BUILD/o3de/Code/Framework/AzCore/./AzCore/RTTI/TypeInfo.h:181:35: error: use of template template parameter 'T' requires template arguments
static_assert(false_v, "Missing specialization for this template. Make sure it's registered for type info support.");
^
/home/spot/rpmbuild/BUILD/o3de/Code/Framework/AzCore/./AzCore/RTTI/TypeInfo.h:178:58: note: template is declared here
template<template<typename, AZStd::size_t> class T>
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^
/home/spot/rpmbuild/BUILD/o3de/Code/Framework/AzCore/./AzCore/RTTI/TypeInfo.h:189:35: error: use of template template parameter 'T' requires template arguments
static_assert(false_v, "Missing specialization for this template. Make sure it's registered for type info support.");
^
/home/spot/rpmbuild/BUILD/o3de/Code/Framework/AzCore/./AzCore/RTTI/TypeInfo.h:186:68: note: template is declared here
template<template<typename, typename, AZStd::size_t> class T>
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^
/home/spot/rpmbuild/BUILD/o3de/Code/Framework/AzCore/./AzCore/RTTI/TypeInfo.h:197:35: error: use of template template parameter 'T' requires template arguments
static_assert(false_v, "Missing specialization for this template. Make sure it's registered for type info support.");
^
/home/spot/rpmbuild/BUILD/o3de/Code/Framework/AzCore/./AzCore/RTTI/TypeInfo.h:194:78: note: template is declared here
template<template<typename, typename, typename, AZStd::size_t> class T>
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^
/home/spot/rpmbuild/BUILD/o3de/Code/Framework/AzCore/./AzCore/RTTI/TypeInfo.h:205:35: error: use of template template parameter 'T' requires template arguments
static_assert(false_v, "Missing specialization for this template. Make sure it's registered for type info support.");
^
/home/spot/rpmbuild/BUILD/o3de/Code/Framework/AzCore/./AzCore/RTTI/TypeInfo.h:202:68: note: template is declared here
template<template<typename, AZStd::size_t, typename> class T>
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^

Full screen game preview should allow broader user configuration

This is a follow up to the feature introduced here: #1306

Currently, the full screen game preview functionality is fairly fixed.

Ideally users should be able to configure various aspects, for example:

  • enable or disable it entirely
  • shortcut/modifier which enters full screen preview (currently hardcoded to Ctrl+Shift+G)
  • set the default preview type to full screen

[Project Manager] Want to be able to view the full name of the Gem without click on it

Describe the bug
(Feedback from the walk the engine session with an external customer)

In the Gem Catalog page, there is no way to resize the column width when viewing the Gems. For those gems with long gem names, their names will be cut without ... due to the limited column width. User has to manually select those gems and view their names on the right hand panel, which isn't ideal, because user couldn't easily view all gem names in one view on the gem catalog page.

Expected behavior/Acceptance criteria

  1. When user maximize the Gem Catalog page, the column should be expanded with the right proportion of the columns, where the column name can be displayed fully.
  2. User should be able to adjust the column width on the column header.

[Epic] Viewport interaction model updates

This task addresses key improvements for the viewport interaction model (VIM) that include object alignment, gizmos and rules, pivots, coordinate systems, and transform edits.

Fix AZ_TRAIT_DISABLE_FAILED_AP_CONNECTION_TESTS related unit tests from Linux

Remove AZ_TRAIT_DISABLE_FAILED_AP_CONNECTION_TESTS trait from Linux and fix unit test failures tagged by the trait.

If the test is not valid for Linux, then leave the test disabled but wrap it with AZ_TRAIT_DISABLE_FAILED_AP_CONNECTION_TESTS with an explanation of why it is not valid for the platform.

Acceptance Criteria:

  1. The following trait is removed from Lumberyard/Code/Framework/AzTest/AzTest/Platform/Linux/AzTest_Traits_Linux.h
 #define AZ_TRAIT_DISABLE_FAILED_AP_CONNECTION_TESTS true
  1. Unit tests job passes for Linux
Lumberyard/Tools/build/JenkinsScripts/build>../../../../python/python.sh ci_build.py -p Linux -test_profile

Full screen game preview should not user cvars to communicate the fullscreen preview state

This is a follow up to the feature introduced here: #1306

Currently, the full screen game preview functionality is triggered almost identically to the regular game preview, except it sets an additional cvar (in CryEdit.cpp) which is then read by the editor viewport and used to trigger a full screen preview. This isn't a great use of cvars, which are typically for developers to configure functionality (most typically debug functionality) and not for the different parts of the system to communicate with one another.

[FEATURE] Build API reference from CMake task/target

Is your feature request related to a problem? Please describe.
The O3DE website needs to host API reference. In addition, developers will likely want to generate their own API reference locally for faster lookup outside of Intellisense when crossing contexts. There's a number of other great things that this would enable!

Describe the solution you'd like
The addition of a CMake target which will generate API reference. The following are optional, but probably good future-proofing:

  • Target to build documentation only for code in enabled targets (enables Gem and Project API references)
  • O3DE Package for Doxygen 1.9.1
  • Cache value option to generate Doxygen XML output instead of / in addition to HTML output.

Describe alternatives you've considered

  • We have been manually generating API reference from a script. This is run approximately every 2 weeks on a Monday, during which an average PR velocity is probably at about ~150 merges.
  • Non-CMake alternatives such as a tools script. I think this is a poor solution because CMake has native Doxygen support.

Additional context

  • Required for the following on O3DE website:
    • Automated nightly builds
    • Up to date API reference
  • Enables the ability to write custom tools that consume Doxygen XML or HTML output. This could be used to extend the Editor in a number of meaningful ways, especially when we start generating API reference for other source types.
  • May be designed as part of an upcoming RFC describing structure for documentation embedded within the o3de repository itself.

Networking Milestone 2

Includes a list of networking features for delivery in Q2. Includes multiplayer asset cooking pipeline, additional work on entity replication later, a multiplayer component architecture, and local prediction support

Temporal anti-aliasing

Remaining tasks for this milestone include:

  • Subpixel camera jitter
  • Neighborhood rejection
  • Depth-based rejection

This work is assigned and in-progress.

Fix AZ_TRAIT_DISABLE_FAILED_DLL_TESTS and AZ_TRAIT_DISABLE_FAILED_MODULE_TESTS related unit tests for Linux

Remove AZ_TRAIT_DISABLE_FAILED_DLL_TESTS trait from Linux and fix unit test failures tagged by the trait.

If the test is not valid for linux, then leave the test disabled but wrap it with AZ_TRAIT_DISABLE_FAILED_DLL_TESTS and AZ_TRAIT_DISABLE_FAILED_MODULE_TESTS with an explanation of why it is not valid for the platform.

Acceptance Criteria:

  1. The following trait is removed from Lumberyard/Code/Framework/AzTest/AzTest/Platform/Linux/AzTest_Traits_Linux.h
 #define AZ_TRAIT_DISABLE_FAILED_DLL_TESTS true
...
 #define AZ_TRAIT_DISABLE_FAILED_MODULE_TESTS true
  1. Unit tests job passes for Linux
Lumberyard/Tools/build/JenkinsScripts/build>../../../../python/python.sh ci_build.py -p Linux -test_profile

Non-Windows Platform Unit Tests

Build and unit testing in pipeline jobs for Linux, Mac, iOS, Android, and Linux Server. This provides criteria and information for the development workflow and pull request acceptance.

Additional prefab workflows for Q2

This issue includes support re-parenting between different prefab instances by drag/drop in the Outliner, duplicating prefab instances, and detaching prefabs

Crash on launcher start up

Starting the AtomTest.GameLauncher will crash on start-up right after the gems have been loaded.

System: 
==================================================================
System: Trace::Assert
 /mnt/WorkHorse/p4/spectra/mainline/dev/Gems/Atom/RHI/Code/Source/RHI/Factory.cpp(75): (140261479442688) 'static AZ::RHI::Factory &AZ::RHI::Factory::Get()'
System: RHI::Factory is not connected to a platform. Call IsReady() to get the status of the platform. A null de-reference is imminent.
System: ------------------------------------------------
System: AZ::RHI::Factory::Get() (+0x2f) [0x7f9119ff350f]
System: AZ::RHI::RHISystem::InitDevice() (+0x19) [0x7f9119fa32b9]
System: AZ::RHI::RHISystem::Init(AZ::RHI::RHISystemDescriptor const&) (+0x1c) [0x7f9119fa2f4c]
System: AZ::RPI::RPISystem::Initialize(AZ::RPI::RPISystemDescriptor const&) (+0x20) [0x7f9119f82540]
System: AZ::RPI::RPISystemComponent::Activate() (+0x60) [0x7f9119700da0]
System: AZ::ModuleManager::ActivateEntities(AZStd::vector<AZStd::shared_ptr<AZ::ModuleDataImpl>, AZStd::allocator> const&) (+0x929) [0xe6c269]
System: AZ::ModuleManager::OnEntityActivated(AZ::EntityId const&) (+0xc7) [0xe6c5b7]
System: void AZ::Internal::EBusContainer<AZ::EntityEvents, AZ::EntityEvents, (AZ::EBusAddressPolicy)1, (AZ::EBusHandlerPolicy)1>::Dispatcher<AZ::EBus<AZ::EntityEvents, AZ::EntityEvents> >::Event<void (AZ::EntityEvents::*)(AZ::EntityId const&), AZ::EntityId&>(AZ::
System: AzFramework::Application::StartCommon(AZ::Entity*) (+0x3a) [0x7552aa]
System: AzGameFramework::GameApplication::StartCommon(AZ::Entity*) (+0x11) [0x42f681]
System: AzFramework::Application::Start(AZ::ComponentApplication::Descriptor const&, AZ::ComponentApplication::StartupParameters const&) (+0x2dc) [0x75523c]
System: LumberyardLauncher::Run(LumberyardLauncher::PlatformMainInfo const&) (+0x9f5) [0x4217a5]
System: main (+0x1d6) [0x422256]
System: __libc_start_main (+0xe7) [0x7f9127c5abf7]
System: _start (+0x2a) [0x41f4ca]
System: ==================================================================
Aborted

Linux Editor

Is your feature request related to a problem? Please describe
Currently, the AWS team is working on delivering the Linux server with client runtime to follow. To better support a wider range of development environments for creating games with O3DE, the editor should also available for Linux users.

Describe the solution you'd like
A Linux version of the editor, so that it is possible to create a game with the O3DE authoring tools on Linux workstations.

Input

Linux currently uses the unimplemented versions of input devices. Replace this with code that uses the input subsystem.

AC:
Client can receive input from mouse and keyboard

O3DE Known Issues List

Known Issues List

AI

Atom

Global Illumination and Reflections

Raytracing

Render Hardware Interface (RHI)

Character

Editor

Editor UI Canvas (LYShine)

Platforms

Prefabs

Scripting

Systems

NVIDIA Blast

NVIDIA Cloth

PhysX

Linux Client Runtime

Description

Linux support for O3DE includes three core capabilities: a dedicated server runtime, application client runtime, and editing tools. This issue specifically covers the tasks that are planned to support targeting a Linux client runtime.

Current status

The Vulkan RHI is currently disabled for Linux. The team is in the process of enabling this functionality to support the new Atom renderer. Additional tasks will implement native window and input functionality for Linux client applications built with O3DE.

Tasks

Assigned work

  • Investigate client asset processing on Linux
  • Enable Atom Vulkan RHI
  • Add Linux as a supported target platform in Asset Processor
  • Implement native window functionality, including full screen support, styles, and resizing
  • Add support for input on Linux client applications
  • Ensure compiled Project.GameLauncher crashes are resolved
  • Implement save data for Linux

Unassigned work

  • Fix failing native window tests for Linux
  • Fix failing input tests for Linux
  • Fix failing Atom RPI tests for Linux
  • Fix failing save data tests for Linux

Fix AZ_TRAIT_DISABLE_ASSET_JOB_PARALLEL_TESTS related unit tests for Linux

Remove AZ_TRAIT_DISABLE_ASSET_JOB_PARALLEL_TESTS trait from Linux and fix unit test failures tagged by the trait.

If the test is not valid for linux, then leave the test disabled but wrap it with AZ_TRAIT_DISABLE_ASSET_JOB_PARALLEL_TESTS with an explanation of why it is not valid for the platform.

Acceptance Criteria:

  1. The following trait is removed from Lumberyard/Code/Framework/AzTest/AzTest/Platform/Linux/AzTest_Traits_Linux.h
 #define AZ_TRAIT_DISABLE_ASSET_JOB_PARALLEL_TESTS true
  1. Unit tests job passes for Linux
Lumberyard/Tools/build/JenkinsScripts/build>../../../../python/python.sh ci_build.py -p Linux -test_profile

Non-uniform scale component

Updates the non-uniform scale component by changing the transform to use a single float for scale rather than vector3. The remaining work on this task includes updating internal functions and TrackView functionality to use a float.

Full screen game preview should not destroy and re-create the editor viewport widget

This is a follow up to the feature introduced here: #1306

Currently, the full screen game preview is accomplished by un-parenting the editor viewport widget from the main window, hiding the main window, and changing the dimensions of the editor viewport widget to take up the entire screen.

I was not able to figure out how to properly re-parent the editor viewport widget to the main window, so went the route of destroying the widget and re-creating it. This is somewhat slow and also complicates the editor viewport implementation, which previously assumed that it would be initialized only once, but now has to handle re-initialization.

Physics API for Q2

This issue captures a set of work related to the core physics API (AZPhysics) for O3DE. Includes conversion of primary physics components (character, rigid body, joints, force region, colliders) to the new physics API.

Enable EPOLL Implementation of TcpSocketManager for Linux

  • Currently the Linux implementation of TcpSocketManager is set to use the SELECT implementation
  • The EPOLL implementation on Linux is hanging on epoll_wait

There may be dropped events that occur before epoll_wait is called, causing a block on the thread. In order to handle large number of sockets, EPOLL is preferred over SELECT. We need to investigate and fix the epoll wait blocking issue in order to re-enable EPOLL for TCP+Linux.

Project-Centric build cmake configure error - could not find Packaging_windows.cmake

Following this guide:
https://docs.o3de.org/docs/welcome-guide/get-started/project-config/creating-projects-using-cli/

clone o3de commit d8bd6ef (main branch at time of writing)

Steps:

cd c:/code/o3de
./scripts/o3de.bat create-project --project-path "c:\code\SomeProject2"
./scripts/o3de.bat register -p "c:\code\SomeProject2"
cd ../SomeProject2
cmake.exe -B build -S . -G "Visual Studio 16 2019" -DLY_3RDPARTY_PATH="c:\o3de-3p\3rdParty" -DLY_UNITY_BUILD=ON

cmake version is 3.19.1

I get the following:

-- The C compiler identification is MSVC 19.28.29337.0
-- The CXX compiler identification is MSVC 19.28.29337.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.28.29333/bin/Hostx64/x64/cl.exe - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.28.29333/bin/Hostx64/x64/cl.exe - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- o3de_manifest_name: alt
-- default_engines_folder: C:/Users/alt/.o3de/Engines
-- default_projects_folder: C:/Users/alt/.o3de/Projects
-- default_gems_folder: C:/Users/alt/.o3de/Gems
-- default_templates_folder: C:/Users/alt/.o3de/Templates
-- default_restricted_folder: C:/Users/alt/.o3de/Restricted
-- Found engine: 'o3de' at C:/code/o3de
-- O3DE Project Name: SomeProject2
-- O3DE Project Path: C:/code/SomeProject2
-- O3DE Project Restricted Path: C:/Users/alt/.o3de/Projects/Restricted
-- O3DE Engine Name: o3de
-- O3DE Engine Path: C:/code/o3de
-- O3DE Engine Restricted Path: C:/Users/alt/.o3de/Restricted
-- Using Windows target SDK 10.0.18362.0
-- Using package C:/o3de-3p/3rdParty/packages/qt-5.15.2-rev2-windows
-- Using package C:/code/o3de/python/runtime/python-3.7.10-rev1-windows
-- Using Python 3.7.10 at C:/code/o3de/python/runtime/python-3.7.10-rev1-windows/python/python.exe
-- Python: Getting/Checking packages listed in C:/code/o3de/python/requirements.txt
-- Python: Getting/Checking packages listed in C:/code/o3de/python/requirements.txt - New packages were installed
-- Python: linking C:/code/o3de/Tools/LyTestTools into python site-packages...
-- Python: linking C:/code/o3de/Tools/RemoteConsole/ly_remote_console into python site-packages...
-- Python: linking C:/code/o3de/AutomatedTesting/Gem/PythonTests/EditorPythonTestTools into python site-packages...
-- Using package C:/o3de-3p/3rdParty/packages/expat-2.1.0-multiplatform
-- Using package C:/o3de-3p/3rdParty/packages/lz4-r128-multiplatform
-- Using package C:/o3de-3p/3rdParty/packages/md5-2.0-multiplatform
-- Using package C:/o3de-3p/3rdParty/packages/tiff-4.2.0.14-windows
-- Using package C:/o3de-3p/3rdParty/packages/zlib-1.2.8-rev2-multiplatform
-- Using package C:/o3de-3p/3rdParty/packages/zstd-1.35-multiplatform
-- Using package C:/o3de-3p/3rdParty/packages/RapidJSON-1.1.0-multiplatform
-- Using package C:/o3de-3p/3rdParty/packages/Lua-5.3.5-rev5-windows
-- Using package C:/o3de-3p/3rdParty/packages/RapidXML-1.13-multiplatform
-- Using package C:/o3de-3p/3rdParty/packages/cityhash-1.1-multiplatform
-- Using package C:/o3de-3p/3rdParty/packages/googletest-1.8.1-rev4-windows
-- Using package C:/o3de-3p/3rdParty/packages/googlebenchmark-1.5.0-rev2-windows
-- Using package C:/o3de-3p/3rdParty/packages/SQLite-3.32.2-rev3-multiplatform
-- Using package C:/o3de-3p/3rdParty/packages/OpenSSL-1.1.1b-rev2-windows
-- Using package C:/o3de-3p/3rdParty/packages/squish-ccr-20150601-rev3-multiplatform
-- Using package C:/o3de-3p/3rdParty/packages/AWSNativeSDK-1.7.167-rev3-windows
-- Using package C:/o3de-3p/3rdParty/packages/assimp-5.0.1-rev7-multiplatform
-- Python: linking C:/o3de-3p/3rdParty/packages/assimp-5.0.1-rev7-multiplatform/assimp/port/PyAssimp into python site-packages...
-- Using package C:/o3de-3p/3rdParty/packages/xxhash-0.7.4-rev1-multiplatform
-- Using package C:/o3de-3p/3rdParty/packages/Crashpad-0.8.0-rev1-windows
-- Using package C:/o3de-3p/3rdParty/packages/pybind11-2.4.3-rev2-multiplatform
-- Using package C:/o3de-3p/3rdParty/packages/pyside2-qt-5.15.1-rev2-windows
-- Using package C:/o3de-3p/3rdParty/packages/etc2comp-9cd0f9cae0-rev1-windows
-- Using package C:/o3de-3p/3rdParty/packages/PVRTexTool-4.24.0-rev4-multiplatform
-- Using package C:/o3de-3p/3rdParty/packages/ilmbase-2.3.0-rev4-multiplatform
-- Using package C:/o3de-3p/3rdParty/packages/ASTCEncoder-2017_11_14-rev2-multiplatform
-- Downloading package into C:/o3de-3p/3rdParty/packages/mcpp-2.7.2_az.1-rev1-windows
'C:/o3de-3p/3rdParty/CMake/3.19.1/bin/cmake.exe' '-E' 'tar' 'xf' 'C:/o3de-3p/3rdParty/downloaded_packages/mcpp-2.7.2_az.1-rev1-windows.tar.xz'
-- Installed And Validated package at C:/o3de-3p/3rdParty/packages/mcpp-2.7.2_az.1-rev1-windows - OK
-- Using package C:/o3de-3p/3rdParty/packages/mcpp-2.7.2_az.1-rev1-windows
-- Downloading package into C:/o3de-3p/3rdParty/packages/DirectXShaderCompiler-1.6.2104-o3de-rev1-windows
'C:/o3de-3p/3rdParty/CMake/3.19.1/bin/cmake.exe' '-E' 'tar' 'xf' 'C:/o3de-3p/3rdParty/downloaded_packages/DirectXShaderCompiler-1.6.2104-o3de-rev1-windows.tar.xz'
-- Installed And Validated package at C:/o3de-3p/3rdParty/packages/DirectXShaderCompiler-1.6.2104-o3de-rev1-windows - OK
-- Using package C:/o3de-3p/3rdParty/packages/DirectXShaderCompiler-1.6.2104-o3de-rev1-windows
-- Using package C:/o3de-3p/3rdParty/packages/SPIRVCross-2020.04.20-rev1-multiplatform
-- Downloading package into C:/o3de-3p/3rdParty/packages/azslc-1.7.21-rev1-multiplatform
'C:/o3de-3p/3rdParty/CMake/3.19.1/bin/cmake.exe' '-E' 'tar' 'xf' 'C:/o3de-3p/3rdParty/downloaded_packages/azslc-1.7.21-rev1-multiplatform.tar.xz'
-- Installed And Validated package at C:/o3de-3p/3rdParty/packages/azslc-1.7.21-rev1-multiplatform - OK
-- Using package C:/o3de-3p/3rdParty/packages/azslc-1.7.21-rev1-multiplatform
-- Using package C:/o3de-3p/3rdParty/packages/lux_core-2.2-rev5-multiplatform
-- Using package C:/o3de-3p/3rdParty/packages/d3dx12-headers-rev1-windows
-- Using package C:/o3de-3p/3rdParty/packages/freetype-2.10.4.14-windows
-- Python: Getting/Checking packages listed in C:/code/o3de/Gems/AtomLyIntegration/TechnicalArt/DccScriptingInterface/requirements.txt
-- Python: Getting/Checking packages listed in C:/code/o3de/Gems/AtomLyIntegration/TechnicalArt/DccScriptingInterface/requirements.txt - New packages were installed
-- Wwise SDK version 2021.1.1.7601 was not found.
-- ** Update the LY_WWISE_INSTALL_PATH cache variable if you intend to use Wwise.
-- Using package C:/o3de-3p/3rdParty/packages/Blast-1.1.7-rev1-multiplatform
-- Using package C:/o3de-3p/3rdParty/packages/PhysX-4.1.0.25992954-rev1-windows
-- Found OpenGL: opengl32
-- Using package C:/o3de-3p/3rdParty/packages/libsamplerate-0.2.1-rev2-windows
-- Using package C:/o3de-3p/3rdParty/packages/NvCloth-1.1.6-rev1-multiplatform
-- Using package C:/o3de-3p/3rdParty/packages/poly2tri-0.3.3-rev2-multiplatform
-- Using package C:/o3de-3p/3rdParty/packages/v-hacd-2.0-rev1-multiplatform
-- Python: linking C:/o3de-3p/3rdParty/packages/pyside2-qt-5.15.1-rev2-windows/pyside2 into python site-packages...
-- Using package C:/o3de-3p/3rdParty/packages/mikkelsen-1.0.0.4-windows
-- Using package C:/o3de-3p/3rdParty/packages/ISPCTexComp-2021.3-rev1-windows
-- Using package C:/o3de-3p/3rdParty/packages/openimageio-2.1.16.0-rev2-windows
-- Using package C:/o3de-3p/3rdParty/packages/civetweb-1.8-rev1-windows
-- Using package C:/o3de-3p/3rdParty/packages/OpenMesh-8.1-rev1-windows
CMake Error at C:/code/o3de/cmake/Packaging.cmake:44 (include):
  include could not find load file:

    C:/code/SomeProject2/cmake/Platform/Windows/Packaging_windows.cmake
Call Stack (most recent call first):
  C:/code/o3de/CMakeLists.txt:153 (include)


-- Configuring incomplete, errors occurred!
See also "C:/code/SomeProject2/build/CMakeFiles/CMakeOutput.log".

Seems like it's trying to reference
C:/code/SomeProject2/cmake/Platform/Windows/Packaging_windows.cmake
when it should be referenceing
C:/code/o3de/cmake/Platform/Windows/Packaging_windows.cmake

Perspective displays empty gray slate when creating a new project

Using the latest 0.5 as of AM 6/2/21

Followed the tutorial in Welcome Guide - Creating Projects Using the CLI.

Configure step worked.
Build step worked.
Waited for all assets to process.
Ran the editor with --project-path.

Perspective displays nothing. It's a blank gray slate. I cannot place anything, and there is no right click context menu.

GPUs seem correctly identified:

Logging video adapters:
- NVIDIA GeForce RTX 2080 with Max-Q Design (vendor = 0x10de, device = 0x1e90)
  - Adapter index: 0
  - Dedicated video memory: 8010 MB
  - Feature level: DX11 (SM 5.0)
  - Displays connected: yes
  - Suitable rendering device: yes
- Intel(R) UHD Graphics 630 (vendor = 0x8086, device = 0x3e9b)
  - Adapter index: 1
  - Dedicated video memory: 128 MB
  - Feature level: DX11 (SM 5.0)
  - Displays connected: yes
  - Suitable rendering device: yes
- Microsoft Basic Render Driver (vendor = 0x1414, device = 0x008c)
  - Adapter index: 2
  - Dedicated video memory: 0 MB
  - Feature level: DX11 (SM 5.0)
  - Displays connected: no
  - Suitable rendering device: no

Additional console output

(EngineModule_CryRenderer) - Initializing RenderOther...
Loading DLL: CryRenderOther.dll
CRenderer sizeof(Vec2f16)=4 sizeof(Vec3f16)=8
Initializing CryRenderOther done, MemUsage=2164Kb
Init Shaders
Init textures management (0 Mb of video memory is available)...
  Enabling of textures streaming...
  Using 512 Mb of textures pool for streaming...
  Video textures: Atlas clouds max size: 24 Mb
  Video textures: Dynamic managed max size: 80 Mb
  Reloading all textures...
  Finished reloading textures...
  Finished initializing textures streaming...
Initializing 3D Engine
(EngineModule_Cry3DEngine) - Initializing 3DEngine...
Loading DLL: Cry3DEngine.dll
Sky light: Optical lookup tables loaded off disc.
Initializing Cry3DEngine done, MemUsage=1908Kb
Initializing additional systems
failed to find CVar: ca_DrawChr
failed to find CVar: profile
failed to find CVar: r_showmt
[CVARS]: [DUPLICATE] CXConsole::RegisterString(const char*): variable [t_Scale] is already registered
[CVARS]: [DUPLICATE] CXConsole::RegisterString(const char*): variable [sys_PakWarnOnPakAccessFailures] is already registered
[CVARS]: [DUPLICATE] CXConsole::RegisterString(const char*): variable [sys_PakMessageInvalidFileAccess] is already registered
[CVARS]: [DUPLICATE] CXConsole::RegisterString(const char*): variable [sys_report_files_not_found_in_paks] is already registered
[Error] [CVARS]: [MISSING] [mfx_Timeout] is not a registered console variable; referenced when testing console variable group [sys_spec_gameeffects] = [8]
[Error] [CVARS]: [MISSING] [ca_AttachmentCullingRation] is not a registered console variable; referenced when testing console variable group [sys_spec_objectdetail] = [8]
[Error] [CVARS]: [MISSING] [e_MergedMeshesInstanceDist] is not a registered console variable; referenced when testing console variable group [sys_spec_objectdetail] = [8]
[Error] [CVARS]: [MISSING] [e_MergedMeshesPool] is not a registered console variable; referenced when testing console variable group [sys_spec_objectdetail] = [8]
[Error] [CVARS]: [MISSING] [e_TerrainLodRatio] is not a registered console variable; referenced when testing console variable group [sys_spec_objectdetail] = [8]
[Error] [CVARS]: [MISSING] [e_ViewDistRatioVegetation] is not a registered console variable; referenced when testing console variable group [sys_spec_objectdetail] = [8]
[Error] [CVARS]: [MISSING] [e_ProcVegetation] is not a registered console variable; referenced when testing console variable group [sys_spec_objectdetail] = [8]
[Error] [CVARS]: [MISSING] [e_VegetationMinSize] is not a registered console variable; referenced when testing console variable group [sys_spec_objectdetail] = [8]
[Error] [CVARS]: [MISSING] [es_DebrisLifetimeScale] is not a registered console variable; referenced when testing console variable group [sys_spec_objectdetail] = [8]
[Error] [CVARS]: [MISSING] [e_ParticlesMaxScreenFill] is not a registered console variable; referenced when testing console variable group [sys_spec_particles] = [8]
[Error] [CVARS]: [MISSING] [e_ParticlesMotionBlur] is not a registered console variable; referenced when testing console variable group [sys_spec_particles] = [8]
[Error] [CVARS]: [MISSING] [e_ParticlesQuality] is not a registered console variable; referenced when testing console variable group [sys_spec_particles] = [8]
[Error] [CVARS]: [MISSING] [e_ParticlesGI] is not a registered console variable; referenced when testing console variable group [sys_spec_particles] = [8]
[Error] [CVARS]: [MISSING] [e_ParticlesMinDrawPixels] is not a registered console variable; referenced when testing console variable group [sys_spec_particles] = [8]
[Error] [CVARS]: [MISSING] [e_ParticlesObjectCollisions] is not a registered console variable; referenced when testing console variable group [sys_spec_particles] = [8]
[Error] [CVARS]: [MISSING] [e_ParticlesPoolSize] is not a registered console variable; referenced when testing console variable group [sys_spec_particles] = [8]
[Error] [CVARS]: [MISSING] [e_ParticlesPreload] is not a registered console variable; referenced when testing console variable group [sys_spec_particles] = [8]
[Error] [CVARS]: [MISSING] [e_ParticlesSortQuality] is not a registered console variable; referenced when testing console variable group [sys_spec_particles] = [8]
[Error] [CVARS]: [MISSING] [es_MaxPhysDist] is not a registered console variable; referenced when testing console variable group [sys_spec_physics] = [8]
[Error] [CVARS]: [MISSING] [es_MaxPhysDistInvisible] is not a registered console variable; referenced when testing console variable group [sys_spec_physics] = [8]
[Error] [CVARS]: [MISSING] [g_breakage_mem_limit] is not a registered console variable; referenced when testing console variable group [sys_spec_physics] = [8]
[Error] [CVARS]: [MISSING] [g_breakage_particles_limit] is not a registered console variable; referenced when testing console variable group [sys_spec_physics] = [8]
[Error] [CVARS]: [MISSING] [g_no_secondary_breaking] is not a registered console variable; referenced when testing console variable group [sys_spec_physics] = [8]
[Error] [CVARS]: [MISSING] [g_tree_cut_reuse_dist] is not a registered console variable; referenced when testing console variable group [sys_spec_physics] = [8]
[Error] [CVARS]: [MISSING] [p_gravity_z] is not a registered console variable; referenced when testing console variable group [sys_spec_physics] = [8]
[Error] [CVARS]: [MISSING] [p_max_MC_iters] is not a registered console variable; referenced when testing console variable group [sys_spec_physics] = [8]
[Error] [CVARS]: [MISSING] [p_max_entity_cells] is not a registered console variable; referenced when testing console variable group [sys_spec_physics] = [8]
[Error] [CVARS]: [MISSING] [p_max_object_splashes] is not a registered console variable; referenced when testing console variable group [sys_spec_physics] = [8]
[Error] [CVARS]: [MISSING] [p_max_substeps] is not a registered console variable; referenced when testing console variable group [sys_spec_physics] = [8]
[Error] [CVARS]: [MISSING] [p_max_substeps_large_group] is not a registered console variable; referenced when testing console variable group [sys_spec_physics] = [8]
[Error] [CVARS]: [MISSING] [p_num_bodies_large_group] is not a registered console variable; referenced when testing console variable group [sys_spec_physics] = [8]
[Error] [CVARS]: [MISSING] [p_splash_dist0] is not a registered console variable; referenced when testing console variable group [sys_spec_physics] = [8]
[Error] [CVARS]: [MISSING] [p_splash_dist1] is not a registered console variable; referenced when testing console variable group [sys_spec_physics] = [8]
[Error] [CVARS]: [MISSING] [p_splash_force0] is not a registered console variable; referenced when testing console variable group [sys_spec_physics] = [8]
[Error] [CVARS]: [MISSING] [p_splash_force1] is not a registered console variable; referenced when testing console variable group [sys_spec_physics] = [8]
[Error] [CVARS]: [MISSING] [p_splash_vel0] is not a registered console variable; referenced when testing console variable group [sys_spec_physics] = [8]
[Error] [CVARS]: [MISSING] [p_splash_vel1] is not a registered console variable; referenced when testing console variable group [sys_spec_physics] = [8]
[Error] [CVARS]: [MISSING] [mfx_Timeout] is not a registered console variable; referenced when testing console variable group [sys_spec_gameeffects] = [8]
[Error] [CVARS]: [MISSING] [ca_AttachmentCullingRation] is not a registered console variable; referenced when testing console variable group [sys_spec_objectdetail] = [8]
[Error] [CVARS]: [MISSING] [e_MergedMeshesInstanceDist] is not a registered console variable; referenced when testing console variable group [sys_spec_objectdetail] = [8]
[Error] [CVARS]: [MISSING] [e_MergedMeshesPool] is not a registered console variable; referenced when testing console variable group [sys_spec_objectdetail] = [8]
[Error] [CVARS]: [MISSING] [e_TerrainLodRatio] is not a registered console variable; referenced when testing console variable group [sys_spec_objectdetail] = [8]
[Error] [CVARS]: [MISSING] [e_ViewDistRatioVegetation] is not a registered console variable; referenced when testing console variable group [sys_spec_objectdetail] = [8]
[Error] [CVARS]: [MISSING] [e_ProcVegetation] is not a registered console variable; referenced when testing console variable group [sys_spec_objectdetail] = [8]
[Error] [CVARS]: [MISSING] [e_VegetationMinSize] is not a registered console variable; referenced when testing console variable group [sys_spec_objectdetail] = [8]
[Error] [CVARS]: [MISSING] [es_DebrisLifetimeScale] is not a registered console variable; referenced when testing console variable group [sys_spec_objectdetail] = [8]
[Error] [CVARS]: [MISSING] [e_ParticlesMaxScreenFill] is not a registered console variable; referenced when testing console variable group [sys_spec_particles] = [8]
[Error] [CVARS]: [MISSING] [e_ParticlesMotionBlur] is not a registered console variable; referenced when testing console variable group [sys_spec_particles] = [8]
[Error] [CVARS]: [MISSING] [e_ParticlesQuality] is not a registered console variable; referenced when testing console variable group [sys_spec_particles] = [8]
[Error] [CVARS]: [MISSING] [e_ParticlesGI] is not a registered console variable; referenced when testing console variable group [sys_spec_particles] = [8]
[Error] [CVARS]: [MISSING] [e_ParticlesMinDrawPixels] is not a registered console variable; referenced when testing console variable group [sys_spec_particles] = [8]
[Error] [CVARS]: [MISSING] [e_ParticlesObjectCollisions] is not a registered console variable; referenced when testing console variable group [sys_spec_particles] = [8]
[Error] [CVARS]: [MISSING] [e_ParticlesPoolSize] is not a registered console variable; referenced when testing console variable group [sys_spec_particles] = [8]
[Error] [CVARS]: [MISSING] [e_ParticlesPreload] is not a registered console variable; referenced when testing console variable group [sys_spec_particles] = [8]
[Error] [CVARS]: [MISSING] [e_ParticlesSortQuality] is not a registered console variable; referenced when testing console variable group [sys_spec_particles] = [8]
[Error] [CVARS]: [MISSING] [es_MaxPhysDist] is not a registered console variable; referenced when testing console variable group [sys_spec_physics] = [8]
[Error] [CVARS]: [MISSING] [es_MaxPhysDistInvisible] is not a registered console variable; referenced when testing console variable group [sys_spec_physics] = [8]
[Error] [CVARS]: [MISSING] [g_breakage_mem_limit] is not a registered console variable; referenced when testing console variable group [sys_spec_physics] = [8]
[Error] [CVARS]: [MISSING] [g_breakage_particles_limit] is not a registered console variable; referenced when testing console variable group [sys_spec_physics] = [8]
[Error] [CVARS]: [MISSING] [g_no_secondary_breaking] is not a registered console variable; referenced when testing console variable group [sys_spec_physics] = [8]
[Error] [CVARS]: [MISSING] [g_tree_cut_reuse_dist] is not a registered console variable; referenced when testing console variable group [sys_spec_physics] = [8]
[Error] [CVARS]: [MISSING] [p_gravity_z] is not a registered console variable; referenced when testing console variable group [sys_spec_physics] = [8]
[Error] [CVARS]: [MISSING] [p_max_MC_iters] is not a registered console variable; referenced when testing console variable group [sys_spec_physics] = [8]
[Error] [CVARS]: [MISSING] [p_max_entity_cells] is not a registered console variable; referenced when testing console variable group [sys_spec_physics] = [8]
[Error] [CVARS]: [MISSING] [p_max_object_splashes] is not a registered console variable; referenced when testing console variable group [sys_spec_physics] = [8]
[Error] [CVARS]: [MISSING] [p_max_substeps] is not a registered console variable; referenced when testing console variable group [sys_spec_physics] = [8]
[Error] [CVARS]: [MISSING] [p_max_substeps_large_group] is not a registered console variable; referenced when testing console variable group [sys_spec_physics] = [8]
[Error] [CVARS]: [MISSING] [p_num_bodies_large_group] is not a registered console variable; referenced when testing console variable group [sys_spec_physics] = [8]
[Error] [CVARS]: [MISSING] [p_splash_dist0] is not a registered console variable; referenced when testing console variable group [sys_spec_physics] = [8]
[Error] [CVARS]: [MISSING] [p_splash_dist1] is not a registered console variable; referenced when testing console variable group [sys_spec_physics] = [8]
[Error] [CVARS]: [MISSING] [p_splash_force0] is not a registered console variable; referenced when testing console variable group [sys_spec_physics] = [8]
[Error] [CVARS]: [MISSING] [p_splash_force1] is not a registered console variable; referenced when testing console variable group [sys_spec_physics] = [8]
[Error] [CVARS]: [MISSING] [p_splash_vel0] is not a registered console variable; referenced when testing console variable group [sys_spec_physics] = [8]
[Error] [CVARS]: [MISSING] [p_splash_vel1] is not a registered console variable; referenced when testing console variable group [sys_spec_physics] = [8]
[Error] [CVARS]: [MISSING] [e_TerrainAo] is not a registered console variable; referenced when testing console variable group [sys_spec_shading] = [8]
[Error] [CVARS]: [MISSING] [e_VegetationUseTerrainColor] is not a registered console variable; referenced when testing console variable group [sys_spec_shading] = [8]
[Error] [CVARS]: [MISSING] [e_ParticlesShadows] is not a registered console variable; referenced when testing console variable group [sys_spec_shadows] = [8]
[Error] [CVARS]: [MISSING] [e_TerrainTextureStreamingPoolItemsNum] is not a registered console variable; referenced when testing console variable group [sys_spec_texture] = [8]
Loading Config file pc_veryhigh.cfg (D:/O3DE/KitchenSInk/Cache/pc/config/spec/pc_veryhigh.cfg)
Current display mode is 3440x1440x32, (Unknown graphics card)
Executing console batch file (try game,config,root): "user.cfg" found in game/config/ ...
(RHI) - ****************************************************************
(RHI) -                     Registering dx12 RHI
(RHI) - ****************************************************************
([Shaders System]) - Textures Manager - allocating default resources
[Warning] (AssetManager) - GetAsset called for asset which does not exist in asset catalog and cannot be loaded.  Asset may be missing, not processed or moved.  AssetId: {CFED46A4-83E7-5616-B3BB-4BB218927804}:3e8
[Warning] (AssetContainer) - Error loading asset {CFED46A4-83E7-5616-B3BB-4BB218927804}:3e8

O3DE Installer - Packaging and installation tool

Compiling the O3DE engine from source code is a lengthy process and requires knowledge of git, cmake, and other CLI tools. This feature produces an installer for O3DE that allows you to download and install a compiled version of the engine.

Fix AZ_TRAIT_DISABLE_FAILED_PROCESS_LAUNCHER_TESTS related unit tests for Linux

Remove AZ_TRAIT_DISABLE_FAILED_PROCESS_LAUNCHER_TESTS trait from Linux and fix unit test failures tagged by the trait.

If the test is not valid for linux, then leave the test disabled but wrap it with AZ_TRAIT_DISABLE_FAILED_PROCESS_LAUNCHER_TESTS with an explanation of why it is not valid for the platform.

Acceptance Criteria:

  1. The following trait is removed from Lumberyard/Code/Framework/AzTest/AzTest/Platform/Linux/AzTest_Traits_Linux.h
 #define AZ_TRAIT_DISABLE_FAILED_PROCESS_LAUNCHER_TESTS true
  1. Unit tests job passes for Linux
Lumberyard/Tools/build/JenkinsScripts/build>../../../../python/python.sh ci_build.py -p Linux -test_profile

[Epic] Physics material system and workflow

This work encompasses a set of physics material system and workflow tasks, including functionality that physics assets import correctly, physics colliders use the material library assigned to them from the physics configuration, and a default physics material library is set to projects in PhysX configuration.

[Project Manager] User wants to be able to type directly on the "Location" text field

Describe the bug:
(Feedback from the walk the engine session with a customer)

When creating a project in the Project Manager, when user types in a new project name, the "Location" text field below doesn't change its folder name to be the same as the project name user enters above. When users click on the "Location" field intended to type in the folder name, it doesn't nothing either. User has to click on the folder icon to trigger the window's folder selection dialog.

Expected behavior/Acceptance criteria:

  1. User expected that when changing the project name, they would see the folder name is changed with the same name automatically.
  2. If the folder name for some reason already exists in the directory, the text field can change to red for error handling.
  3. When clicking on the "Location" text field, it should allow user to type in directly. instead of doing nothing.

To reproduce

  1. go through the regular creating a project workflow on Project Manager
  2. change the project name to something else.
  3. see the folder name still stays the same as the default project name from before.

[Epic] Hair

Encompasses first milestone of hair deliverables, including:

  • Collision handling (excl. mesh skinning)
  • MVP for hair lighting
  • Simulation implementation
  • Actor bone mapping + connecting bone matrices to hair
  • Add render and simulation setting to hair component

Asset Processor Autotmated Tests fail on clean build

RC.EXE was deprecated, so no longer is created, but some of the automated tests still rely on its presence. They don't actually use it, but they do run parts of the code that will fail if the executable is not around.

To reproduce:

  • Delete RC.EXE from any bin/profile or bin/debug folders or clean build
  • Build/run the AssetProcessor.Test target (which runs auto tests).

Expected behavior: Tests all pass
Actual behavior: many, many tests fail.

For example UnitTestForGettingJobInfoBySourceUUIDSuccess

Root cause:

D:/workspace/o3de/Code/Tools/AssetProcessor/native/tests/assetmanager/AssetProcessorManagerTest.cpp(251): error: Value of: m_mockApplicationManager->RegisterAssetRecognizerAsBuilder(rec)
[2021-05-06T20:12:13.591Z]   Actual: false
[2021-05-06T20:12:13.591Z] Expected: true
[2021-05-06T20:12:13.591Z] [  FAILED  ]

RegisterAssetRecognizerAsBuilder runs Initialize on the RCBuilder, which wont work unless RC.EXE is present.

Large assets in Gems/AtomLyIntegration/CommonFeatures/Assets/Objects

Gems/AtomLyIntegration/CommonFeatures/Assets/Ojects has a few very large files and what look to be a lot of work in progress files for 3rd Party applications. Some of these assets can take a very long time to process.

Noteable assets:
.wip/bake_channels.psd 1.2GB
.wip/high.fbx 126MB
.wip/marmoset_bake.obscene 291MB
.wip/Brass 538MB
.wip/stone 603 MB
Lucy_High.fbx 146MB
There are also several very large 16bpc textures in this directory.

Fix AZ_TRAIT_DISABLE_FAILED_ASSET_PROCESSOR_TESTS related unit tests from Linux

Remove AZ_TRAIT_DISABLE_FAILED_ASSET_PROCESSOR_TESTS trait from Linux and fix unit test failures tagged by the trait.

If the test is not valid for linux, then leave the test disabled but wrap it with AZ_TRAIT_DISABLE_FAILED_ASSET_PROCESSOR_TESTS with an explanation of why it is not valid for the platform.

Acceptance Criteria:

  1. The following trait is removed from Lumberyard/Code/Framework/AzTest/AzTest/Platform/Linux/AzTest_Traits_Linux.h
 #define AZ_TRAIT_DISABLE_FAILED_ASSET_PROCESSOR_TESTS true
  1. Unit tests job passes for Linux
Lumberyard/Tools/build/JenkinsScripts/build>../../../../python/python.sh ci_build.py -p Linux -test_profile

[Epic] Mobile render pipeline

Render pipeline dedicated for mobile devices that supports standard feature sets; optimizes pass for performance and low battery consumption

Basic prefab workflows

Adds basic prefab functionality to the editor. Users are able to create, instantiate, and remove prefabs, as well as edit the entities that are contained within a prefab.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.