When an instance in a Hierarchical Instance Static Mesh component is rotated using "Update Instance Transform" it doesn't retain it's material's base color value when the material uses PerInstanceRandom.

NOTE: If the instance is also moved or scaled this repro fails.

WORKAROUND: If a very small number(0.0001f) is added to the transform location being updated then the initialized color is maintained.

Attached is a project that demonstrates this bug.

Found in 4.23 CL#9631420
Reproduced in 4.24 Cl#10570792, 4.25 Main CL#10611905

Steps to Reproduce

1. Create X number of instances in a HISM that are cubes.
2. Set the material of the instances to a material that creates a random color using PerInstanceRandom.
3. Create a call-in-editor function that only rotates the instances using the "Update Instance Transform" node.

Result: The instances are all black instead of whatever color they were initialized at.

Expected: The instances retain the colors that they were iniatilized with.

Have Comments or More Details?

There's no existing public thread on this issue, so head over toAnswerHub just mention UE-85569 in the post.

Login to Vote

Affects Versions4.
Target Fix4.26
CreatedDec 9, 2019
UpdatedDec 12, 2019
Pull Requests
6439 - mamoniem