Spring Arm Local Offset

I’ve attached a Spring Arm component to my character pawn blueprint, and during gameplay I change the Y target offset in order to orient the camera so that the player isn’t directly in the center of the screen. This works fine when the player (and therefore the Spring Arm component) in oriented so that it is traveling forward or backwards on the X axis, but when the player turns so that they are traveling on the Y axis, changing the Y offset merely zooms in and out on the player. It is clear that Target Offset uses world coordinates rather than local coordinates.

Would it be most practical to preform the math that calculates the Y and X offsets individually based on the pawn’s rotation, or would it be better to convert the Offset to local coords, add my Y offset, and convert back to world coords? How would I go about doing either of these solutions?

Thank you.

Is there any reason why you don’t use the Socket offset instead? It should give you the behavior you want.

That works beautifully, thank you!