Relative Velocity along a local axis

I have been playing around with flying vehicle pawns with some degree of success.

But I would like to get specific velocities, or rather the speed component of velocity, as measured along specific local axes, so I can then exert proportional forces accordingly.

Example: I want to take the velocity as measured perpendicular to a wing (which would be pitched up slightly, relative to the vehicle parent), so I can add force for lift proportional to the wing’s speed specifically along that axis.

To my surprise, I am not finding nodes for doing such a measurement.

Is there some way to get this sort of measurement?

…short of digging out my old kinetics books and spending days weeks or months figuring out how to do this with a lengthy function?

(which I probably will do if I can’t find another easier way)

Hi man,
really not an expert but:

  1. there is a node to get the velocity of the component https://docs.unrealengine.com/en-US/BlueprintAPI/Utilities/Transformation/GetComponentVelocity/index.html
  2. If you place a scenecomponent in wherever place , like child of the wing , you can get the world-location at every tick and get the speed
1 Like

Got It !!! UnRotate Vector is one way, returning x, y and z speeds relative to the specified object, using world-oriented Velocity and object Rotation as inputs.

Another is Dot Product, which returns a single float value along the specified axis, with Get Up Vector (or Forward or Right, as needed), and Velocity as the inputs.

Then it’s just a matter of applying the countering force, (same axis, but inverted)

…just in case anyone else out there is trying to do something similar. (c:

Thanks, Est_engine.

2 Likes