There was a change in bahaviour to how files/directories were collected in the AZ::IO::FindData::Scan* functions which allowed the addition of duplicate entries. This created a problem when attempting a recursively greedy search with zips included because of the level system pak files. Their mount points would be the root "levels" folder, so for N-levels there would be N identical entries to the "levels" folder being added perpetually each time ScanZips was called on the "levels" folder or above folders with "*" filtering.
Letting the editor sit idle no longer sees the reported memory in the bottom status bar climb. Also, running the tests which prompted the initial change shows a negligible change in perf.
Signed-off-by: AMZN-ScottR 24445312+AMZN-ScottR@users.noreply.github.com
* [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>
Porting over @AMZN-daimini 's work to clean up unneeded data from prefabs by removing cached transform data from json serialization. This is done by writing an explicit json serializer for the Editor Transform component and opting not to store or load the cached Transform fields.
Tested by creating new prefabs, loading and as well as resaving old prefabs which included patches aimed at cached transform data.
Signed-off-by: sconel <sconel@amazon.com>
Fixed unresolved product dependency query to be able to handle much larger queries (tested with 100,000 products) by storing queried products in a temp table first
Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>
* Upgrade s_AudioLoggingOptions to AZ_CVAR
Removes this legacy CVar and reimplements it as an AZ_CVAR with similar
functionality of setting flags using alpha characters.
Signed-off-by: amzn-phist <52085794+amzn-phist@users.noreply.github.com>
* Upgrade s_DrawAudioDebug to AZ_CVAR
Removes the legacy CVar and reimplements it as an AZ_CVAR with similar
functionality and options.
Additional updates to the logging options CVar to fix up flag enums.
Signed-off-by: amzn-phist <52085794+amzn-phist@users.noreply.github.com>
* Upgrade s_FileCacheManagerDebugFilter to AZ_CVAR
Removes the legacy CVar and reimplements it as an AZ_CVAR with similar
functionality.
Signed-off-by: amzn-phist <52085794+amzn-phist@users.noreply.github.com>
* Removal of legacy IConsole dependencies from Audio
Moves a g_languageAudio cvar from CrySystem to AudioSystem.
Convert all cvar commands to AZ_CONSOLEFREEFUNC's.
Remove IConsole.h includes from source files.
Removes the CSoundCVars class.
Signed-off-by: amzn-phist <52085794+amzn-phist@users.noreply.github.com>
* Minor update to cvar comments etc.
Signed-off-by: amzn-phist <52085794+amzn-phist@users.noreply.github.com>
* Clear build and Cache directories when copying or moving projects
Signed-off-by: nggieber <nggieber@amazon.com>
* Updated tests for moving projects and Added tests for copying projects and skipping build files
Signed-off-by: nggieber <nggieber@amazon.com>
* Address PR feedback and fix a few minor UX issues, and request project be rebuild after copying or moving
Signed-off-by: nggieber <nggieber@amazon.com>
* Include ProjectInfo.h in ProjectUtils.h so linux will compile
Signed-off-by: nggieber <nggieber@amazon.com>
* Determine the original vertex index based on the position
The Assimp library does not expose the FBX control point indices. This
change causes vertices that are close enough in their position to be
considered as coming from the same control point. This allows the mesh
optimizer to consider vertices with the same control point index (or
"original vertex index" as it is called in the code) for deduplication.
Signed-off-by: Chris Burel <burelc@amazon.com>
* Use a filter view instead of reimplementing a filter view
Signed-off-by: Chris Burel <burelc@amazon.com>
* Don't attempt to weld similar vertices if there's blendshapes
Signed-off-by: Chris Burel <burelc@amazon.com>
* Add test for the mesh optimizer's ability to weld nearby vertices
Signed-off-by: Chris Burel <burelc@amazon.com>
* Add logging call to show mesh optimizer effect on vertex count
Signed-off-by: Chris Burel <burelc@amazon.com>
* Use a bunch of temporaries in order to make `position` `const`
Signed-off-by: Chris Burel <burelc@amazon.com>
* Supply the vertex index remapping to the optimized skin weights
This ensures that the optimized skin weights use the vertex indexes from
the optimized mesh
Signed-off-by: Chris Burel <burelc@amazon.com>
* Update the Mac Editor plist application bundle identifier to be different than Lumberyard
Fix the editor to have runtime dependencies on the scene modules.
Signed-off-by: rgba16f <82187279+rgba16f@users.noreply.github.com>
* Fix Metal RHI calling unsupported timestamp query api on M1 Macs.
Add Query for Timestamps supported on device initialization.
Signed-off-by: rgba16f <82187279+rgba16f@users.noreply.github.com>
* Remove AZ::Scene* runtime dependencies from EmotionFX gem and add AZ::SceneUI as a runtime dependency of SceneProcessing::Editor module.
Signed-off-by: rgba16f <82187279+rgba16f@users.noreply.github.com>