Commit Graph

51 Commits (f2378fc8d8afd9e97d2b51b0b09e62c70eb8b39b)

Author SHA1 Message Date
Guthrie Adams c6ba1ef064 Atom Tools: updated document and windows systems and buses to support multiple instances
• This change is partially to unblock physics tool prototyping. It introduces a tool ID that is passed down into systems and acts as a context for document, window, and other systems and buses.
• The document system component is no longer a component. It is just a system class that can be constructed with a tool ID. Internally, it will connect to its buses and be addressable by tool ID. More than one can be instantiated, each with a unique tool ID.
• These changes are still backward compatible because most of the buses were using broadcast for standalone applications. All of those calls have been updated but not all of the scripts, which should still work as is.
• Got rid of the window factory request bus in favor of just instantiating the main window or any other UI in the application layer.
• Fixed a couple of bugs that were discovered while making these changes.

Signed-off-by: Guthrie Adams <guthadam@amazon.com>
4 years ago
jromnoa fee95f3f5e
sandboxing the sponza level from the level test because it causes a hardlock 4%-12% of the time (#7513)
Signed-off-by: jromnoa <80134229+jromnoa@users.noreply.github.com>
4 years ago
Guthrie Adams c9c172794e Atom Tools: Document system exposes reflected object data
• This removes a direct dependency on dynamic property groups and data from the document system.
• Added support for names, descriptions, and nesting to dynamic property groups.
• Moved property related functions from base document classes into material editor document classes because dynamic property groups are an implementation detail of the material editor document to support material type flexible data format.
• Change material document to use a table of dynamic property groups instead of a map of properties.
• Added functions to traverse groups and properties.
• This keeps groups and properties organized consistently with the material type file as well as what’s expected in the UI.
• Document data can now be maps directly to the inspector reflective property editors instead of copying one property at a time out of the document and keeping those synchronized.

Signed-off-by: Guthrie Adams <guthadam@amazon.com>
4 years ago
Neil Widmaier 2ce9db972d Merge branch 'development' of https://github.com/aws-lumberyard/o3de into Neil_P0_updates 4 years ago
Scott Murray ad6392e364 decal P1 test for null renderer
Signed-off-by: Scott Murray <scottmur@amazon.com>
4 years ago
Neil Widmaier f1ad9ef0b8 Updated Light, Grid, and Physical Sky P0 tests
Signed-off-by: Neil Widmaier <nwidmaie@amazon.com>
4 years ago
jromnoa 312f5ad08f
Merge pull request #7092 from aws-lumberyard-dev/Atom/scottmur/P1_entity_reference
P1 Entity Reference Component tests
4 years ago
Neil Widmaier b83fc89c74 Making requested changes to LevelLoadTest
Signed-off-by: Neil Widmaier <nwidmaie@amazon.com>
4 years ago
Scott Murray b98b240a40 Entity Reference P1 initial tests
Signed-off-by: Scott Murray <scottmur@amazon.com>
4 years ago
Scott Murray 7694a29fa1 Material Editor tests for window pane function
Signed-off-by: Scott Murray <scottmur@amazon.com>
4 years ago
smurly 384e8aa863
Move Material Editor Basic test from sandbox to main suite (#6794)
* moving material editor test from sandbox to main suite

Signed-off-by: Scott Murray <scottmur@amazon.com>

* define TEST_DIRECTORY and add logging

Signed-off-by: Scott Murray <scottmur@amazon.com>
4 years ago
jromnoa 9038cdfcf9 fix merge conflict between constants in atom_constants.py
Signed-off-by: jromnoa <80134229+jromnoa@users.noreply.github.com>
4 years ago
jromnoa 9d6dc1ac63 add ATTENUATION_RADIUS_MODE constant with its 2 available options of automatic or explicit
Signed-off-by: jromnoa <80134229+jromnoa@users.noreply.github.com>
4 years ago
jromnoa ad3148ece5 add new enter_exit_game_mode_take_screenshot() shared function
Signed-off-by: jromnoa <80134229+jromnoa@users.noreply.github.com>
4 years ago
smurly e3306f948f
Atom Level component test support in editor_entity_utils.py and tests for level components (#6082)
* Level component helper and test cases for Atom Level components which currently crash

Signed-off-by: Scott Murray <scottmur@amazon.com>

* moved a close paren to end of previous line to match existing style

Signed-off-by: Scott Murray <scottmur@amazon.com>

* adding a forgotten import

Signed-off-by: Scott Murray <scottmur@amazon.com>

* minor refactor and prep for adding back the Display Mapper Game component test

Signed-off-by: Scott Murray <scottmur@amazon.com>

* putting Game compoenent Display Mapper test back with addition of setting property Enabled to true

Signed-off-by: Scott Murray <scottmur@amazon.com>

* typo in line fixed Test. bocomes Tests.

Signed-off-by: Scott Murray <scottmur@amazon.com>
4 years ago
jromnoa 97cd722ac1 remove shadowmap size calls to fix test, clean up some property value assignments for component tests
Signed-off-by: jromnoa <80134229+jromnoa@users.noreply.github.com>
4 years ago
sphrose 0e5c9c3867
Merge pull request #5908 from aws-lumberyard-dev/terrain/sphrose/reference_shape
LYN-7693 Rename and move vegetation reference shape.
4 years ago
jromnoa cc76ee58a7 update light component constant, fixed the return value for find_editor_entity(), removed old GPU test scripts, added new GPU test scripts
Signed-off-by: jromnoa <80134229+jromnoa@users.noreply.github.com>
4 years ago
jromnoa c8a5f1b3eb add Asset.id value to the Display Mapper docstring for LDR color grading LUT property
Signed-off-by: jromnoa <80134229+jromnoa@users.noreply.github.com>
4 years ago
jromnoa 79ac840246 add docstring info for the LDR color grading LUT property option for Display Mapper components
Signed-off-by: jromnoa <80134229+jromnoa@users.noreply.github.com>
4 years ago
sphrose bad38f5ed0 Missed python tests
Signed-off-by: sphrose <82213493+sphrose@users.noreply.github.com>
4 years ago
jromnoa ddd8dc6568 remove the optimized GPU test file and replace the existing GPU test file with the optimized tests, update atom_constants.py for the new Light component properties, add area light test script, still need to add spot light test script to fully finish this task
Signed-off-by: jromnoa <80134229+jromnoa@users.noreply.github.com>
4 years ago
jromnoa 91060efd46 add a LDR color Grading LUT property set step as part of the p0 test for the Display Mapper component
Signed-off-by: jromnoa <80134229+jromnoa@users.noreply.github.com>
4 years ago
jromnoa e89ec94c38 update CMakeLists.txt in preparation for removing the TestSuite_Main_GPU_Optimized file, add compare_screenshot_to_golden_image function, add hydra_AtomGPU_LightComponentScreenshotsMatch.py hydra script
Signed-off-by: jromnoa <80134229+jromnoa@users.noreply.github.com>
4 years ago
jromnoa 5d9f5ae15a
Merge pull request #5564 from aws-lumberyard-dev/Atom/jromnoa/fix-asset-path-calls-to-use-new-asset-test-class
Update asset files, & update golden image files to match new smaller asset file.
4 years ago
jromnoa 96b4212439 improve docstring descriptions for FOV degrees and Asset.id not asset paths for diff asset properties
Signed-off-by: jromnoa <80134229+jromnoa@users.noreply.github.com>
4 years ago
jromnoa 9edaa2172d move component descriptions above the property param in the docstrings
Signed-off-by: jromnoa <80134229+jromnoa@users.noreply.github.com>
4 years ago
jromnoa ad81c311d8 add some docstring descriptions for Cubemap Texture, Material Asset, Secondary Grid Spacing, & Field of View component properties
Signed-off-by: jromnoa <80134229+jromnoa@users.noreply.github.com>
4 years ago
Sean Masterson 35cb018d5c Add P0 Look Modification Test
Signed-off-by: Sean Masterson <semaster@amazon.com>
4 years ago
jromnoa 51cf98c23d update golden images for spot light and area light tests, update asset used
Signed-off-by: jromnoa <80134229+jromnoa@users.noreply.github.com>
4 years ago
jromnoa 99f1783138 Merge branch 'development' into Atom/jromnoa/fix-asset-path-calls-to-use-new-asset-test-class 4 years ago
jromnoa 6d206f6921 saving progress on test fixes to swap branches
Signed-off-by: jromnoa <80134229+jromnoa@users.noreply.github.com>
4 years ago
Sean Masterson 6242d1ee8e Added P0 test for Diffuse Probe Grid component
Signed-off-by: Sean Masterson <semaster@amazon.com>
4 years ago
jromnoa 35e1317d90 add new component property paths to mesh, material, camera, hdri_skybox, and global_skylight components
Signed-off-by: jromnoa <80134229+jromnoa@users.noreply.github.com>
4 years ago
Sean Masterson c0ece7d32d Update to atom_constants.py docstring
Signed-off-by: Sean Masterson <semaster@amazon.com>
4 years ago
Sean Masterson 708582731d Add P0 Deferred Fog Test
Signed-off-by: Sean Masterson <semaster@amazon.com>
4 years ago
Sean Masterson 64ab8d5956 Add P0 Bloom Test
Signed-off-by: Sean Masterson <semaster@amazon.com>
4 years ago
jromnoa cdf5a0519f
Merge pull request #5284 from aws-lumberyard-dev/Atom/semaster/add_hdr_colorgrading_p0
Test parallel P0  HDR Color Grading Component
4 years ago
Sean Masterson 68e2770caf Adding P0 Automation for HDR Color Grading Component
Signed-off-by: Sean Masterson <semaster@amazon.com>
4 years ago
jromnoa 5b0f345052 PR fixes to clean up syntax and variable names also to remove a change from another PR
Signed-off-by: jromnoa <80134229+jromnoa@users.noreply.github.com>
4 years ago
jromnoa a8efd5da95 add the correct paths for Light component test and use the 'Base' level instead of 'auto_test' level to resolve remaining issues with screenshot angles
Signed-off-by: jromnoa <80134229+jromnoa@users.noreply.github.com>
4 years ago
jromnoa 6d62dbba76 fixes the basic level GPU test screenshot comparison failure
Signed-off-by: jromnoa <jromnoa@amazon.com>
4 years ago
Scott Murray 0c7e732527 removing return type Union which is not supported
Signed-off-by: Scott Murray <scottmur@amazon.com>
4 years ago
Scott Murray 5bc334be70 updating docstrings for formatting and typos
Signed-off-by: Scott Murray <scottmur@amazon.com>
4 years ago
Scott Murray 9f7c80ce23 removing an extra blank line and fixing a docstring
Signed-off-by: Scott Murray <scottmur@amazon.com>
4 years ago
Scott Murray 5b70b2a8a9 reordering constant and class in file
Signed-off-by: Scott Murray <scottmur@amazon.com>
4 years ago
Scott Murray 268b9da857 atom constant component property class
Signed-off-by: Scott Murray <scottmur@amazon.com>
4 years ago
Artur K 80db67e90a
Remove many unused variables and unused setting files (#4607)
* Remove many unused variables and unused setting files

Signed-off-by: nemerle <96597+nemerle@users.noreply.github.com>

* Remove a few more dead config vars

Signed-off-by: nemerle <96597+nemerle@users.noreply.github.com>

* fix android test_ConfigureSettings_DefaultValues_SetsValues

Signed-off-by: nemerle <96597+nemerle@users.noreply.github.com>
4 years ago
jromnoa 02b6b1dbf4
First in set of PRs for adding parallel GPU test runs to Atom tests. (#4276)
* add remaining hydra code for test to run using new parallel test classes and interfaces
* fix return value of Secondary Grid Spacing property test for Grid Entity
* Add `or error_tracer.has_asserts` call for better error catching
* make `Tests.viewport_set` test check a `Report.critical_result()` check instead of `Report.result()` check
* add updates from PR feedback: makes constants for re-used component name strings, move test verifications into the Report() call instead of setting first then calling Report(), use builtin math.isclose function over custom function
* remove after_level_load() and split it into several function calls, add screenshot check, cleanup the GPU script and fix the rendering not displaying by setting global_extra_cmdline_args = []
* fixes the viewport Test check and splits up the helper functions into multiple functions
* add comment for global_extra_cmdline_args update in test and rename the zip file to f'screenshots_{formatted_timestamp}.zip'

Signed-off-by: jromnoa <jromnoa@amazon.com>
Co-authored-by: smurly <scottmur@amazon.com>
4 years ago
lumberyard-employee-dm f648cb1fd8
Update the FileIO Aliases (#4186)
* Update the FileIOAlias naming to make the cache, project root and engine
root paths more clear

The alias of `@root@`, `@assets@`, and `@projectplatformcache@` has been
collapsed to `@projectproductassets@`

The alias of `@devroot@` and `@engroot@` has been collapsed to
`@engroot@`

The alias of `@devassets@` and `@projectroot@` has been collapsed to
`@projectroot@`

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Updated use of devassets and devroot properties in python

Those properties now use projectroot and engroot

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Updating the alias @engroot@ alias path comment in each platform specific LocalFileIO_*.cpp file

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Removed hardcoded size of 9 for the product asset alias.

The ResolvePath function now just appends the @projectproductassets@
alias with the input path

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Remove duplicate @projectproductassets@ check in ProcessFileTreeRequest

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Fix for typos in Hydra python test

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Updated LocalFileIO::Copy call on Windows to use the Unicode aware CopyFileW API

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Updated the AWSMetreicsGemAllocatorFixture to properly suppress asset
cache write errors for Test file creation.

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Removed unneeded call to set the @projectproductasstes@ alias at the bottom of the AssetSeedManagerTest SetUp

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Added a deprecated alias map to the FileIO System

When a deprecated alias is accessed, the FileIO System logs an AZ_Error and indicates the alias that should be used

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Updated python test scripts to use the projectroot binding

Retrieving the AutomatedTesting project path based on "<devroot>/AutomatedTesting" has been removed.

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Updated references to devroot and devgame within the codebase

The GetAbsoluteDevGameFolderPath functions has been replaced with direct call to AZ::Utils::GetProjectPath
The GetAbsoluteDevRootFolderPath functions has been replaced with direct calls to AZ::Utils::GetEnginePath

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Updated <engroot>/AutomatedTesting references to projectroot


Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Replaced references that assumes the project path is <engroot>/AutomatedTesting with <projectroot> in the AutomatedTesting python test

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Correct casing in emfxworkspace file


Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Removed newly added AppendPathParts function
Removed the Path constructors which accepts a PathIterable instance

The PathIterable isn't safe to return to a user of the Path class as it might be referencing temporary paths supplied via PathView arguments

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Fixed unused parameter warning

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Undid change to the LexicallyProximate function to set the path result to the base path.

It needs to return the *this path if the pathResult is empty

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Moved the LocalFileIO ConvertToAbsolutePath implementations to AZ::Utils

Fixed the ConvertToAbsolutePath implementation for Unix platforms to use a buffer that is size PATH_MAX(4096 on all our supported Unix platforms).
Because the buffer before was AZ::IO::MaxPathLength which as a size of 1024, this was resulting in the Unix `realpath` function smashing the stack when it converts a path to an absolute path that is longer than 1024 characters

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Updated the EditorCore.Tests to attach the AZ Environment to the EditorCore shared library that is statically loaded on launch.

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Fixed for DeprecatedAlaisesKeyVisitor Visit function causing the non string_view overloads being hidden causing a hidden base class function warning

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Changed the AWSMetricsGemMock to use a temporary for writing test assets

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Updated the LocalFileIO::ResolvePath function to use HasRootPath to determine if a path starts with a root path such as "D:", "D:/" or "/"

IsAbsolute was not the corect check as the path of "D:" is a relative
path.
To be absolute according to the Windows the path must have a root
directory. i.e "D:/" or "D:\"

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Removed absolute path comment from LocalFile_UnixLike.cpp and LocalFile_Android.cpp FindFiles implementations
Updated the ConvertToAlias to supply an AZ::IO::FixedMaxPath

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Replaced usage of the @projectproductassets@ alias with @engroot@ when referring to the LmbrCentral source folder in the CopyDependencyBuilderTest and the SeedBuilderTests

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Updated the ScriptCanvas Upgrade Tool to output backed up files to the
Project User Path instead of the engine root

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Fixed whitespacing issues in Application.cpp

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Remove unnecessary creation of a FixedMaxPath in the UpgradeTool.cpp

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Modified testSeedFolder variable in the SeedBuilderTests to use the
@engroot@ alias instead of @projectproductassets@/.. alias when
referring to the LmbrCentral Gem source path

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Updated references to the Project Asset Cache in the PythonTests.

Those tests no longer use the logic `azlmbr.paths.projectroot / "Cache" / "pc"` to retrieve a path to the cache root but instead the `azlmbr.paths.projectproductassets` constant

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Fixed the FileIO Deprecated Alias test on Windows

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Removing @projectsourceassets@ alias, as it is only used once.

Updated the PhysX EditorSystemComponent.cpp to query the ProjectPath
form the SettingsRegistry.

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Replaced @projectproductassets@ alias with @products@

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Rollback changes to the PhysX EditorSystemComponent.cpp

The changes to use the ProjectPath from the SettingsRegistry has been implemented in PR #4497

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>
4 years ago