Can't set position of an actor that once had physics enabled
Steps to reproduce:
At this point, if you play the game, pressing "E" does nothing. If you stop the game. disable physics on the cube component, and restart the game, pressing "E" changes the object's vertical position as expected. This in and of itself is a bug in my opinion.
The bigger bug though, is that if you disable physics simulation in Blueprint, you STILL cannot set the actor's position. Repeat the same sets as above, but add a node to "Set Physics Simulation" to false on the cube component.
What appears to be happening is that the actor is being moved, but the physics enabled component isn't (so the local position is changing, but the world position isn't). See screenshot:
In my effort to ensure I provide as much detail as possible, I've been looking into the issue more:
Blueprint Component Hierarchy:
Example Blueprint To Change Position:
Example Blueprint To Disable Physics Simulation:
The reason that this isn't working is because the GetActorLocation node is setting the location of Self, which is the Default Scene Root. If you swap the Default Scene Root for something that you can see (like a Billboard or StaticMesh component) you will see that the it does move how you are telling it too.
To fix this, you can either set the Cube as the root which will work with your original setup.
Or make a direct reference to the Cube.
If you have any other questions just let me know.
answered Jul 27 '15 at 01:07 PM
TJ V ♦♦ STAFF
Follow this question
Once you sign in you will be able to subscribe for any updates here