How do I make rinterp to framerate independent?

So, I’ve been using rinterp to to rotate an actor. Hooked up SetActorRotation to rinterpto and tried using GetWorldDeltaSeconds and Delta seconds from event tick to plug for Delta time.

Like so:

However, when I change the game’s framerate from 30 to 120, the rotation speed is much faster at 120 fps.

How do I make the rotation framerate independent?

  • #1 Use AddActorWorldRotation then multiply the DeltaSeconds to the RotationSpeed. Recommended if you don’t have a TargetRotation.
  • #2 Or use what you have but plug the RotationSpeed to InterpSpeed. Note that RInterpTo should only be used when you have an actual TargetRotation(the final location you want the actor to rotate to). In your case it would work but the rotation speed will not be what you plugged in.

RInterpTo changes its InterpSpeed based on how far away it is from the TargetRotation, the farther it is, the faster. In your case it will be really slow. Note, it’s hard to control the rotation speed with RInterpTo.

I recommend using RInterpToConstant instead of RInterpTo if you want to keep on using #2 , its InterpSpeed is in Degrees/Second. And the InterpSpeed will be what you plugged in even if you use Z + RotationSpeed for TargetRotation.

Did you find a solution? I have the same question :
https://answers.unrealengine.com/questions/886499/view.html