Instancing Materials in Unreal Engine 5.1

   682   1   0
User Avatar
18 posts
Joined: Nov. 2015

I am new to Unreal Engine, but I have been using Houdini for years. I created parts for a pedestrian walkway in Houdini, instanced them, and brought them into Unreal Engine 5.1 with two HDAs. Everything is working as expected, but I am having trouble instancing the materials. I created three versions of the material used for the main support beams and used the "Attribute Randomize" node with the custom discrete set on the packed points in the HDA. The geo spreadsheet appears to show variations on the string value of the primitives, but when I bring it into Unreal Engine, each instance is the same material.

Ive added some pics .

THNX for reading

walkway.png (726.5 KB)
ScreenShot00007.png (1.1 MB)
HDA.JPG (89.8 KB)
geo_sheet.JPG (89.0 KB)

User Avatar
534 posts
Joined: Sept. 2016

Likely the plugin is only creating one instancer for the beams as they are using the same mesh.
An instancer can only use one material, so it's using only the first one and ignoring the other.

You should tell the plugin to create multiple instancers, one for each unique value of the "unreal_material_instance" attribute.

You can do this by adding the unreal_split_attr attribute:
s@unreal_split_attr = "unreal_material_instance";
  • Quick Links