Angular equivelent of APawn::GetVelocity

Is there a simple way to get the current angular velocity of a pawn?

As far as I know, there isn’t an API call to do this. So the way I implemented this was, at every tick I cached the current rotation. Using (current_rotation - previous_rotation) / DeltaSeconds … will give the necessary angular velocity.

So the pseudo code would look something like this

class AMyActor :: public AActor
     FRotator mPrevRot;

      mPrevRot = GetActorRotation();

   Tick(float DeltaSeconds)
      FRotator currentRot = GetActorRotation();
      FRotator changeInRot = currentRot - mPrevRot;
      FRotator angularVelocity = changeInRot / DeltaSeconds;

      mPrevRot = currentRot;

Ofcourse you would need the correct function signatures and also you would want to encapsulate this into a function. Hope that helped!

There is an angular velocity on the physics body instance. Blueprints even have a Get/SetAngularVelocity which just calls UPrimitiveComponent::GetPhysicsAngularVelocity(FName BoneName). The BoneName isn’t needed and will default to “None” and return the default BodyInstance.