Commit Graph

38 Commits

Author SHA1 Message Date
Kyle B 13f4f3b37a fixed typo in vegitation mock
Signed-off-by: Kyle B <kylebirnbaum@gmail.com>
2021-08-18 19:35:51 -07:00
Kyle B c515ead27e attempt to fixed mock errors
Signed-off-by: Kyle B <kylebirnbaum@gmail.com>
2021-08-17 22:44:41 -07:00
sphrose 9639003a7d LYN-4774 Fix missing box icons inside the main Viewport (#2297)
* LYN-4774 Fix missing box icons inside the main Viewport

Signed-off-by: sphrose <82213493+sphrose@users.noreply.github.com>

* V2 icons

Signed-off-by: sphrose <82213493+sphrose@users.noreply.github.com>

* Bug fixes

Signed-off-by: sphrose <82213493+sphrose@users.noreply.github.com>
2021-07-21 16:33:04 -07:00
Mike Balfour 6d563e2e19 [GHI 2178] Vegetation Debugger info was sometimes getting culled (#2209)
* [GHI 2178] Fixed missing vegetation info
The entity debug drawing culling system was removing it due to the level entity not having an AABB.  Since this component can draw infinitely far, it just needed a max AABB.
With the culling fixed, it made another culling problem evident - a bug in the font code where it wasn't culling 3D text rendered behind the camera.  Now it is.

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

* Fix problem with debug rendering not immediately showing up.
When using FloatMax for the AABB, it causes math overflows with the initial camera frustrum.  Changing to max/2.0f is sufficient to avoid the overflows.

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

* Fixed normals on mesh raycasts.
The normals needed to be normalized after transformation, and didn't need the non-uniform scale applied to them, since they're normals.

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

* Fixed the bug that prevented max-size AABBs from working with ShapeIntersection::Overlap.

Signed-off-by: Mike Balfour <82224783+mbalfour-amzn@users.noreply.github.com>
2021-07-19 15:43:56 -05:00
Danilo Aimini 512fbbe6b2 Adjust debug text sizing for Vegetation Debugger in viewport. (#2183)
Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
2021-07-16 17:49:33 -05:00
Steve Pham 38261d0800 Shorten copyright headers by splitting into 2 lines (#2213)
* Updated all copyright headers to split the longer original copyright line into 2 shorter lines

Signed-off-by: Steve Pham <spham@amazon.com>
2021-07-16 15:25:48 -07:00
moraaar 7cfde884d9 Fix unused variable warning in release configuration: DebugComponent::DrawInstanceDebug (#2085)
Signed-off-by: moraaar <moraaar@amazon.com>
2021-07-12 13:10:20 +01:00
Mike Balfour 274669a1b4 Fixed Vegetation Debugger to work with Atom rendering and AZ::Console. (#1924)
The previous implementation used Cry rendering and CVars and had been left in a commented-out state. These changes restore it back to full functionality.

Signed-off-by: mbalfour <mbalfour@amazon.com>
2021-07-07 16:05:38 -05:00
Steve Pham b4a2edec6a Final update copyright headers to reference license files at the repo root (#1693)
* Final update copyright headers to reference license files at the repo root

Signed-off-by: spham <spham@amazon.com>

* Fix copyright validator unit tests to support the stale O3DE header scenario

Signed-off-by: spham <spham@amazon.com>
2021-06-30 19:51:55 -07:00
Terry Michaels 21ebff5709 Updated help search and all docs.o3de.org links to o3de.org (#1594) 2021-06-25 15:23:57 -05:00
Mike Balfour 567156b85a [ATOM-4343] Temporary fix for vegetation raycasts until full solution is implemented. (#1572)
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.
2021-06-24 17:30:24 -05:00
Mike Balfour c873ddac45 [LYN-3099] Fixed some issues with vegetation planting on surfaces (#1554)
* [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
2021-06-24 12:54:48 -05:00
Terry Michaels 1e457928f5 Update help URLs and remove unneeded links (#1520) 2021-06-23 14:42:33 -05:00
Steve Pham 70042fcdcd O3DE Copyright Updates for Linux Foundation (#1504) 2021-06-23 10:55:22 -07:00
Mike Balfour db92dffb14 Fix Vegetation Modifier behavior when in-game (#1441)
* Removed a bit of dead legacy code

* Fixed entity references during spawning
Entities that had references to other entities that hadn't been spawned yet weren't getting their IDs remapped correctly, since the new ID wasn't available yet.  By pre-generating the full set of IDs, the references now remap correctly.

* Fixed up Entity References to work across multiple SpawnEntities calls
With SpawnEntities, entity references need to forward-reference to the *first* entity spawned, then from that point on backwards-reference to the *last* entity spawned.  Added that logic, along with some initial unit tests for SpawnAllEntities.

* Added more unit tests for SpawnEntities / SpawnAllEntities
2021-06-22 15:20:28 -05:00
Mike Balfour 13bf685661 Cleaned up vegetation_precompiled.h (#1418)
* Removed vegetation_precompiled.h
* Removed CryCommon dependency
2021-06-18 09:28:31 -05:00
Mike Balfour f6fc425a1a Prefab support for dynamic vegetation (#1374)
* First version of prefab support for dynamic vegetation

* Addressed PR feedback
- Made MockSpawnableEntitiesInterface a proper GMock in AzFramework
- Added Get/SetSpawnableAssetId
- Added lots of comments to better explain things that were asked about in the PR

* Exposed AzFrameworkTestShared on all platforms, not just host platforms
2021-06-17 16:24:33 -05:00
Esteban Papp 36cb0f6d40 SPEC-7178 Removal of precompiled cpp files (#1171)
* SPEC-7178  Removal of precompiled cpp files

* Missing files...
2021-06-07 15:59:58 -07:00
pappeste 0dd8fce2b0 Pass on fixing LmbrCentral.Static dependencies 2021-05-27 10:30:11 -07:00
pappeste f1b688f435 Merge branch 'main' into ly-as-sdk/LYN-2948
# Conflicts:
#	CMakeLists.txt
#	Code/Tools/ProjectManager/Source/GemCatalog/GemInfo.h
#	Gems/AtomLyIntegration/AtomViewportDisplayInfo/gem.json
#	cmake/LYWrappers.cmake
#	cmake/SettingsRegistry.cmake
#	scripts/o3de/tests/unit_test_current_project.py
2021-05-27 10:29:19 -07:00
greerdv 78afeb8047 update more calls to Transform to use uniform scale 2021-05-26 10:26:26 +01:00
lumberyard-employee-dm 4652d47fb3 Merge remote-tracking branch 'origin/lawsonamzn_prototype_gem_naming_conventions' into ly-as-sdk/LYN-2948-phistere 2021-05-26 00:38:51 -05:00
pappeste 19adbf2f41 Removing adding runtime dependencies for gems that are in the BUILD_DEPENDENCIES 2021-05-25 15:12:17 -07:00
pappeste db0db5c1c0 Proper dependencies to LmbrCentral/LmbrCentral.Editor, mixing those two can cause Editor modules to load non-Editor modules 2021-05-24 18:57:48 -07:00
Nicholas Lawson c9d5d7fb77 The new gem registration and usage system
Merge from mainline (Rebase)
2021-05-20 10:47:03 -07:00
mbalfour 704443ac89 Fix up incorrect autoDelete use and handling.
Several UI property handlers were incorrectly using the autoDelete feature by calling UnregisterPropertyType and deleting the pointer themselves, which caused double-delete crashes on application shutdown.  PropertyManagerComponent now gracefully handles that condition but also explicitly asserts explaining how the code should be changed, and the "known offenders" have been fixed up to use autoDelete correctly.
2021-05-11 10:25:03 -05:00
bosnichd 440c40e490 Remove (almost) all references to pRenderer (#651)
Remove all references to pRenderer, except from the DebugDraw and LyShine Gems that are still being updated.
2021-05-10 10:05:15 -06:00
bosnichd d7b796fd73 Remove I3DEngine CryCommon Interface (#567)
Delete:

- I3DEngine
- Missions
- Time of day
- GameEffectsSystem Gem
- ImageProcessing Gem
- SVOGI Gem
- Various other things that don't do anything now that the legacy renderer has been removed.
2021-05-05 09:07:28 -06:00
mbalfour 61840b5f86 Removed outdated comments. 2021-05-04 11:04:51 -05:00
mbalfour 5df82caef6 [LYN-3464] Vegetation unit tests intermittently failed due to an AssetManager bug. Inside the AssetContainer, if the root asset finished loading during the container initialization, the CheckReady() call at the end of initialization would detect the loaded asset, but would skip sending out notifications because the initialized flag wasn't set yet. This would lead to an extra asset reference remaining in the AssetManager itself, would would then cause errors when the asset handler for that asset got removed.
By setting the initialization flag before the CheckReady() call, the notifications get sent correctly, and no extra asset references remain.  This checkin also includes a unit test for the AssetManager that specifically forces this condition to happen and validates that it works correctly.
2021-05-04 09:04:18 -05:00
mbalfour c69a00fd80 [SPEC-6600] Disabling unit tests that intermittently fail AR runs. 2021-04-30 10:25:48 -05:00
mbalfour 9b8aed1852 [LYN-3265] Vegetation failed to display in the launcher because we hadn't deleted enough legacy code out of the system yet.
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.
2021-04-23 14:56:29 -05:00
Chris Burel 28170ffe41 Add newlines to the end of all files 2021-04-23 09:43:40 -07:00
Benjamin Jillich 0fa00a117c [ATOM-14477] Add clone function to model and/or model asset (#135)
* Added clone methods for the buffer, model lod and model assets.
* Cloning works via the creators.
* Mesh handle/instance now knows about the model asset it originated from as well as the cloned model asset that we need for instancing until instancing works without the dependencies to the asset ids.
* MeshComponentRequestBus returns the original asset id and the model asset. If you need access to the clone, go by the model.
* Cloth component mesh now gettings its model asset from the model as it needs to work on the clone.
* Moved the requires cloning function from the mesh loader in the mesh feature processor to the mesh component controller.
* As we need the model asset to be loaded before we can check if it requires cloning or not, we couldn't pass in a bool from the controller but had to use a callback.
* Using asset hint instead of asset id for the model lod asset creator error.
* Storing a map of source buffer asset ids and the actual cloned buffer assets rather than just their ids.
* Using the buffer assets from the new map directly and removed the search process in the mesh loop where the asset views are created.
* Fixed the vegetation mocks.
* Using the actor's mesh asset when emitting the on model ready event for the mesh component notification bus.
* Mesh components notifications connection policy changed to adapt to cloned model asset.
* Handling empty meshes in model lod asset creator.
* Removed the requires cloning callback from the mesh feature processor and made it a parameter to the acquire mesh function
* Fixing mocks and unit tests
2021-04-23 18:33:00 +02:00
alexpete 1044dc3da1 Integrating github/staging through commit ab87ed9 2021-04-09 11:27:37 -07:00
alexpete 36c4e827bd Integrating latest from github/staging
Integrating up through commit 5e1bdae
2021-03-26 14:32:02 -07:00
alexpete 75dc720198 Integrating latest 47acbe8 2021-03-25 13:57:57 -07:00
alexpete a10351f38d Initial commit 2021-03-08 14:30:57 -08:00