How to create recoil that's not instant?

I’m running into a similar wall with crouching, trying to make a none instant crouch/prone feature.


isCrouched = !isCrouched;

	if (isCrouched)
	{
		FirstPersonCameraComponent->RelativeLocation = FVector(0, 0, 32.f);
		AddMovementInput(FVector(1, 1, 1), 1);
	}
	else
	{
		FirstPersonCameraComponent->RelativeLocation = FVector(0, 0, 64.f);
		AddMovementInput(FVector(1, 1, 1), 1);
	}

I’m assuming you could use the EvaluateBezier to create an array of FVectors and make a loop to change the camera location to all the points in my scenario. (changing the pitch in your scenario)

You might also be able to do it by loading a line created from blue prints and looping.

But there has to be an easier way, i’ll be looking into the method described above, but am hoping for a simpler solution (or someone more intelligent to do it for me XD).

Also a side note, I’m using the “addmovementinput” to refresh the camera, without it nothing happens, until you either shoot or move to refresh the camera, anyone know of a better way to do this?