You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
o3de/Gems/Atom
santorac 8fbd2aaaf5 Tied up a few loose ends to support deeply nested property groups.
Simplified the call back for MaterialTypeSourceData::EnumeratePropertyGroups while also providing more data.
Made the Material Inspector join nested property group display names to be like "Layer 1 | Base Color", since the leaf property groups are shown as a flat list in the inspector.
Fixed CreateMaterialAssetFromSourceData to include the imported json files in the list of sourceDependencies. This triggers the Material Editor to hot-reload when one of these json files changes.
Updated a few places that were still assuming only one level of property group.
Updated EditorMaterialComponentInspector to apply the per-property-group material functors, before it was still only applying the top-level onces.
Moved some accessor function implementations to the cpp files, per feedback on another already-merged PR.

Testing:
Made changes to MinimalMultilayerPbr (in AtomSampleViewer) to use nested property groups, and saw the correct behavior in the Material Editor's property inspector.
Used MaterialComponent's property inspector to edit a StandardPbr material instance. Confrimed that functors were correctly controlling property visibility by enabling and disabling things like emissive and clear coat.
Used MaterialComponent's property inspector to edit a MinimalMultilayerPbr material instance. Saw all the expected groups and properties show up. Confirmed that per-group functors were correctly controlling property visibility.
Used MaterialComponent's property inspector to export a material instance and confirmed the .material file included the expected properties.

Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
4 years ago
..
Asset Remove -Wno-unused-value suppression for GCC (#7387) 4 years ago
Bootstrap Display Gem Icons in Gem Catalog (#7294) 4 years ago
Component/DebugCamera Display Gem Icons in Gem Catalog (#7294) 4 years ago
Feature/Common Merge branch 'Atom/santorac/RemixableMaterialTypes4_FlatMaterialFiles' into Atom/santorac/RemixableMaterialTypes4_Layering 4 years ago
RHI PipelineState build fix for non-unity builds 4 years ago
RPI Tied up a few loose ends to support deeply nested property groups. 4 years ago
TestData Updated all of the .material files in AutomatedTesting and Atom/TestData to use the new flat list format. The conversion was done using local changes with a script that opens and re-saves every .material file in a given folder (those WIP changes are on a branch here: Atom/santorac/UpgradeMaterialScript). 4 years ago
Tools Tied up a few loose ends to support deeply nested property groups. 4 years ago
Utils Calculating uv transforms for terrain detail materials (#7375) 4 years ago
CMakeLists.txt Templates restricted (#6498) 4 years ago
gem.json Templates restricted (#6498) 4 years ago
preview.png Display Gem Icons in Gem Catalog (#7294) 4 years ago