Construction Script & Material Parameter Collections Issue

Hey guys,

I have a large material parameter collection that I use to hold all of my default values for 2 separate ocean materials, and use a blueprint containing public variables to allow modification of these settings from the construction script. Everything works great, change a setting in the details and it is updated in real time, however when I hit Play, all of these settings are reverted back to the defaults. Every adjustable parameter in the material comes from the collection, there are no instance parameters.

Unless I am misunderstanding the construction script, when you hit play isn’t the it supposed to run the script? If I copy all of the nodes from the construction script into the event graph and hook them up to a “Event Begin Play” they do work as expected.

I just found the documentation states the following:

Does this mean that the only way to get the values to update is to run the construction from a Begin Play event? Otherwise it takes the default values only? Is there any other way around this limitation?

This is disappointing, I really don’t want to have to re-create a hundred parameters as instance parameters if I can avoid it, as I just finished converting the last of them over to the collection on the weekend. I wanted the people who use this blueprint in the future to be able to adjust settings from the editor without much work.

– Edit: I guess I will just duplicate it all into the event graph for now, but I don’t want to set 100 variables twice when loading the game if it’s not necessary.


I had the same issue, and I found a bit of a hacker fix to the issue. If you create the construction script so that it works in editor, select all the nodes, and right-click and convert to macro, then copy that macro into the event begin play in the graph editor