Commit Graph

95 Commits

Author SHA1 Message Date
Mike Balfour aafb9e8110 Misc Bugfixes (#6530)
* Bugfix: AreaIds don't compare correctly when the priority bus doesn't have a listener.

Signed-off-by: Mike Balfour <82224783+mbalfour-amzn@users.noreply.github.com>
(cherry picked from commit eb9e95fcb3884dee638b9032785b828359b0d8c0)

* Bugfix: Only deactivate a component if it's currently active.

Signed-off-by: Mike Balfour <82224783+mbalfour-amzn@users.noreply.github.com>
(cherry picked from commit 7c9e4b7de49e8fe009616651d6e09f66c356db38)

* Switched shared_lock to unique_lock, since the data is being written to.

Signed-off-by: Mike Balfour <82224783+mbalfour-amzn@users.noreply.github.com>

* Moved Legacy::CryCommon build dependency to correct location.
It was a public build dependency in FastNoise and GradientSignal, but really only should be a private dependency in Vegetation due to the vegetation system needing some init/shutdown events.
Fixing this up also required cleanup of a few unused legacy remnants in other files.

Signed-off-by: Mike Balfour <82224783+mbalfour-amzn@users.noreply.github.com>

* InWorldBounds was incorrectly checking the X bounds against the Z bounds.

Signed-off-by: Mike Balfour <82224783+mbalfour-amzn@users.noreply.github.com>

* Removed some additional unneeded legacy code that was now causing compile errors.

Signed-off-by: Mike Balfour <82224783+mbalfour-amzn@users.noreply.github.com>

* Addressed PR feedback.

Signed-off-by: Mike Balfour <82224783+mbalfour-amzn@users.noreply.github.com>

* Adjusted cmake dependencies again, based on what's needed in the public header files in the gems.

Signed-off-by: Mike Balfour <82224783+mbalfour-amzn@users.noreply.github.com>

* Second attempt at the Deactivate() fix, this time by tracking the nested component state.

Signed-off-by: Mike Balfour <82224783+mbalfour-amzn@users.noreply.github.com>

* Addressed PR feedback, made operation symmetrical.

Signed-off-by: Mike Balfour <82224783+mbalfour-amzn@users.noreply.github.com>

* Added CryCommon privately to other veg modules too, since they all reference AreaSystemComponent, which uses the legacy events.

Signed-off-by: Mike Balfour <82224783+mbalfour-amzn@users.noreply.github.com>
2021-12-22 10:38:04 -06:00
sphrose 657e56edf7 revew changes
Signed-off-by: sphrose <82213493+sphrose@users.noreply.github.com>
2021-12-21 09:55:29 +00:00
sphrose 195764a427 review changes
Signed-off-by: sphrose <82213493+sphrose@users.noreply.github.com>
2021-12-16 15:03:53 +00:00
sphrose 8562dbc6f2 Merge branch 'development' into terrain/sphrose/SurfaceDataConstants 2021-12-15 08:10:54 +00:00
John Jones-Steele 9e7d5fe52b Test the Terrain World configuration changes when parameters are chan… (#6063)
* Test the Terrain World configuration changes when parameters are changed in the component

Signed-off-by: John Jones-Steele <82226755+jjjoness@users.noreply.github.com>

* Changes from PR

Signed-off-by: John Jones-Steele <82226755+jjjoness@users.noreply.github.com>

* Before merge

Signed-off-by: John Jones-Steele <82226755+jjjoness@users.noreply.github.com>

* Before merge 2

Signed-off-by: John Jones-Steele <82226755+jjjoness@users.noreply.github.com>

* Changes from PR

Signed-off-by: John Jones-Steele <82226755+jjjoness@users.noreply.github.com>

* Change from PR

Signed-off-by: John Jones-Steele <82226755+jjjoness@users.noreply.github.com>

* Change before merge

Signed-off-by: John Jones-Steele <82226755+jjjoness@users.noreply.github.com>

* Change before merge 2

Signed-off-by: John Jones-Steele <82226755+jjjoness@users.noreply.github.com>

* Change before merge 3

Signed-off-by: John Jones-Steele <82226755+jjjoness@users.noreply.github.com>

* Change after merge to fix conflicts

Signed-off-by: John Jones-Steele <82226755+jjjoness@users.noreply.github.com>

* Fix merge conflict

Signed-off-by: John Jones-Steele <82226755+jjjoness@users.noreply.github.com>

* Fix merge conflict

Signed-off-by: John Jones-Steele <82226755+jjjoness@users.noreply.github.com>

* CHanges from PR

Signed-off-by: John Jones-Steele <82226755+jjjoness@users.noreply.github.com>
2021-12-08 14:09:56 +00:00
sphrose 878d03e6b4 Merge branch 'development' into terrain/sphrose/macro_material_tests 2021-12-07 13:01:58 +00:00
sphrose f00923419d Merge branch 'development' into terrain/sphrose/physics_collider_materials_LYN-6431 2021-12-07 08:19:08 +00:00
sphrose f06230f614 fix merge conflict
Signed-off-by: sphrose <82213493+sphrose@users.noreply.github.com>
2021-12-07 08:12:20 +00:00
sphrose e5a3f21e29 fix merge conflict
Signed-off-by: sphrose <82213493+sphrose@users.noreply.github.com>
2021-12-06 16:43:08 +00:00
sphrose f6c3187151 LYN-7056 SurfaceDataConstants should be revised to have no terrain references
Signed-off-by: sphrose <82213493+sphrose@users.noreply.github.com>
2021-12-06 09:54:00 +00:00
sphrose a8539a7b03 Added default material return when no mapping is assigned.
Signed-off-by: sphrose <82213493+sphrose@users.noreply.github.com>
2021-12-02 15:35:46 +00:00
sphrose 75b3393892 text change
Signed-off-by: sphrose <82213493+sphrose@users.noreply.github.com>
2021-12-01 14:50:43 +00:00
sphrose 7e93addd53 LYN-6431 Added materials support to TerrainPhysicsCollider
Signed-off-by: sphrose <82213493+sphrose@users.noreply.github.com>
2021-12-01 12:56:19 +00:00
sphrose 786a72cf63 LYN-7376 test_TerrainHeightGradientList_AddRemoveGradients
Signed-off-by: sphrose <82213493+sphrose@users.noreply.github.com>
2021-12-01 10:41:45 +00:00
sphrose af2e0a117d LYN-6357 Terrain Macro Material tests
Signed-off-by: sphrose <82213493+sphrose@users.noreply.github.com>
2021-11-30 08:10:55 +00:00
John Jones-Steele 2259cb3dc0 Moved TerrainDataRquestBus to AzFrameworkTestShared (#5835)
* Moved TerrainDataRquestBus to AzFrameworkTestShared

Signed-off-by: John Jones-Steele <82226755+jjjoness@users.noreply.github.com>

* Changes from PR

Signed-off-by: John Jones-Steele <82226755+jjjoness@users.noreply.github.com>
2021-11-24 09:29:40 +00:00
sphrose 93d6a0ef24 Move to development and add review fixes.
Signed-off-by: sphrose <82213493+sphrose@users.noreply.github.com>
2021-11-23 22:53:51 +00:00
Junbo Liang 1f7705096c Merge commit '1f2385ca1adb422380b52252925f6eb397a2172d' into junbo/gitflow_211123_o3de 2021-11-23 13:29:25 -08:00
Junbo Liang 3b39be7fd0 Merge commit '4ad35f424e01356a4745e5f50631dc050b328c98' into junbo/gitflow_211123_o3de 2021-11-23 13:14:57 -08:00
Mike Balfour 39ba06b84e misc small terrain bugfixes (#5834)
* Removed "chatty" profile markers.
These three markers were making terrain refreshes take ~200% longer in profile builds.

Signed-off-by: Mike Balfour <82224783+mbalfour-amzn@users.noreply.github.com>

* Terrain surface data wasn't updating its AABB correctly.
The code was making an invalid assumption that changes to the world bounds would result in an invalid dirtyRegion.  It actually gets a valid region encapsulating the old and new bounds.  The fix is an additional check to see if the terrain bounds changed.

Signed-off-by: Mike Balfour <82224783+mbalfour-amzn@users.noreply.github.com>

* Addressed previous PR feedback that terrainSystem ought to be a local variable in each test.

Signed-off-by: Mike Balfour <82224783+mbalfour-amzn@users.noreply.github.com>
2021-11-23 09:21:27 -06:00
Mike Balfour 1f2385ca1a Added missing doc links. (#5841)
Signed-off-by: Mike Balfour <82224783+mbalfour-amzn@users.noreply.github.com>
2021-11-22 15:35:37 -06:00
John Jones-Steele 4ad35f424e Adds check to make sure that there are not too many samples created. (#5789)
* Adds check to make sure that there are not too many samples created.

Signed-off-by: John Jones-Steele <82226755+jjjoness@users.noreply.github.com>

* Changes made from PR

Signed-off-by: John Jones-Steele <82226755+jjjoness@users.noreply.github.com>

* Changes made from PR 2

Signed-off-by: John Jones-Steele <82226755+jjjoness@users.noreply.github.com>
2021-11-19 17:57:38 +00:00
puvvadar 868cac6d47 Merge commit '1b63ca3bc0924a143b2952cdf88cca0e8a57dc57' into puvvadar/gitflow_211118_o3de 2021-11-18 09:43:46 -08:00
Mike Balfour 1b63ca3bc0 Terrain component icon updates. (#5722)
* Terrain component icon updates.
Refreshed using latest icons from UX.

Signed-off-by: Mike Balfour <82224783+mbalfour-amzn@users.noreply.github.com>

* Revised icons from UX.

Signed-off-by: Mike Balfour <82224783+mbalfour-amzn@users.noreply.github.com>
2021-11-18 11:30:03 -06:00
Tommy Walton 1e42261d76 Merge remote-tracking branch 'upstream/development' into amzn-tommy/gitflow_211116_o3de2
Signed-off-by: Tommy Walton <waltont@amazon.com>
2021-11-17 09:04:04 -08:00
Ken Pruiksma 8bccd36d03 Terrain detail textures support with bindless arrays (#5460)
* Added buffer for material properties of detail mateirals, storing them in a multi-indexed data vector. Updated shader with relevant struct and buffer, but the buffer will need to be moved out of the mateiral SRG to work.

Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>

* Added buffer for material properties of detail mateirals, storing them in a multi-indexed data vector. Updated shader with relevant struct and buffer, but the buffer will need to be moved out of the mateiral SRG to work.

Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>

* Added buffer for material properties of detail mateirals, storing them in a multi-indexed data vector. Updated shader with relevant struct and buffer, but the buffer will need to be moved out of the mateiral SRG to work.

Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>

* - Moved settings related to the detail material to a partial view srg owned by the terrain gem.
- Added support for base color in detail materials.
- Hooked up basic base color rendering of detail materials.
- Corrected the way the material data was stored.
- Added ref counting for detail materials so they can be released when no longer used.

Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>

* Added buffer for material properties of detail mateirals, storing them in a multi-indexed data vector. Updated shader with relevant struct and buffer, but the buffer will need to be moved out of the mateiral SRG to work.

Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>

* - Moved settings related to the detail material to a partial view srg owned by the terrain gem.
- Added support for base color in detail materials.
- Hooked up basic base color rendering of detail materials.
- Corrected the way the material data was stored.
- Added ref counting for detail materials so they can be released when no longer used.

Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>

* Detail materials now put textures into bindless array that's accessed in the shader. Shader now pulls all the detail materal information for a single mateiral but does no blending.

Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>

* Correcting rebase merge problem.

Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>

* Fix detail roughness fade out with distance.

Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>

* Adding tests for new MultiIndexedDataVector functions

Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>

* Updates to move bindless array to separate SRG
- Exposed BindSrg() in renderpass so it's possible to add additional SRGs to a pass
- Created a TerrainSrg for use by the terrain forward shader
- Moved the bindless array out of the partial view SRG to the TerrainSrg

Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>

* Moved more properties out of the view srg to the terrain srg.

Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>

* Spelling fixes

Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>

* Fixing bug where the roughness min/max value were inverted. Also fixed bug where bad data would show for areas where there was no macro material.

Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>

* Updates from PR review

Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>

* Fixing case issues and updating function name due to a recent fix.

Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>
2021-11-17 10:30:06 -06:00
Tommy Walton 81a2f565c9 Merge commit '2fa3c134e04c89b61b1e47bf0b44bdc74b840866' into amzn-tommy/gitflow_211116_o3de2 2021-11-16 11:41:55 -08:00
Alex Peterson 2fa3c134e0 Terrain depends on SurfaceData and GradientSignal (#5476)
Signed-off-by: Alex Peterson <26804013+AMZN-alexpete@users.noreply.github.com>
2021-11-11 17:18:36 -08:00
Nicholas Van Sickle 8d5dd4e35f Merge remote-tracking branch 'upstream/stabilization/2110' into nvsickle/StabToDevNov21
Signed-off-by: Nicholas Van Sickle <nvsickle@amazon.com>
2021-11-11 10:15:52 -08:00
sphrose 398decd06e review changes
Signed-off-by: sphrose <82213493+sphrose@users.noreply.github.com>
2021-11-11 12:57:48 +00:00
sphrose c3093edffe Redoing tests that got lost when TerrainPhysicsManager was merged.
Signed-off-by: sphrose <82213493+sphrose@users.noreply.github.com>
2021-11-11 12:12:18 +00:00
sphrose 23faf4d36a Merge pull request #4628 from aws-lumberyard-dev/terrain/sphrose/surface_materials_list_tests
Terrain/sphrose/surface materials list tests
2021-11-11 10:14:00 +00:00
sphrose 7159e3fe57 Moving to stabilization
Signed-off-by: sphrose <82213493+sphrose@users.noreply.github.com>
2021-11-10 17:22:55 +00:00
sphrose c28e92bf51 Merge pull request #5441 from aws-lumberyard-dev/terrain/sphrose/field_name_fix_LYN-8004
Various bug fixes.
2021-11-10 10:30:01 +00:00
sphrose bff8a2e147 improved fix
Signed-off-by: sphrose <82213493+sphrose@users.noreply.github.com>
2021-11-09 16:00:26 +00:00
John Jones-Steele c35f74e9ce Physics/test axis aligned box shape configuration works #7378a (#5366)
* Safety commit before merging

Signed-off-by: John Jones-Steele <82226755+jjjoness@users.noreply.github.com>

* Moved from Physics to Terrain

Signed-off-by: John Jones-Steele <82226755+jjjoness@users.noreply.github.com>

* Changes from PR + AR fix

Signed-off-by: John Jones-Steele <82226755+jjjoness@users.noreply.github.com>

* Fixed another AR bug

Signed-off-by: John Jones-Steele <82226755+jjjoness@users.noreply.github.com>

* Fixed another AR compilation bug

Signed-off-by: John Jones-Steele <82226755+jjjoness@users.noreply.github.com>

* More PR changes

Signed-off-by: John Jones-Steele <82226755+jjjoness@users.noreply.github.com>

* Added virtual destructor

Signed-off-by: John Jones-Steele <82226755+jjjoness@users.noreply.github.com>

* Added TestSuite_main_Optimized.py

Signed-off-by: John Jones-Steele <82226755+jjjoness@users.noreply.github.com>

* Changes from PR

Signed-off-by: John Jones-Steele <82226755+jjjoness@users.noreply.github.com>

* Further fixes for PR

Signed-off-by: John Jones-Steele <82226755+jjjoness@users.noreply.github.com>

* Fix to editor_test.py

Signed-off-by: John Jones-Steele <82226755+jjjoness@users.noreply.github.com>

* Testing prefab level

Signed-off-by: John Jones-Steele <82226755+jjjoness@users.noreply.github.com>

* Testing slice level

Signed-off-by: John Jones-Steele <82226755+jjjoness@users.noreply.github.com>

* Testing prefab level

Signed-off-by: John Jones-Steele <82226755+jjjoness@users.noreply.github.com>

* Disabled orefab loading for the time being.

Signed-off-by: John Jones-Steele <82226755+jjjoness@users.noreply.github.com>
2021-11-09 14:11:33 +00:00
John Jones-Steele 938899a495 Minor fixups for terrain physics collide lyn 7692 (#5413)
* First commit

Signed-off-by: John Jones-Steele <82226755+jjjoness@users.noreply.github.com>

* completed changes

Signed-off-by: John Jones-Steele <82226755+jjjoness@users.noreply.github.com>
2021-11-09 13:24:10 +00:00
sphrose af08cc5ab3 Various bug fixes.
Signed-off-by: sphrose <82213493+sphrose@users.noreply.github.com>
2021-11-09 10:05:33 +00:00
Tom Hulton-Harrop 5047ba7f7b merge stabilization/2110 to development - 2021/11/09
Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>
2021-11-09 09:19:54 +00:00
Ken Pruiksma a2efc587cc Rendered World Size in the Terrain World Render component set to invisible (#5378)
It's not currently hooked up, so setting invisible for now until it does something.

Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>
2021-11-05 15:31:31 -05:00
Ken Pruiksma 0b061d2e00 GHI-5338 - Fixing incorrect calculation of sector bounds for negative values (#5352)
Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>
2021-11-05 12:39:58 -05:00
Mike Balfour 6a21d4f50d Merge pull request #5351 from aws-lumberyard-dev/terrain/mbalfour/use_ground_plane_non_functional
Use Ground Plane non functional
Added functionality to the "Use Ground Plane" toggle. Now, when it's enabled, the Terrain Layer Spawner will always provide valid terrain data at the minimum height of the spawner box, even if no Terrain Height Gradient List exists. If it's disabled, it won't provide any terrain data unless the Terrain Height Gradient List exists.
2021-11-05 12:14:24 -05:00
Mike Balfour df0403a5e6 Merge pull request #5333 from aws-lumberyard-dev/terrain/mbalfour/debugger_wireframe_refresh_bug
Fix terrain wireframe refresh.
2021-11-04 18:59:24 -05:00
Mike Balfour b0abb8dbc3 Merge branch 'stabilization/2110' into terrain/mbalfour/use_ground_plane_non_functional
Signed-off-by: Mike Balfour <82224783+mbalfour-amzn@users.noreply.github.com>

# Conflicts:
#	Gems/Terrain/Code/Source/Components/TerrainHeightGradientListComponent.cpp
2021-11-04 18:00:17 -05:00
Mike Balfour 97b0eddcb4 Hook up the "Use Ground Plane" toggle.
The "Use Ground Plane" toggle is now functional.  When disabled, the terrain layer spawner will say "terrain exists = false" for any point in its bounds unless there's also a Terrain Height Gradient List component with a valid entry.  When enabled, it will always say "terrain exists = true", and it will return the min height of the spawner box as the ground plane if there's no valid Terrain Height Gradient List height provider.

Signed-off-by: Mike Balfour <82224783+mbalfour-amzn@users.noreply.github.com>
2021-11-04 17:56:55 -05:00
Mike Balfour e32e1ce572 Fix terrain wireframe refresh.
If a terrain layer spawner went outside the world bounds, the debug wireframe wouldn't update correctly because the heights were outside the wireframe sector AABBs.  Adjusted the logic to account for this.

Signed-off-by: Mike Balfour <82224783+mbalfour-amzn@users.noreply.github.com>
2021-11-04 15:55:37 -05:00
Mike Balfour 5b504086f9 Prevent infinite recursion with Altitude Gradient.
Using the Altitude Gradient as an input to the Height Gradient List can cause infinite recursion since it is both setting and fetching the same height value.  Added guards to warn if this occurs and gracefully handles the situation.

Signed-off-by: Mike Balfour <82224783+mbalfour-amzn@users.noreply.github.com>
2021-11-04 15:27:00 -05:00
Mike Balfour a9d65b25ec Merge commit 'd52ce49dcb827c04150a6f11b7cceead9f61a43c' into mbalfour/gitflow_211102_o3de 2021-11-02 09:45:07 -05:00
Ken Pruiksma d52ce49dcb Terrain macro material fixes (#5182)
* Minor fixes for macro materials
- When macro image views are no longer used, they will explicitely be set to nullptr
- limiting for loop in shader to the number of macro materials total so it doesn't read unitialized memory

Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>

* Removing parts of the terrain shader no longer used.

Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>

* Fixing normalization in shaders, adding default valus for all structs used in SRGs.

Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>
2021-11-02 09:27:10 -05:00
John Jones-Steele 021917ad27 Fix bug 4198 (#5107)
Signed-off-by: John Jones-Steele <jjjoness@amazon.com>
2021-10-29 09:42:40 +01:00