Smooth spring arm for Third Person

Hello Community,

So this question has been asked hundreds on times on this forum and never with a working answer (don’t you dare mention camera lag).

A third person camera doesn’t look very professional unless the camera is smooth and it should be the default for the third person template. The video here demonstrates the spring arm component’s snapping or erratic behavior with obstacles. Yes camera lag works to a certain degree but makes walking around frustrating. Surely there must be a simple solution, yet I and the community have tried dozens which either come up short or don’t work at all.

I’ve managed to get the camera’s spring arm to go smoothly one way but not the other eg. when a obstacle intersects the length of the spring arm, it smoothly translates there, but not back again when leaving the collision and the camera snaps back to its original length.

Any ideas would be helping a heap of people trying to get there third-person games looking polished.

2 Likes

did you find a fix for this?

It depends on what you are trying to do but, this video may help.

1 Like

The spring arm sends out a line trace from the center of the character. You could disable the collision detection and perform your own line trace using a timer. This could detect any hits and set a vector variable to store the desired camera location. Then in the Tick use a VInterpTo node to interpolate the camera’s location to this desired location. It may intersect the geometry though so more line traces would be needed to keep the camera away from other surfaces.

1 Like