Commit Graph

8122 Commits

Author SHA1 Message Date
Benjamin Jillich d394f6da3c EMotion FX: AnimGraphNode::CalcSyncFactors crashes because of improper MCORE_INVALIDINDEX32 initialization (#4869)
Signed-off-by: Benjamin Jillich <jillich@amazon.com>
2021-10-22 09:22:19 +02:00
santorac a55d94217c Enable material version updates
Merge pull request #4338 from aws-lumberyard-dev/Atom/rbarrand/MaterialVersionUpdate

## Overview

Added support for automatically updating .material files when the property layout of the .materialtype changes. At this stage, we only support a "rename" operation for renaming or moving material properties. We can add more operations in the future if needed (this will require some improvement to how we represent the data internally, but we can deal with that as the need arises).

It's important to note that we currently have a hybrid dependency model for the material system, where materials can depend on materialtypes as job dependencies (property names are processed at asset build time), or material property names can be stored in the cooked assets (property names are processed and resolved at runtime when loading material assets). This means there are two places where we need to apply material property rename auto-updates: in the tools and in the runtime. So you will find that we have ApplyVersionUpdates() functions in both MaterialSourceData and MaterialAsset. (I hope we can move away from this hybrid approach at some point so this can all be simplified, but that depends on new Asset Processor features we don't have yet).

## Main changes
- Added version and versionUpdates structures for .materialtype files, MaterialTypeSourceData, MaterialTypeAssetCreator, etc.
- The .materialtype version number is now at the top level instead of inside the propertyLayout section, because in the future there are other ways the material type could change besides the property layout which might require version auto-updates. (The AP will fail if the version is found in the old location, and tell the user where it should be moved).
- Added ApplyVersionUpdates() and ApplyPropertyRenames() utility functions to facilitate the auto-updates.
- Updated MaterialTypeSourceData::FindProperty(name) to support renames because it must find the property data while loading .material files in order to resolve property data types.
- These new functions will report warnings when they detect that source files are out of date, and recommend the user update them. The easiest way to do this is open it in the Material Editor and save. (which can be scripted in python if necessary)
- Renamed the .material file format "propertyLayoutVersion" to "materialTypeVersion" which is more accurate. This shouldn't hurt existing data as this field wasn't actually used for anything before.

## Unit test improvements
- The new code is well unit tested.
- MaterialSourceDataTests 
  - Updated to include both a .materialtype file and a MaterialTypeAsset for the test material type. Both are used by the MaterialTypeSourceData class.
  - The default test material type now includes some version update steps; these are only used for version update tests and won't impact the other test functions.
  - Updated the path for storing temp files to disk, to just be in a "temp" folder in the exe path. (Originally they were saved to the gem folder near MaterialSourceDataTests.cpp, but at some point someone changed it to be under the exe folder, so there's no reason to use the full gem path anymore).

## Other changes
- Fixed AzCore Utils WriteFile() to create the file if it doesn't exist already.
- Updated all .materialtype files to have the version number in the new position.
- Fixed AssetSystemStub to normalize asset paths for more reliable lookup in unit tests.
2021-10-21 20:48:26 -07:00
Chris Galvan cd9a372b7f Merge pull request #4890 from aws-lumberyard-dev/cgalvan/AddPythonQtHelperMainWindow
Added helper method to az_qt_helpers for retrieving the main window instance.
2021-10-21 21:03:34 -05:00
Jonny Galloway b779f358d0 Refactor DCCsi to work better with O3DE changes (#4226)
* moving files in refactor/re-org

Signed-off-by: Jonny Gallowy <gallowj@amazon.com>

* dev env refactor/re-org

Signed-off-by: Jonny Gallowy <gallowj@amazon.com>

* moving/re-org so we can deprate the SDK nomiclature

Signed-off-by: Jonny Gallowy <gallowj@amazon.com>

* moving/re-org so we can deprate the SDK nomiclature

Signed-off-by: Jonny Gallowy <gallowj@amazon.com>

* Refactoring env so I can replace SDK with Tools folder

Signed-off-by: Jonny Gallowy <gallowj@amazon.com>

* re-org and prune, from SKD to Tools

Signed-off-by: Jonny Gallowy <gallowj@amazon.com>

* Removing old .bat files from SDK

Signed-off-by: Jonny Gallowy <gallowj@amazon.com>

* updated how to retreive PYTHONHOME

Signed-off-by: Jonny Gallowy <gallowj@amazon.com>

* Can't use/set PYTHONHOME with DCC Tools

Signed-off-by: Jonny Gallowy <gallowj@amazon.com>

* small refactor

Signed-off-by: Jonny Gallowy <gallowj@amazon.com>

* repaired a missed typo (causes error)

Signed-off-by: Jonny Gallowy <gallowj@amazon.com>

* Added missing EntityId.h include to FocusModeInterface.h

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

* refactor additional LY to O3DE tags

Signed-off-by: Jonny Gallowy <gallowj@amazon.com>

* Some design scaffold file stubs

Signed-off-by: Jonny Gallowy <gallowj@amazon.com>

* stubbing in scaffold file pattern

Signed-off-by: Jonny Gallowy <gallowj@amazon.com>

* Removal of corrupted prefabs

Signed-off-by: Benjamin Black <benblac@amazon.com>

* refactored config_utils to maintain py2.7 support for maya 2020

Signed-off-by: Jonny Gallowy <gallowj@amazon.com>

* refactored config_utils to maintain py2.7 support for maya 2020

Signed-off-by: Jonny Gallowy <gallowj@amazon.com>

* pruning and cleanup

Signed-off-by: Jonny Gallowy <gallowj@amazon.com>

* .env is for local dev overrides

Signed-off-by: Jonny Gallowy <gallowj@amazon.com>

* .env is for local dev overrides

Signed-off-by: Jonny Gallowy <gallowj@amazon.com>

* clean up init and logging patterns

Signed-off-by: Jonny Gallowy <gallowj@amazon.com>

* Core refactoring, config.py functional standalone

Signed-off-by: Jonny Gallowy <gallowj@amazon.com>

* cleaned up some bad logging, fixed up boostrap

Signed-off-by: Jonny Gallowy <gallowj@amazon.com>

* fixed validation errors

Signed-off-by: Jonny Gallowy <gallowj@amazon.com>

* fix logging issue, tiddy up

Signed-off-by: Jonny Gallowy <gallowj@amazon.com>

* tiddy up maya for .bat bootstraping and launch

Signed-off-by: Jonny Gallowy <gallowj@amazon.com>

* name stub, fix validation

Signed-off-by: Jonny Gallowy <gallowj@amazon.com>

Co-authored-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>
Co-authored-by: Benjamin Black <benblac@amazon.com>
2021-10-21 17:03:49 -07:00
santorac a4321baecc Hopefully fix a Jenkins build failure about "function cannot access 'AZ::RPI::MaterialVersionUpdate::RenamePropertyAction::m_fromPropertyId'"
Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
2021-10-21 17:00:06 -07:00
santorac 19dee0e37c Merge branch 'development' into Atom/rbarrand/MaterialVersionUpdate 2021-10-21 15:57:57 -07:00
AMZN-Phil 50068bcae7 Merge pull request #4807 from aws-lumberyard-dev/GemUIDownload
First part of UI feedback for downloading gems
2021-10-21 15:11:16 -07:00
Chris Galvan 081bfc2530 Added helper method to az_qt_helpers for retrieving the main window instance.
Signed-off-by: Chris Galvan <chgalvan@amazon.com>
2021-10-21 17:06:12 -05:00
jromnoa 6c1b2fa84c Merge pull request #4883 from aws-lumberyard-dev/Atom/jromnoa/fix-atom-testsuite-main-gpu-AR-logs
Fix log lines in main GPU tests for Atom
2021-10-21 14:43:30 -07:00
Nicholas Van Sickle f3af362ede Merge pull request #4838 from aws-lumberyard-dev/LYN-7562
Make safe asset folder comparison for prefab creation to be case insensitive
2021-10-21 14:37:53 -07:00
AMZN-AlexOteiza ea442b80d1 Renamed ctest_pytest.ini to pytest.ini so it is used by default, added TestSuite_ as collection file (#4822)
* Fixed warnings of unused marks, renamed ctest_pytest.ini to pytest.ini to better consistency on runs

* Fixed some test suites to run propertly

* Fix missing arguments

* Fixed missing cmakelists and renamed missing file

* Temp disable editor_testing_tests as timeout in jenkins
2021-10-21 22:03:18 +01:00
AMZN-Phil 89c7ab2405 Merge pull request #4849 from aws-lumberyard-dev/AddLocalRepoFix
Fix adding local repos
2021-10-21 13:50:11 -07:00
Danilo Aimini 52112be1ac LYN-7448 + LYN-7542 + LYN-7543 | Focus Mode - UX Improvements (#4837)
* Introduce Outliner button to simplify Prefab editing

Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>

* Fix Focus Mode and disabled entities colors

Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>

* Fix - propagate the event if the OnOutlinerItemClick function returns false.
This does not change current behavior but makes more sense in the context of future handlers.

Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>

* Adjust disabled colors to match UX recommendations.

Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>

* Display the edit button even if the prefab is disabled. Remove prefabWip check (it will be removed for focus mode by the time this goes in). Default to disabled capsule color for borders to save on checks.

Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>

* Disable edit button on disabled prefabs as it caused conflicts in nested prefabs. May explore that possibility later.

Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>

* Change disabled text color to be darker, as asked by UX.

Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
2021-10-21 13:43:21 -07:00
amzn-phist 50f66bde69 Remove the use of a .Stub version of the Wwise Gem (#4879)
* Remove the definition of a 'Stub' Wwise Gem

This removes the conditional compilation of a '.Stub' version of the
Wwise Gem.  Now, all we do is not define any of the AudioEngineWwise
targets in CMake whenever Wwise is not available (SDK not found or
platform unsupported).

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

* Remove the remaining stub files, no longer needed

This removes the files.cmake and stub module cpp files that made up the
.Stub version of this Gem.  These are no longer needed.

Signed-off-by: amzn-phist <52085794+amzn-phist@users.noreply.github.com>
2021-10-21 15:38:56 -05:00
santorac 7ffcbe080e Updated Material Editor's MaterialDocument to apply version updates to the materials that it opens.
Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
2021-10-21 13:23:18 -07:00
AMZN-Phil 24d7a90e5f Fix a warning
Signed-off-by: AMZN-Phil <pconroy@amazon.com>
2021-10-21 13:01:46 -07:00
santorac b32a6a1369 Reverted accidental change to StandardPBR.material type's color property name.
Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
2021-10-21 12:52:28 -07:00
jromnoa 94f54e8586 re-add the 'Captured data successfully.' log line to test_AtomFeatureIntegrationBenchmark() test, removed on accident
Signed-off-by: jromnoa <jromnoa@amazon.com>
2021-10-21 12:52:05 -07:00
Steve Pham 244878483a Update open file limit on linux for applications (#4878)
* Programmatically update the ulimit for open files if the current limit is not enough

Signed-off-by: Steve Pham <spham@amazon.com>
2021-10-21 12:40:10 -07:00
AMZN-Phil c4f5f01657 Merge remote-tracking branch 'upstream/development' into GemUIDownload 2021-10-21 12:39:36 -07:00
jromnoa 3fc32675fd removes general.log() checks for pass/fail status as these do not appear in AR and only appear locally
Signed-off-by: jromnoa <jromnoa@amazon.com>
2021-10-21 12:39:09 -07:00
santorac f4d5a75574 Fixed an issue where the wrong version number was being reported in a warning message. It showed the latest version instead of the original version number.
Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
2021-10-21 12:13:45 -07:00
chiyenteng 7316802941 Add Detach and Duplicate Prefab basic workflow auto test (#4506)
- Add a new automated test PrefabBasicWorkflow_CreateReparentAndDetachPrefab for verifying prefab detachment basic workflow.
- Add a new automated test PrefabBasicWorkflow_CreateAndDuplicatePrefab for verifying prefab detachment basic workflow.
- Fix a bug related to sets of entity ids in Reparent helper function .
2021-10-21 12:08:00 -07:00
hershey5045 68b585102e Re-order some color grading operations. Increase values for SMH to account for HDR colors. (#4856)
Signed-off-by: rbarrand <rbarrand@amazon.com>

Co-authored-by: rbarrand <rbarrand@amazon.com>
2021-10-21 12:06:46 -07:00
srikappa-amzn 33490ed6df Avoided a string copy by using path view
Signed-off-by: srikappa-amzn <srikappa@amazon.com>
2021-10-21 11:42:41 -07:00
Adi Bar-Lev 64bbc700fa Hair - ShortCut rendering technique and pipeline with Marschner lighting model (#4871)
- This rendering technique reduces the memory required per pipeline by 750MB compared to the PPLL technique!!
- Using 3 screen buffers representing the closest 3 hair gragments depths.
- Going through second geometry pass that disqualify any fragment further than the third depth, the technique blends the three closes shaders hair fragments.
- Supports the Marschner lighting model (big change from the original TressFX 4.1 implementation)
- The current technique is almost twice the performance of the PPLL but not quite as advacned when come to final visual quality.

Remarks:
Unlike the PPLL, this technique is still lacking some of the advanced features added to the PPLL such as
1. Back lobe (TT) conseal by depth comparison
2. Thickness dependency in light transfer (mainly TT)
3. Allowing TT transfer for thin separated hair strands (might be supported by default with no distinction)

Signed-off-by: Adi-Amazon <Adi Bar-Lev 82479970+Adi-Amazon@users.noreply.github.com>
Signed-off-by: Adi-Amazon <Adi Bar-Lev barlev@amazon.com>
Signed-off-by: Adi-Amazon <Adi Bar-Lev 82479970+Adi-Amazon@users.noreply.github.com>
Signed-off-by: Adi-Amazon <Adi Bar-Lev barlev@amazon.com>

Co-authored-by: Adi-Amazon <Adi Bar-Lev 82479970+Adi-Amazon@users.noreply.github.com>
2021-10-21 14:29:53 -04:00
santorac bf2997f960 Merge remote-tracking branch 'upstream/development' into Atom/rbarrand/MaterialVersionUpdate 2021-10-21 11:14:03 -07:00
Chris Galvan 546102077f Merge pull request #4875 from aws-lumberyard-dev/cgalvan/RemoveLegacyColorGradient
Removed legacy ColorGradientCtrl
2021-10-21 13:14:01 -05:00
santorac f83b6594c9 Updated MaterialTypeSourceData to force users to move the "version" indicator to the new location at the top level of the json document.
(It's a simple enough change to make manually, and making .materialtype is an uncommon workflow, so not worth doing this automatically).

Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
2021-10-21 11:05:47 -07:00
Scott Romero e008ba8579 [development] Fixed Profiler ImGui module name when building monolithic (#4848)
Signed-off-by: AMZN-ScottR <24445312+AMZN-ScottR@users.noreply.github.com>
2021-10-21 10:22:24 -07:00
AMZN-Phil bc9f6be4cf Change repo_uri passed into register repo to always be a str
Signed-off-by: AMZN-Phil <pconroy@amazon.com>
2021-10-21 10:11:18 -07:00
AMZN-Phil a032c59eab Removing unused function
Signed-off-by: AMZN-Phil <pconroy@amazon.com>
2021-10-21 09:39:15 -07:00
AMZN-Phil 2809c3b7ed Removing unused variables and defines and some renaming
Signed-off-by: AMZN-Phil <pconroy@amazon.com>
2021-10-21 09:35:03 -07:00
jckand-amzn 3a6cc2498b Skipping GraphUpdate test due to LC node issue in Debug configuration (#4847)
* Skipping GraphUpdate test due to LC node issue in Debug configuration

Signed-off-by: jckand-amzn <jckand@amazon.com>

* Reverting test type for GraphUpdates test to EditorSharedTest

Signed-off-by: jckand-amzn <jckand@amazon.com>

* Updating xfail reason for GraphUpdates test with GitHub issue link

Signed-off-by: jckand-amzn <jckand@amazon.com>
2021-10-21 09:16:48 -07:00
SJ c871224dae Support for importing Json files (#4609)
* Initial support for importing Json files within other Json files

Signed-off-by: amzn-sj <srikkant@amazon.com>

* Add some test cases for testing/iterating on the Json import work. Fix MacOS AzTestRunner module loading bug.

Signed-off-by: amzn-sj <srikkant@amazon.com>

* The import resolver can take the allocator as a parameter to Load/StoreImports() instead of storing a copy.

Signed-off-by: amzn-sj <srikkant@amazon.com>

* Fix assert

Signed-off-by: amzn-sj <srikkant@amazon.com>

* Some rework of the JsonImport feature. Base test cases pass. More complex test cases need to be added.

Signed-off-by: amzn-sj <srikkant@amazon.com>

* 1. Add test case for testing nested imports.
2. Initialize rapidjson value to fix assert.
3. Fix bug found in merge patch creation.

Signed-off-by: amzn-sj <srikkant@amazon.com>

* 1. Update the Resolver class member functions to return proper result codes.
2. Add the wrapper functions for resolving/restoring imports to the JsonSerialization class.
3. Add new test case.

Signed-off-by: amzn-sj <srikkant@amazon.com>

* Add test cases for import + patches. Fix bug found when patching import. Rename test cases.

Signed-off-by: amzn-sj <srikkant@amazon.com>

* 1. Add ApplyPatch() function to BaseJsonImporter.
2. Move patch logic out of ResolveImport() and into ApplyPatch()
3. Get rid of the custom RestoreImport implementation in the tests since it was the same as the base version.
4. Add test case for patching nested imports.
5. Update merge patch outcome reporting logic to work for nested object patches.

Signed-off-by: amzn-sj <srikkant@amazon.com>

* 1. Add a CreatePatch() function to BaseJsonImporter to match the ApplyPatch() function.
2. Reorganize some responsibilities between RestoreImports(), RestoreImport() and CreatePatch() to make ResolveImports() and RestoreImports() more symmetrical.

Signed-off-by: amzn-sj <srikkant@amazon.com>

* Combine result code in code path where we add empty object to path

Signed-off-by: amzn-sj <srikkant@amazon.com>

* Add test case for inserting a new import into an existing object.

Signed-off-by: amzn-sj <srikkant@amazon.com>

* Use == instead of Compare() for comparing file paths.

Signed-off-by: amzn-sj <srikkant@amazon.com>

* Address some PR feedback.

Signed-off-by: amzn-sj <srikkant@amazon.com>

* Address additional PR feedback

Signed-off-by: amzn-sj <srikkant@amazon.com>

* Add missing includes to fix non-unity build

Signed-off-by: amzn-sj <srikkant@amazon.com>

* Fix build error. Address additional feedback.

Signed-off-by: amzn-sj <srikkant@amazon.com>
2021-10-21 09:13:43 -07:00
srikappa-amzn 4ed73a0b91 Use case insensitive folder path comparison for creating slices
Signed-off-by: srikappa-amzn <srikappa@amazon.com>
2021-10-21 09:11:11 -07:00
Chris Burel ab86c9961e [Linux] Fix deadlock when running LaunchProcess() from a thread (#4833)
`LaunchProcess()` on Linux works by calling `fork` then `execvpe`. `fork`
is used to copy a running process, generating a new child process. The new
child starts running from the location where the parent was running, from
whatever thread from the parent called `fork`. The child process only gets
one thread, however. If a different thread in the parent process had locked
a mutex, that mutex is also locked in the child process. Since that
separate thread is not present in the child, the mutex remains locked in
the child, with no way to unlock it. So it is important that as little work
as possible happens between the call to `fork` and to `execvpe`.

Previously, this code was trying to report an error that may have occurred
from calling `execvpe`. It was doing that by calling `AZ_TracePrintf`. That
function does lots of things, including trying to make an EBus call, which
looks up a variable in the `AZ::Environment` instance, which has a global
mutex. If there was some other thread that had that mutex locked when the
`fork` call was made, the subprocess would deadlock, and the parent process
would also deadlock waiting for the child to finish.

This solves that issue by removing the call to `AZ_TracePrintf` from the
subprocess code path. Instead, the parent process sets up a pipe for the
child process to write to in case the call to `execvpe` fails (the
self-pipe trick). The parent then reads from that pipe. If it reads no
data, `execvpe` worked and there's no error. If it does read data, the data
to be read is the errno from the failed `execvpe` call made by the child.
The parent can then use `strerror()` to report the error.

Fixes #4702.

Signed-off-by: Chris Burel <burelc@amazon.com>
2021-10-21 09:09:56 -07:00
lumberyard-employee-dm 7a14a21377 Fixed create-project/create-gem to use relative paths directly (#4811)
* Fixed create-project/create-gem to use relative paths directly

It was previously making relative paths, relative to the default_projects_folder and default_gems_folders

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

* Removed uppercase of "Templates" param in get_registered call.

That method looks up the restricted template directory location based on the lowercase key of "templates"
Updated argparse doc to fix typos or clarify which directories a path is relative to.

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>
2021-10-21 10:59:42 -05:00
Michael Pollind a33ab67125 bugfix: handle moving files for inode-watch for AssetProcessor (#4656) (#4809)
Signed-off-by: Michael Pollind <mpollind@gmail.com>
2021-10-21 10:58:14 -05:00
Chris Galvan d78aa5bf90 Removed legacy ColorGradientCtrl.
Signed-off-by: Chris Galvan <chgalvan@amazon.com>
2021-10-21 10:55:32 -05:00
santorac dfcf88265b Fixed a MaterialBuilder issue where material version updates were incorrectly reporting failure in some cases.
Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
2021-10-21 01:28:08 -07:00
santorac 46061eb302 Simplified the code around MaterialAsset::ApplyVersionUpdates()
Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
2021-10-21 00:07:36 -07:00
santorac 1633ced656 Reports warnings when a material version auto update is applied, notifying the user they should update their source data.
Also improved the MaterialAssetTests UpgradeMaterialAsset() to focus on testing the inputs and outputs of the class rather than the private internal data.

Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
2021-10-20 23:36:53 -07:00
Steve Pham 74d74050f2 Fix unused variable error in release linux builds (#4846)
Signed-off-by: Steve Pham <spham@amazon.com>
2021-10-20 18:54:27 -07:00
AMZN-Phil 961c412179 Fix adding local repos due to JSON not being able to serialize Windows paths
Signed-off-by: AMZN-Phil <pconroy@amazon.com>
2021-10-20 16:39:11 -07:00
Guthrie Adams 1d4c622434 Merge pull request #4844 from aws-lumberyard-dev/Atom/guthadam/material_system_component_release_fixes
Fixing material system component mac release build
2021-10-20 18:05:14 -05:00
santorac 836d018de7 Simplified MaterialVersionUpdate code to focus just on renaming, since that's the only operation we currently support. We shouldn't add more complexity until additional operations need to be supported.
Also rearranged some logic to simplify the code that loops over rename actions, avoiding making unnecessary additional maps.

Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
2021-10-20 15:53:22 -07:00
santorac a0b1dec929 Added support for material version updates in MaterialSourceData. This is necessary for tools like Material Editor and Asset Processor to work with the latest property names.
- Added MaterialSourceData::ApplyVersionUpdates() for updating the properties. This should be called by tools after loading the MaterialSourceData. (But can be omitted if a tool wants to read the data exactly as it appears in the .material file).
- Updated MaterialTypeSourceData::FindProperty to support applying version update renames, including a ApplyPropertyRenames utility function, which are necessary for MaterialSourceData to be able to find the necessary property definitons while loading.
- Added a new context struct to JsonMaterialPropertyValueSerializer for passing down the material type version number, to help with applying property renames.
- Renamed the .material file format "propertyLayoutVersion" to "materialTypeVersion" which is more accurate. This shouldn't hurt existing data as this field wasn't actually used for anything before.
- Updated Material Editor to again store the material type version number in .material files.

MaterialSourceDataTests updates...
- Updated to include both a .materialtype file and a MaterialTypeAsset for the test material type. Both are used by the MaterialTypeSourceData class.
- The default test material type now includes some version update steps; these are only used for version update tests and won't impact the other test functions.
- Updated the path for storing temp files to disk, to just be in a "temp" folder in the exe path. (Originally they were saved to the gem folder near MaterialSourceDataTests.cpp, but at some point someone changed it to be under the exe folder, so there's no reason to use the full gem path anymore).

MaterialTypeSourceDataTests updates...
- Moved some code that was accidentally added to LoadAllFieldsUsingOldFormat but should have been in LoadAndStoreJson_AllFields.
- Added test cases for unsupported version update operations

Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
2021-10-20 15:31:01 -07:00
AMZN-Phil 9aa9ed8c8e Changing some class names and other download UI feedback.
Signed-off-by: AMZN-Phil <pconroy@amazon.com>
2021-10-20 14:55:08 -07:00
Danilo Aimini c2ec18dc0e Remove prefab WIP checks to make focus mode the default (and only) prefab editing workflow in the editor. (#4840)
Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
2021-10-20 14:41:35 -07:00