Shaders can now specify a top-level field "Definitions" which
accepts an array of string values. Each string will be appended
to the set of preprocessor definitions defined globally and forwarded
to the MCPP preprocessor on shader build. The shader-reload soak test
was modified to accept a new shader to test this feature in the ASV.
Signed-off-by: Jeremy Ong <jcong@amazon.com>
Added new utility functions for easily creating the value set for a ShaderOptionDescriptor.
Made ShaderOptionDescriptor default value optional, picking the first available value as the default ... by default.
Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
* Added camera controller script canvas graph that follows the character and rotates slowly around it.
* Added simple motion matching anim graph using the automatic target mode that doesn't need user input and just makes the character run around in the level.
* Added example level.
Note: As O3DE can't locate level files from within the gems asset folder, the level file needs to manually be copy & pasted to the ${YourProject}\Levels\ folder.
Signed-off-by: Benjamin Jillich jillich@amazon.com
* Misc SurfaceData Optimizations.
This includes a few different optimizations found while trying to make the bulk query APIs faster:
* Switches mutexes over to shared_lock to optimize for the multi-reader-single-writer pattern
* Surface provider point creation now uses a pre-created set of masks to initialize with, and uses std::move() to move the created point into the output list instead of copying it.
* Splits CombineSortAndFilterNeightboringPoints so that the FilterPoints() can occur separately and efficiently with erase/remove_if, and avoids making a copy of the output points.
* Optimized SurfaceDataShapeComponent::ModifySurfacePoints
* Fixed potential bug where the sort wasn't stable since it only compared the Z value, and could have produced unexpected results for differing points with the exact same Z value.
* Fixed up a couple small bugs and missing checks in the unit tests
Signed-off-by: Mike Balfour <82224783+mbalfour-amzn@users.noreply.github.com>
* Fixed syntax on unit tests.
Signed-off-by: Mike Balfour <82224783+mbalfour-amzn@users.noreply.github.com>
* Terrain ray cast benchmarks and optimization:
- Added some benchmarks that exercise terrain ray casting.
- Optimized terrain ray casting by removing an unnecessary AABB intersection check (this was suggested by @invertednormal in the original review, but I forgot to actually remove it until now).
- Fixed a bug where we were not normalizing the ray direction before performing the Moller-Trumbore ray<->triangle intersection calculations.
Signed-off-by: bosnichd <bosnichd@amazon.com>
* Update to make work with changes pulled down from mainline.
Signed-off-by: bosnichd <bosnichd@amazon.com>
* fix incorrect icon rendering
Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>
* add redundant parens
Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>
* add tests for icon display fixes
Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>
* update references to EditorVisibleEntityDataCache to EditorVisibleEntityDataCacheInterface
Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>
* updates following review feedback and remaining updates for EditorVisibleEntityDataCacheInterface
Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>
• Moved all of the common save and load code to the document base class
• Moved undo and redo support to document base class but will probably extract to its own class or replace with one from AzTF
• Streamlined material editor, shader management console, and other tools with updated document code
• Cleaned up some of shader management console loading code, added support for saving, as well as getting and setting the shader variant list source data structure
Signed-off-by: Guthrie Adams <guthadam@amazon.com>
* Small refactor on ImageComparison utils.
Signed-off-by: hershey5045 <43485729+hershey5045@users.noreply.github.com>
* Add aznumeric cast.
Signed-off-by: hershey5045 <43485729+hershey5045@users.noreply.github.com>
* Correction on aznumeric cast.
Signed-off-by: hershey5045 <43485729+hershey5045@users.noreply.github.com>
* Add unit test for new image comparison function.
Signed-off-by: hershey5045 <43485729+hershey5045@users.noreply.github.com>
* Use span instead of array_view
Signed-off-by: hershey5045 <43485729+hershey5045@users.noreply.github.com>
* Making terrain query resolution a single float instead of a Vector2
Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>
* Keeping the concept of different x/y step sizes in region queries since that may be useful and is separate from query resolution. Also keeping the concept of different x/y step sizes in physics since that's independent of the terrain gem.
Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>
* Formatting cleanups
Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>
* A few more minor cleanups
Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>
* Added support to convert serialized Vector2 query resolution to a single float.
Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>
* Switch ray intersection check back to using separate values for x and y resolution
Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>
* Fixing new unit tests added to use float query resolution.
Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>
* Updating automated test
Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>
PAL-ified default thread priority for pthread platforms.
Fix threads not getting named on Apple platforms by setting the thread name ptr on the thread_info struct.
Signed-off-by: rgba16f <82187279+rgba16f@users.noreply.github.com>
* Add benchmarks and unit tests for GetSurfacePoints*.
The benchmarks are very enlightening - the existing implementation of GetSurfacePointsFromRegion (and GetSurfacePointsFromList) is currently measurably *slower* than just calling GetSurfacePoints() many times in a loop. This is due to all of the extra allocation overhead that's currently happening with the way these data structures are built.
Signed-off-by: Mike Balfour <82224783+mbalfour-amzn@users.noreply.github.com>
* Small syntax improvement
Signed-off-by: Mike Balfour <82224783+mbalfour-amzn@users.noreply.github.com>
* Small update to the benchmark to use filtered results.
Signed-off-by: Mike Balfour <82224783+mbalfour-amzn@users.noreply.github.com>
* Removed accidental extra include.
Signed-off-by: Mike Balfour <82224783+mbalfour-amzn@users.noreply.github.com>
* Added several new sections (trajectory history, motion matching data, motion matching instance)
* Added images for the available feature visualizations and UI editors.
* Added feature histogram and scatterplot.
Signed-off-by: Benjamin Jillich <jillich@amazon.com>
update the prefab path for procedural prefabs so that the prefab template
can be found from the level prefab load event. It is important that it
points to the realative/path/to/the.procprefab using the correct
front slashes for the source asset path
Signed-off-by: Allen Jackson <23512001+jackalbe@users.noreply.github.com>