Code in actor event tick can't be moved to component event tick without issue

I have an Event Tick in an actor that 1) addForce and 2) setWorldRotation, both applied on the root which is a static mesh component. In this way, all works well. My actor moves and rotates correctly.

Now I want to replace that by two Actor Components, one for each behavior.

  • PropulsionComp : at Event Tick, addForce on its owner’s root component
  • RotationComp : at Event Tick, setWorldRotation on it’s owner’s root component

Each of these component works perfectly when I add it to my actor. But when I add them both, I have an issue : The actor doesn’t move each frame I change the rotation.

I understand that SetWorldRotation changes brutaly the tranform of the actor, while AddForce is only touching to its velocity. But I can’t figure out why it works well in the actor and not when dispatched in components, and how to resolve it.

So are you saying that when you change the rotation the objects stopping having force applied?

Doe either of your components change the simulate physics state of the parent rigidbody?

If I print the velocity each tick, I can see that it is always correct, with normal acceleration and dampling.

But on the ticks at which I change the rotation with setWorldRotation, the motion is not applied and my actor don’t move an inch. When the rotation stops, the motion continues normally.

Again, the same code works well when put in the actor Event Tick.

The Simulate Physic State parameter is untouched in my code.