* Fixed all Tests.
* Fixed tests stdout redirection
* Changed return code for failed tests to be 0xF
* Small improvements on automated testing code
* Created Periodic test suite and moved tests
* Made physics main to only have one test for now
* Renamed all tests to have leading AutomatedTesting::
* renaming and organizing files
* removed unused files
* Removing unnecessary file
* moved file
* reverting movement of 3rdparty associations from gems to global
* removing unnecessary calls to ly_add_external_target_path
* fixing install prefix of ci_build
* Fixes to get 3rdparties declared in gems to be installed
* Allowing to install just one configuration
* Adding empty line at the end
* removing commented code
* setting IMPORETD_LOCATION_<CONFIG> and defaulting IMPORTED_LOCATION to the profile config in case other configs are not installed
* putting dlls/exe in the right place, with the right output subdirectory
* setting runtime dependencies for the dlls that we link against
* singular target location
* code review comments/fixes
* Fixing identation
- Reexport cloth assets with AssImp ON. These was necessary because AssImp collects a different name for the color streams than FbxSDK and therefore they needed to be reassigned in the cloth rule.
- Adding '_optimized' string to a global variable and using StringFunc RChop to remove it for a string.
The actual bug was the "if (!m_engine)" early-out in CreateInstanceNode that needed to be removed, but all the rest of this legacy-based merged mesh code was ripe for removal as well.
- Fixing cloth working with Actors by reading directly from ModelAsset instead from EMFX Mesh.
- Actor caches map from joint indices in skin metadata to skeleton indices so they can be query later.
- Actor cloth skinning reads indices and weights from Model Asset instead from EMFX Mesh.
- Actor cloth skinning with unlimited skinning bones.
- Sort out cloth unit tests by disabling them until there is a way to create an Atom mesh
- Addressing feedback.
1. Add support to use engine python runtime environment. Ideally we should use project executable directory which contains required qt binaries after build. But currently Qt plugins are not put under proper subdirectory which causes huge overhead of loading plugin binaries (see details in this jira https://jira.agscollab.com/browse/LYN-2669 ). The temporary solution is to use AWSCore.Editor target to create a subdirectory for our use case.
2. **Minor Fix** After migrating to engine python environment, see boto3 warning while using debug mode, seems like a existing issue for a long time https://github.com/boto/boto3/issues/454. Register a after call event to close connection
3. **Minor Fix** After migrating to engine python environment, see Qt multithread warning while using debug mode, change direct setter function call to qt signal
We were using the first Atom mesh to check for morph target buffers by getting access to the buffer asset from the buffer asset view. This won't work for models with multiple meshes while the first mesh is not morphed.