This is a side effect of how spawn nodes are implemented in order to support 'expose on spawn' parameters. We call a begin spawning and an end spawning node, both of which are passed the transform, so it's evaluated twice. Since pure nodes are expected to have no observable side effects by contract then there's nothing wrong with doing this (it's just a bit slower to be duplicating the work than would be ideal)
When the node Spawn Actors from class is used with a pure input (in this case a pure function with a transform output) The result is that it get evaluated twice. In the test project provided a print string node will print twice with 2 separate values. This issue does not occur with an impure input as making the function unpure and hooking in the execution lines provides the expected result.
Regression:
This issue affects the 4.14.3, 4.15.2 and the 4.16 preview binary builds
Head over to the existing Questions & Answers thread and let us know what's up.
2 |
Component | UE - Gameplay - Blueprint |
---|---|
Affects Versions | 4.14.3, 4.15.2, 4.16 |
Created | May 9, 2017 |
---|---|
Resolved | May 9, 2017 |
Updated | May 10, 2017 |