Description

When an instanced static mesh component with a material using a PerInstanceCustomData node has its data floats pasted in, the editor crashes with an "Array index out of bounds" error.
The licensee was able to resolve it internally by changing the check in UInstancedStaticMeshComponent::PostEditChangeChainProperty to "if (ensure(NumCustomDataFloats > 0) && ChangedCustomValueIndex != INDEX_NONE)"

 

Steps to Reproduce

Steps to Reproduce:

1. Create a new material:
Add a PerInstanceCustomData node and connect the output to base color
2. Create a new Blueprint of type Actor
3. Add a instanced static mesh component
4. Select a mesh (I used Plane)
5. Compile BP
6. Set the material to the one created earlier
7. Select instanced static mesh component
8. Add 4 instances
9. Set "Num Custom Data Floats" to 1
10. Right click "Custom data" array and select copy
11. In a text editor past the array contents
12. Change any of the numbers (eg. (0.10000,0.23000,0.030000,0.000000))
13. Copy the changed array string
14. Right click on "Custom data" array and select paste

Have Comments or More Details?

There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-220973 in the post.

0
Login to Vote

Unresolved
ComponentUE - Gameplay - Components
Affects Versions5.4
Target Fix5.6
CreatedAug 5, 2024
UpdatedOct 1, 2024
View Jira Issue