Commit Graph

457 Commits (1431afb51a08535a0ceabc22f11a55c0e5f5bb93)

Author SHA1 Message Date
lumberyard-employee-dm 18ea4ba6a8
Added a CriticalAssetsCompiled Lifecycle event (#6469)
The CriticalAssetsCompiled event can be handled to detect when the
AssetProcessor has finished processing Critical Assets

Also with the new event, an audit has been performed over all the
locations where the AssetCatalogEventBus OnCatalogLoaded event was being
handle to make sure it was the proper event to use.
If the handler was actually examing the enumerating over the full
catalog or querying all assets within the catalog, then it was a proper
use.
For handlers that were interested in a particular asset it was not

Moreover added implementations of `OnCatalogAssetChanged` and
`OnCatalogAssetAdded` to the FileTagComponent and the MaterialViewportComponent.

Any applications which uses the AtomToolsApplication
class(MaterialEditor, AtomSampleViewerStandalone,
ShaderMangementConsole) now signals a "CriticalAssetsCompiled" lifecycle
event as well as loads the "assetcatalog.xml" if it exists.

The Launcher application signals the "CrticalAssetsCompiled" event and
reloads the "assetcatalog.xml" for the ${project}.GameLauncher and
${project}.ServerLauncher in Launcher.cpp

Finally the Editor signals the "CriticalAssetsCompiled" and reloads the
"assetcatalog.xml" in CryEdit.cpp

resolves #6093

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>
4 years ago
Tom Hulton-Harrop d065eb9498
Initial improvements to fix viewport icon selection and draw order (#6284)
* wip fixes for entity viewport icons displaying in the correct order and handling selection correctly

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>

* add additional comment about z value

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>

* move manual sorting and some small tidy-up

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>

* update comment

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>

* updates following initial round of PR feedback

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>

* additional changes to support tests for entity icon intersection

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>

* add support to enable/disable icons separately from helpers

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>

* final tests added and small tidy-up to display EntityId correctly

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>

* update some manipulator test framework calls after utility functions were moved

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>

* fix for implicit cast

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>

* move icon scale values to AZ_CVARS

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>

* fix failing tests caught in AR and update some naming conventions for tests

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>

* update naming convention for members of ProjectedViewportRay

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>

* update other references to ProjectedViewportRay

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>

* update more references to ProjectedViewportRay change

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>

* update menus for python tests

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>
4 years ago
Guthrie Adams f8ca427954
Fixed several material editor bugs related to file paths and hot reload prompts (#6374)
* draft

Signed-off-by: Guthrie Adams <guthadam@amazon.com>

* Removes automatic generation of relative paths for external references for materials
Updated material editor functions for creating new materials, creating or saving model or lighting presets, to save to the project asset folder instead of the material folder which is not included in the new templates
Changed function for getting saved file names to handle case where Qt save file dialog adds double extensions if the extension contains a dot

Signed-off-by: Guthrie Adams <guthadam@amazon.com>

* Fixed problems with material editor hot reloading after documents or dependencies changed.
Triggering message boxes within the tick function, which is executed from the main application timer, caused the tick function to be called a second time recursively.
Switched from using the tick bus to a timer so that the documents re opening and dialogs are triggered outside of the main tick.

Signed-off-by: Guthrie Adams <guthadam@amazon.com>
4 years ago
Tom Hulton-Harrop 633a9e939a
Update modular viewport camera controller interface (#6282)
* update modular viewport camera controller interface to make follow behaviors easier

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>

* updates following PR feedback

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>
4 years ago
Guthrie Adams 1cef580cad Material editor asynchronously loads lighting and model presets
changed several sequential blocking loads into asynchronous loads to improve material editor startup time

Signed-off-by: Guthrie Adams <guthadam@amazon.com>
4 years ago
Guthrie Adams af75b3a52a Made clearing the log file optional and renamed the function
Signed-off-by: Guthrie Adams <guthadam@amazon.com>
4 years ago
Qing Tao f56bbb96b0
LYN-5843. Fixed an issue when exit from full screen game mode in Editor. (#6098)
* LYN-5843. Fixed an issue when exit from full screen game mode.

Signed-off-by: Qing Tao <55564570+VickyAtAZ@users.noreply.github.com>
4 years ago
Guthrie Adams 74cc3ccc20 Removing warnings from material editor viewport
Signed-off-by: Guthrie Adams <guthadam@amazon.com>
4 years ago
rgba16f 768a196b63
Add a way to set the vsync_interval CVar from code (#5813)
* Add a way to set the render vsync from code

Signed-off-by: rgba16f <82187279+rgba16f@users.noreply.github.com>

* Update change with PR feedback. Missing whitespace plus a comment on why the assignment is outside the value changed check

Signed-off-by: rgba16f <82187279+rgba16f@users.noreply.github.com>
4 years ago
Tom Hulton-Harrop 6908a3e945
Update intersect behavior for positioning entities in the viewport (#5906)
* update intersect behavior for positioning entities in the viewport and restore SurfaceManipulator

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>

* tests for surface manipulator from EditorTransformComponentSelection

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>

* update comments in tests and remove #pragma optimize('', off)@

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>

* add new file for FindClosestPickIntersection tests

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>

* add remaining tests for surface manipulator and snap fixes

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>

* some small updates and polish before PR

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>

* small updates following PR feedback

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>
4 years ago
Tom Hulton-Harrop b0c522be51
Rename QtEventToAzInputManager.h/cpp to QtEventToAzInputMapper.h/cpp (#5905)
* rename QtEventToAzInputManager.h/cpp to QtEventToAzInputMapper.h/cpp to match type name

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>

* update #includes to refer to QtEventToAzInputMapper.h

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>
4 years ago
Tom Hulton-Harrop 5bd751531d
Update return type for viewport screen functions (#5803)
* update return type for viewport screen functions

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>

* add tests for AZ::Matrix3x4::CreateFromMatrix4x4 and add TransformPoint to Matrix3x4

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>

* update NDC -> Ndc

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>

* updates following review feedback

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>

* updates and improvements following PR feedback

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>

* add forward declaration of Matrix3x4 type

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>

* update where forward declarations are defined for Matrix3x4

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>
4 years ago
puvvadar 3cfb94009e Merge commit 'ca6b7d1d1f6659f5711677482f688ac35c95bf8e' into puvvadar/gitflow_211118_o3de 4 years ago
puvvadar 5e0acc11ef Merge commit 'b533a9566a0a221dd4f70486ab2a3d397bcae5c7' into puvvadar/gitflow_211118_o3de 4 years ago
puvvadar 724ff3b011 Merge commit 'd222aeef48ad10224958e682294e704c10ee06df' into puvvadar/gitflow_211118_o3de 4 years ago
puvvadar b37f75f060 Merge commit '713a3916f5c101c324f8e2f2e06b49bf521da783' into puvvadar/gitflow_211118_o3de 4 years ago
puvvadar 59744429f9 Merge commit '1457ef6ee9f0e18b3fcebdb0c7c19b2cac5a19ed' into puvvadar/gitflow_211118_o3de 4 years ago
puvvadar 33cb674355 Merge commit 'e34ea3bcaa0306699804072c6bce6eb01f65fc52' into puvvadar/gitflow_211118_o3de 4 years ago
puvvadar 4c8bb5694b Merge commit '593f03efb4996ae8bb8e1f53a55e2ba00e022449' into puvvadar/gitflow_211118_o3de 4 years ago
puvvadar 07e99650d0 Merge commit 'a6164ca2cd3f573fd7735c3825568b1e25b12c2b' into puvvadar/gitflow_211118_o3de 4 years ago
Tom Hulton-Harrop ca6b7d1d1f
Add test for ViewportInteractionImpl use of ViewportInteractionRequestBus (#5741)
Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>
4 years ago
Tom Hulton-Harrop b533a9566a
Fix for viewport not updating correctly when switching camera views (#5719)
Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>
4 years ago
santorac 2774ac1811 Merge branch 'stabilization/2110' into Atom/santorac/MaterialEditorHandlesMissingTextures 4 years ago
Guthrie Adams 713a3916f5
Merge pull request #5691 from aws-lumberyard-dev/Atom/guthadam/material_editor_viewport_settings_previews_uses_thumbnail_widget
Replacing material editor lighting preset selection dialog exr previews with lighting preset thumbnails
4 years ago
santorac be9db80f99 Merge branch 'stabilization/2110' into Atom/santorac/MaterialEditorHandlesMissingTextures 4 years ago
Mike Balfour aaafb3ee34
Guard against creating a PreviewRenderer with uninitialized RPI. (#5708)
This was causing the SerializeContextTools executable to crash.

Signed-off-by: Mike Balfour <82224783+mbalfour-amzn@users.noreply.github.com>
4 years ago
Guthrie Adams 1457ef6ee9
Merge pull request #5692 from aws-lumberyard-dev/Atom/guthadam/throttle_material_editor_updates_when_inactive
Reduce material editor update interval when inactive
4 years ago
Tom Hulton-Harrop e34ea3bcaa
Fixes for viewport selection issues (#5494)
* improvements to editor selection in the viewport

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>

* fix issue with being able to select icons that are not showing for entities inside entity containers

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>

* update comment after review feedback

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>

* updates to viewport picking code to simplify the api

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>

* add test to replicate near clip intersection issue

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>

* small tidy-up changes

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>

* updates to how we perform world to screen and screen to world calculations, added test coverage and some tidy-up

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>

* add some more tests for ViewportInteractionImpl

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>

* minor tweaks before PR feedback

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>

* fix typo in fix

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>

* fix for manipulator test framework tests

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>

* updates to RPI::View and RenderPipeline after review feedback from VickyAtAZ

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>

* add constexpr to ScreenPoint, ScreenVector and ScreenSize initializing constructors

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>

* add PrintTo functions for Screen* types

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>

* downgrade error to warning temporarily

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>

* check incoming view is null

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>

* remove pragma optimize off

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>
4 years ago
Tommy Walton 1e42261d76 Merge remote-tracking branch 'upstream/development' into amzn-tommy/gitflow_211116_o3de2
Signed-off-by: Tommy Walton <waltont@amazon.com>
4 years ago
Guthrie Adams 72de78bb83 Reduce material editor update interval when inactive
Reduce the application update interval when it’s not in focus to reduce power consumption and interference with other applications

Signed-off-by: Guthrie Adams <guthadam@amazon.com>
4 years ago
Guthrie Adams cb552256f8 Moved asynchronous image loading function to atom tools framework
Moved settings registry wrapper function to atom tools framework
Created registry settings with default values for preview configurations based on asset type
Changed lighting preset previews and thumbnails to use reflective material
Created registry settings for preset selection dialog borders, padding, sizes
Updated shared preview utility functions to compare against registered asset types instead of passing them in individually

Signed-off-by: Guthrie Adams <guthadam@amazon.com>
4 years ago
Tom Hulton-Harrop 593f03efb4
Camera fixes follow-up (#5703)
* allow unconstrained camera when tracking transform and fix some camera interpolation issues

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>

* tests for interpolation fixes

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>

* add test for camera constraints change

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>

* updates following review feeedback

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>
4 years ago
Guthrie Adams 88569948e3 Changed preset selection dialog widget headings to not overlap preview images
Signed-off-by: Guthrie Adams <guthadam@amazon.com>
4 years ago
Guthrie Adams 5311878e87 Replacing preset preview images with thumbnail widget to improve load times
Signed-off-by: Guthrie Adams <guthadam@amazon.com>
4 years ago
AMZN-AlexOteiza e07cb1f2ed
Re-enabled linux tests physics (#5701)
* Re-enabled linux tests physics

* Fix for python load errors on Linux (#5627)

* Explicitly load libpython on Linux

Downstream loads of python modules that weren't linked to libpython would
fail to load because libraries were loaded using the RTLD_LOCAL flag.  This
adds a function that will explicitly load libpython on Linux using the
RTLD_GLOBAL flag.

Signed-off-by: amzn-phist <52085794+amzn-phist@users.noreply.github.com>

* Fix misspelled function name

Signed-off-by: amzn-phist <52085794+amzn-phist@users.noreply.github.com>

* Addressing PR feedback

- Updates naming and location of things.
- Adds load code to a Gem template.
- Updates error checking.

Signed-off-by: amzn-phist <52085794+amzn-phist@users.noreply.github.com>

* Address further feedback

Removes the api function in favor of just having modules inherit off a
PythonLoader class, that way we get RAAI behavior and lifetime management
for free.

Signed-off-by: amzn-phist <52085794+amzn-phist@users.noreply.github.com>
Signed-off-by: aljanru <aljanru@amazon.co.uk>

Co-authored-by: amzn-phist <52085794+amzn-phist@users.noreply.github.com>
4 years ago
Tom Hulton-Harrop a6164ca2cd
Fix for camera roll behavior when in 'Be this camera' mode (#5658)
* fix for camera roll behavior when in 'Be this camera' mode

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>

* updates for camera tests

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>

* fix for failing unit test - require default function

Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>
4 years ago
santorac cdb38251d8 Fixed an issue that prevented saving child materials with explicitly empty texture properties.
Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
4 years ago
amzn-phist 6651ae3d78
Fix for python load errors on Linux (#5627)
* Explicitly load libpython on Linux

Downstream loads of python modules that weren't linked to libpython would
fail to load because libraries were loaded using the RTLD_LOCAL flag.  This
adds a function that will explicitly load libpython on Linux using the
RTLD_GLOBAL flag.

Signed-off-by: amzn-phist <52085794+amzn-phist@users.noreply.github.com>

* Fix misspelled function name

Signed-off-by: amzn-phist <52085794+amzn-phist@users.noreply.github.com>

* Addressing PR feedback

- Updates naming and location of things.
- Adds load code to a Gem template.
- Updates error checking.

Signed-off-by: amzn-phist <52085794+amzn-phist@users.noreply.github.com>

* Address further feedback

Removes the api function in favor of just having modules inherit off a
PythonLoader class, that way we get RAAI behavior and lifetime management
for free.

Signed-off-by: amzn-phist <52085794+amzn-phist@users.noreply.github.com>
4 years ago
Tommy Walton d614ff17d6 Merge commit '3d84876e87a3c28a420d74c19606d1fbe5c703d3' into amzn-tommy/gitflow_211116_o3de2 4 years ago
santorac ebc92c5b08 Restored a bit of error checking that appears to have been removed by mistake, in MaterialPropertyUtil ConvertToExportFormat(). This is important for the missing texture use cases, because this error checking is what will prevent the Material Editor from silently replacing a broken texture reference with no texture reference.
Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
4 years ago
santorac 9f7815fa04 Fixed up a couple incorrectly or incompletely resolved merge conflicts.
Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
4 years ago
santorac db3d41ad9d Merge remote-tracking branch 'upstream/stabilization/2110' into Atom/santorac/MaterialEditorHandlesMissingTextures 4 years ago
santorac 224e0bd20f Removed the 'data-warnings' concept for checking before saving a material document. It's no longer necessary since we no longer replace the original data with placeholders.
Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
4 years ago
santorac 7d849cc0d2 Changed the overall strategy for how to handle missing image references. Instead of replacing it with one of the placeholder assets, we replace it with an random UUID which will be interpreted as a missing asset (unless some discovers discovers a UUID collision). This eventually gets replaced by one of the placeholder textures at runtime. This approach gives more consistent results in how missing texture are handled between Material Editor and Material Component.
I actually tried this approach before and it didn't seem to work the way we needed, but I realized that's because PropertyAssetCtrl wasn't handling missing assets properly. I fixed a few issues there including showing the error button when the asset can't be found, and fixing a broken reference to the error icon file.

Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
4 years ago
Guthrie Adams d9746647e1 Bug fix for material editor not taking focus when opening a new document from the main editor or outside of the material editor
Signed-off-by: Guthrie Adams <guthadam@amazon.com>
4 years ago
amzn-sean 38a03817bb
Removal and Replacement of the CryTimer (gEnv->pTimer) (#5409)
Replaced and removed the CryTimer (gEnv->pTimer). The new TimeSystem is a merger of the current time functionality found in the engine.

* Rename TimeSystemComponent.h/.cpp to TimeSystem.h/.cpp
* Adding New TimeSystem
* remove old timer cvars
* small improvements to the time system.
 - updated parts to use the time conversion functions.
 - in AdvanceTickDeltaTimes applying t_simulationTickScale is now uses doubles instead of floats.
* Replace gEnv->pTimer / ITimer usages with TimeSystem
* Updating usages of AZ::TimeMs{ 0 } and AZ::TimeUs{ 0 } to AZ::Time::ZeroTimeMs and AZ::Time::ZeroTimeUs
* red code the CryTimer
* using TimeUs instead of TimeMs is some cases + updating usages of old cvars to new

Signed-off-by: amzn-sean <75276488+amzn-sean@users.noreply.github.com>
4 years ago
Guthrie Adams 198f225bbe Updating parent path usage has part of cherry picked from stabilization combining source data changes with relative path changes
Signed-off-by: Guthrie Adams <guthadam@amazon.com>
4 years ago
Guthrie Adams 172ec938cc moved AssetSystemStub to TestUtils folder
Signed-off-by: Guthrie Adams <guthadam@amazon.com>
4 years ago
Guthrie Adams 01ce02ffec Added basic unit test for relative path function
Moved asset system stub to RPI utils

Signed-off-by: Guthrie Adams <guthadam@amazon.com>
4 years ago
Guthrie Adams 7d51912a6e updated comments
Signed-off-by: Guthrie Adams <guthadam@amazon.com>
4 years ago