- Removing MaterialAttributeDefinitionMap and MaterialRenderProxy from MaterialShared.h
- Removing MaterialShared from Material.h
#preflight 639cbb35776b61ba3b82f03e
[CL 23541603 by christopher waters in ue5-main branch]
- Use material F0=>IOR by default.
- Then use the root node refraction pin input to override IOR for art direction.
- Refraction is now disable using the mode None.
- This data converted according to the graph content. Usingthe Rectraction input is detected by looking at all the node from the mateiral graph. When material attributes are used however, It is however over conservative since it does not check if the node a really plugged in an actual attribute path.
It was needed to deprecated the previouls RefractionMode variable as default value needs to now be RM_None. The new property is RefractionMethod.
The new GetRootNodeOverridesDefaultRefraction function on FMaterial has a default but to have correct refraction it must be implemented when it matters.
Refraction engine test were all green.
#rb charles.derousiers, chris.kulla
#preflight https://horde.devtools.epicgames.com/job/63885ca3b21cdd3a2601428e
[CL 23370408 by Sebastien Hillaire in ue5-main branch]
* Add a new thickness input on the root node for thin surface
* Add a new thickness input on vertical layer operator, to provide the thickness of the 'layered' material
* Mark Slab thickness input as deprecated, for converting existing asset once this CL is checked in.
#rb sebastien.hillaire
#jira none
#preflight 638903020e4613faedc9e8be
[CL 23358938 by Charles deRousiers in ue5-main branch]
The defines a clear semantic for how thickness of a bottom layer should be handled with Strata. This CL only pipes the data for the various parts. A following CL will add a thickness property on the root node.
#rb none
#jira none
#preflight 638672dd4004f73f62ea9600
#fyi sebastien.hillaire
[CL 23324261 by Charles deRousiers in ue5-main branch]
Headers are updated to contain any missing #includes needed to compile and #includes are sorted. Nothing is removed.
#ushell-cherrypick of 21064294 by bryan.sefcik
#jira
#preflight 62d5c2111062f2e63015e598
#ROBOMERGE-OWNER: bryan.sefcik
#ROBOMERGE-AUTHOR: bryan.sefcik
#ROBOMERGE-SOURCE: CL 21155249 via CL 21158121 via CL 21161259
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v972-20964824)
[CL 21182053 by bryan sefcik in ue5-main branch]
2. Supports CustomDepth in translucency pass on mobile LDR.
#jira none
#rb Dmitriy.Dyomin
#preflight 62be9894d94b57687c68aed1
[CL 20911586 by Wei Liu in ue5-main branch]
Also create a FViewFamilyInfo for DrawTileMesh so that we have a valid SceneTexturesConfig when setting up view uniforms.
Moved material baking renderdoc capture so that it captures warm up frames.
#rb jason.hoerner
#preflight 62aa0ce7273ce16835c64006
[CL 20673323 by Jeremy Moore in ue5-main branch]
* Instead, use StateId & override GetShaderMapUsage() to differentiate the export proxy from the source material.
#rb jason.nadro
#ROBOMERGE-AUTHOR: sebastien.lussier
#ROBOMERGE-SOURCE: CL 20222932 via CL 20224332 via CL 20224346 via CL 20224360
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v943-19904690)
[CL 20227117 by robomerge in ue5-main branch]
Number of warmup frames is controlled by MaterialBaking.VTWarmupFrames CVar and defaults to 5
Warmup should only happen if material samples virtual textures.
#preflight 627ec42a5a0a06a57ea838e6
[CL 20189296 by Jeremy Moore in ue5-main branch]
Also restores follow-up CLs 19973746, 19973782
FStaticParameterSet::MaterialLayers can't be deprecated, since a property with the same name is included via FStaticParameterSetRuntimeData
So instead, FMaterialLayersFunctionsRuntimeData is updated with SerializeFromMismatchedTag, to allow serializing a full FMaterialLayersFunction.
When this happens, the EditorOnly portion is stored in a separate heap allocation, and then transferred to FStaticParameterSet::EditorOnly::MaterialLayers
#preflight 626c3405e31dbb512cef1e98
[Backout] - CL19973745
#fyi bob.tellez
Original CL Desc
-----------------------------------------------------------------
[Backout] - CL19964485
#fyi Ben.Ingram
Original CL Desc
-----------------------------------------------------------------
Add 'Optional' EditorOnly data for UMaterialInterface and UMaterialFunctionInterface
These are separate UObject hierarchies that store editor-only UPROPERTIES, but can be included with cooked content, which allows full editor support.
In principle, all editor-only properties could be moved over. So far, this has been limited to UMaterialExpressions, and data related to material parameters.
FStaticParameterSet, FMaterialLayersParameters, and FMaterialCachedExpressionData have all been split into separate editor-only/non-editor-only classes,
which allows the editor-only portion to be stored on the optional editor-only UObject.
#preflight 626ab21dad56c0cbbea32dc4
#rb jason.nadro, francis.hurteau
#jira FORT-463329
[CL 20043286 by Jason Nadro in ue5-main branch]
#fyi Ben.Ingram
Original CL Desc
-----------------------------------------------------------------
Add 'Optional' EditorOnly data for UMaterialInterface and UMaterialFunctionInterface
These are separate UObject hierarchies that store editor-only UPROPERTIES, but can be included with cooked content, which allows full editor support.
In principle, all editor-only properties could be moved over. So far, this has been limited to UMaterialExpressions, and data related to material parameters.
FStaticParameterSet, FMaterialLayersParameters, and FMaterialCachedExpressionData have all been split into separate editor-only/non-editor-only classes,
which allows the editor-only portion to be stored on the optional editor-only UObject.
#preflight 626ab21dad56c0cbbea32dc4
#rb jason.nadro, francis.hurteau
#jira FORT-463329
[CL 19973745 by bob tellez in ue5-main branch]