Increasing the cab file compression lowers the total windows installer size by another 0.4 GB in its current form at the traded cost of on a few extra minutes (~5 vs ~10 min on an i7-4790k) to generate them.
Additionally, upping the max pre-compression cab file size to 350 MB (from 200 MB) lowers the total number of files by nearly half while still maintaining a reasonable per-cab files size post-compression.
* Fixes saving motions from within the Animation Editor
* Fixes saving actors from within the Animation Editor
* The motion event chunk of the .motion file format now also stores the event data as json (rather than XML) reducing motion file sizes (Example: 60KB motion went down to 49KB, containing only 4 motion events from 2 tracks).
* Fully backward compatible
* New motion meta data rule stores the event data directly rather than command strings or objects. This is the way that aligns with the Json paradigm and as side-effect bypasses the optionals that we use for the commands which fixes the issue.
* [LYN-4574] Adding new motion event meta data rule that stores the event data directly rather than via commands to align with the Json paradigm
* [LYN-4574] Preparing motion, event table and event track for Json serialization
* [LYN-4574] New chunk to store motion event data in Json format (fully backward compatible to XML)
* [LYN-4669] Json: Empty AZStd::vector<AZStd::shared_ptr<T>> serializes into 1x element with nullptr as data
* [LYN-4603] EMotion FX: Cannot save actors with physics or simulated object setup in Json format
This prevents Project build step from timing out
Moving the project build directory to be under the <project-path>/build/ folder to prevent two issues
1. The AssetProcessor from scanning that folder for assets.
[Bb]uild is part of the excluded folders
2. To prevent git from seeing modified files in the build directory as
the default .gitignore file ignores [Bb]uild
Adding a factor for alpha affecting specular in the standard and enhanced pbr materials (#1474)
* Adding a factor for how much alpha should affect specular to standard and enhanced pbr. Currently blended and tinted transparency always assume that the geometry represents the surface, and the surface may just be transparent like glass. In this model, specular is unnaffected by alpha - perfectly clear glass still reflects light and obeys the Fresnel factor. However alpha may also represent the absence of a surface entirely for mateirals where cut-out alpha is a bad fit because of subpixel detail, like hair or cob webs. This change addresses that by allowing the alpha to also affect specular reflection if desired.
* Adding material for ASV test.
Currently, the first time a raycast is attempted for a model, the raycast will fail and the model's kdtree will asynchronously get built. This breaks the vegetation system, which expects the queries to always work. This adds in a brute-force fallback for use while the kdtree is building. However, other use cases like the Editor mouse cursor selection raycast still should get the current "silent failure" behavior, because otherwise the Editor will lock up for several seconds the first time the mouse moves over an extremely complex model.
Actor motion extraction applies at all times, sending transform change events to the Qt widget and overwriting any editing the user is doing. (LY-124903)
When Wwise Gem is not enabled, this will fix a nullptr deref crash when
interacting with Audio Controls Editor.
Also fixes another issue in the same function where getting the current
level name was garbage because a temporary QString was created and
immediately destructed.
* [LYN-3099] Fix vegetation raycasts to use bounded ray queries instead of FLT_MAX.
Raycasts with a distance of FLT_MAX sometimes overflowed deep in IntersectSegmentTriangleCCW, so it's better to have strict start/end positional queries. We have specific starts and ends anyways, so it's a safer approach anyways.
This also adds support for Non-Uniform Scale for meshes, since it was clearly not working correctly in vegetation when testing various scaled meshes.
* Addressed PR feedback
* Fix for DeleteCachedAssets_AssetsReprocessed fails on Debug Nightly Builds
* added -ap_disableAssetTreeView=true to disable the Qt tree view for the asset tab to get the parts that want to be tested finish
* only shows up on Debug
Tests:
=== test session starts ===
AutomatedTesting/Gem/PythonTests/assetpipeline/asset_processor_tests/asset_processor_batch_tests_2.py::TestsAssetProcessorBatch_AllPlatforms::test_AllSupportedPlatforms_FastScanWorks_FasterThanFullScan[windows-AutomatedTesting] PASSED [ 50%]
AutomatedTesting/Gem/PythonTests/assetpipeline/asset_processor_tests/asset_processor_batch_tests_2.py::TestsAssetProcessorBatch_Windows::test_WindowsPlatforms_RunAPBatchAndConnectGui_RunsWithoutEditor[windows-AutomatedTesting] PASSED [100%]
--- generated xml file: F:\amazon\o3de\build\vs2019\Testing\Pytest\AssetPipelineTests.Batch_2_Sandbox.xml ---
=== 2 passed, 4 deselected in 18.32s ===
* using O3DE engine assets instead of level.pak
* updated the binary find() logic for DeltaCatalog.xml
Tests: AutomatedTesting/Gem/PythonTests/assetpipeline/asset_processor_tests/asset_bundler_batch_tests.py
* fix for some install generation issues around ly_enable_gems
* setting the right SettingsRegistry path for imported targets
* missing "include" in the exported target
* Fixed issue with the GEM_FILE argument being specified in replicated ly_enable_gems call
If the original call to `ly_enable_gems` supplied an argument for GEM_FILE, then in the replicated `ly_enable_gems` call in the install layout CMakeLists.txt, supplied both the GEMS and GEM_FILE argument which are mutually exclusive, due to the `ly_enable_gems` function populating the `ly_enable_gems_GEMS` variable from the content of the `ly_enable_gems_GEM_FILE` file.
Furthermore the install layout does not copy over the file that was parsed by the GEM_FILE argument, so it would point to a non-existent file the install layout.
* Fixed comment
Co-authored-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>
* Enable 16 byte alignment for root constants
* Switching to R8G8B8A8_UINT for dummy stream buffers
* Clamping min values for scissor/viewport for fullscreen pass