Material Overrides
Material overrides allow you to change the material (or material properties) for an individual actor, without having to change the material itself (which would affect all actors with the same model).
Material override properties can currently not be animated.
To add a material override, go to the actor editor and select the pfm_model
component of the actor, then click on Edit materialOverrides
. This will take you to the UDM Editor window, where you will have to set up the following data structure:
ToYou can do so,so followmanually, theseor steps:
Right-clickcopying the following code block to your clipboard, right-clicking theroot
and chooseAdd Property > Add Array > element, name itmaterialOverrides.Right-click
item, andmaterialOverrideschooseselecting
:AddPasteItemfrom clipboardfor"pfm_udm_copy"
every{material$arrayyoumaterialOverrideswant[element;1][to{override.$string Right-srcMaterial "" $string dstMaterial "" "override" { "pbr" { "properties" { } "textures" { } } } } ] }Then double-click the
IDvalue forthe material override and chooseAdd Property > string, name itsrcMaterial.Double-click the empty field in theDatacolumn to the right ofthesrcMaterial
property and enter the path and filename (without extension) of the material you want to override (e.g. enterplayer/soldier/soldier_d
, if the material ismaterials/player/soldier/soldier_d.pmat
).Right-click the ID for the material override and chooseAdd Property > string, name itdstMaterial.Like in step 4., enter the material that you wish to replacesrcMaterialwith.If
you only want to replace specific properties ofsrcMaterial, you can leavedstMaterialempty.Right-click the ID for the material override and chooseAdd Property > element, name itoverride.Right-clickoverrideand chooseAdd Property > element, name itpbr.Right-clickpbrand chooseAdd Property > element, name itproperties.Right-clickpbragain and chooseAdd Property > element, name ittextures.
You can now fill properties with the material properties you want to override the material with another material, double-click the value for the dstMaterial
property and enter the path of the replacement material.
You can also replace individual material properties and textures manually by adding them to the properties
and textures
for the textures accordingly.sections. For instance, if you want to override the color_factor
property, right-click properties
, select Add Property > vec3
and name the property color_factor
. On the right side you can now double-click the value to edit it:
If you want to replace the albedo map, right-click textures
, select Add Property > string
, name the property albedo_map
and input the texture you want to use as a replacement as the value.
Make sure to press Save
to apply the changes you have made, and save the project afterwards.
If you want to add more than one material override, follow these steps:
- Right-click
materialOverrides
and chooseAdd Item
. - Right-click the first item in
materialOverrides
and chooseCopy to clipboard
. - Right-click the second item in
materialOverrides
and choosePaste from clipboard
.
You can repeat these steps for any number of additional overrides.