PrefabCatchmentProcessor::ProcessPrefab was no longer updating the ProcessedObjectStore's referenced object list, this change exposes the referenced asset list in the new PrefabDocument API and uses them to update the referenced asset list.
Signed-off-by: Nicholas Van Sickle <nvsickle@amazon.com>
* [Terrain] First pass of the ProcessList and ProcessRegion APIs for retrieving surface data
Signed-off-by: amzn-sj <srikkant@amazon.com>
* Add a couple of more tests. The expected values were plugged in based on the values generated by the brute force approach.
Signed-off-by: amzn-sj <srikkant@amazon.com>
* Move some declarations out of loops since they can be reused.
Signed-off-by: amzn-sj <srikkant@amazon.com>
* Update all the per position callbacks to pass SurfacePoint refs. Construct only one SurfacePoint object outside the loop which can be reused.
Signed-off-by: amzn-sj <srikkant@amazon.com>
* Update tests to use the new per position callbacks
Signed-off-by: amzn-sj <srikkant@amazon.com>
* Add ProcessRegion functions to the terrain benchmark.
Signed-off-by: amzn-sj <srikkant@amazon.com>
* Change C style static casts to aznumeric_cast. Add maybe_unused to unused params in benchmarks.
Signed-off-by: amzn-sj <srikkant@amazon.com>
* Update the ProcessList API functions to use array_view instead of a vector. This includes some additional changes to satisfy build dependencies.
Signed-off-by: amzn-sj <srikkant@amazon.com>
* Add ProcessList API functions to benchmarks
Signed-off-by: amzn-sj <srikkant@amazon.com>
* Update the ProcessList API functions to take Vector2 as input positions
Signed-off-by: amzn-sj <srikkant@amazon.com>
* Revert changes to AtomCore library split. Add partial implementation of span(mostly just copied over from array_view) to AzCore std containers.
Signed-off-by: amzn-sj <srikkant@amazon.com>
* Adding some const/non-const overloads that were missing in span
Signed-off-by: amzn-sj <srikkant@amazon.com>
* Move input position list generation to a function
Signed-off-by: amzn-sj <srikkant@amazon.com>
* Bring back Vector3 version of ProcessList functions. Rename Vector2 version to follow similar pattern as the Get functions.
Signed-off-by: amzn-sj <srikkant@amazon.com>
* Split span.h into .h/.inl files
Signed-off-by: amzn-sj <srikkant@amazon.com>
* Add [mayby_unused] for unused parameters to fix build errors
Signed-off-by: amzn-sj <srikkant@amazon.com>
The "precise" keyword was recently added to several shader inputs, but one was missed. This led to inconsistency between the depth and forward passes which resulted in artifacts when parallax pixel depth offset was in use. See https://github.com/o3de/o3de/pull/6536
Testing: I used AtomSampleViewer to make a local baseline of all screenshots in _fulltestsuite_.bv.lua. The only change was to the parallax test cases, which were a clear improvement.
Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
* Fix input/output params not being zero-based
* Expose missing Dump Database developer command
* Fix issue where developer gem name is not the same as the target
* Let the user specify folder to write to
Signed-off-by: Alex Peterson <26804013+AMZN-alexpete@users.noreply.github.com>
* moving material editor test from sandbox to main suite
Signed-off-by: Scott Murray <scottmur@amazon.com>
* define TEST_DIRECTORY and add logging
Signed-off-by: Scott Murray <scottmur@amazon.com>
Previously it was using `GetTickCount()` for the creation of the
directory which can collide if0 there are multiple processes
creating a temporary directory via teh ScopedAutoTempDirectory
constructor.
Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>
* Fixed CMake use with Android NDK 23
This was done by only setting the `ANDROID_ARM_MODE` if the ANDROID_ABI
starts with `armeabi`.
The Android arm mode setting can't be used using non-`armeabi` ABIs.
In O3DE we default to `arm64-v8a` `ANDROID_ABI`
So `ANDROID_ARM_MODE` must not be set.
The CMake [Android-Determine.cmake](https://gitlab.kitware.com/cmake/cmake/-/blob/master/Modules/Platform/Android-Determine.cmake#L573-585) which is used to detect platform-wide information when the CMAKE_SYSTEM_NAME is set to android, enforces that if the `CMAKE_ANDROID_ARCH_ABI` doesn't start with `armeabi`, then it will fatal error if the CMAKE_ANDROID_ARM_MODE option is set.
In Android NDK 21 the `ANDROID_ARM_MODE` variable is used to set the CMAKE_ANDROID_ARM_MODE variable if the [ANDROID_ABI](https://android.googlesource.com/platform/ndk/+/refs/tags/ndk-r21e/build/cmake/android.toolchain.cmake#700) starts with `armeabi`.
This meant when using Android NDK 21, the CMake Android-Determine.cmake module would succeed, due
to the CMAKE_ANDROID_ARM_MODE not being set.
In Android NDK 23 the `ANDROID_ARM_MODE` now will set the
`CMAKE_ANDROID_ARM_MODE` variable to `TRUE` if it isn't defined.
Added an `--extra-cmake-configure-args` option to the `generate_android_project.py` script which can be used to append user specified CMake arguments to the cmake configure step (`cmake -B <build-dir> -S <source-dir> -DCMAKE_TOOLCHAIN_FILE=<android-toolchain-file> <extra-args>`)
Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>
* Updated the O3DE Android toolchain wrapper to fatal error if the 64-bit
arm ABI isn't used.
Also removed the unneccessary setting of the ANDROID_ARM_MODE and
ANDROID_ARM_NEON option option now that the armeabi cannot be specified
as an ABI.
Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>