If I understand correctly, in order to have this up and running all state machines and such can only read member variables, not perform ANY logic themselves…
and
The Blueprint Update Event must be empty.
So we need to shift eventual updates to the NativeUpdate C++ function? Is there anything preventing me from creating a custom delegate called from NativeUpdate that will still give me BP-level access to the “native tick” on my own? How can I make sure that the worker thread stuff is actually happening on a worker thread?