- Home /
Camera Setup for Top Down Shooters
I am currently making a top down shooter. I can't get the camera setup right. I'd like it to be exactly vertical to the character and use smooth follow or a similar script to follow the character. Can anyone help?
Answer by jashan · Oct 20, 2010 at 05:44 AM
Smooth follow probably does a lot more than you need. I guess what you'd want is a script that just changes the x and z values of the camera via Lerp but doesn't change the rotation (as smooth follow does). You can use SmoothFollow as an example, though - you'll just need to remove most "stuff" and just keep that Lerp for x and z.
You might also consider putting the camera as child under the character, though. That wouldn't give you that "smooth" kind of camera follow but it might be worth a try anyways (would probably feel a bit more "direct").
Answer by VS48 · Oct 21, 2010 at 05:11 PM
In the camera, why can't you just do:
float mFollowRate = 1f; float mFollowHeight = 20f;
void LateUpdate() {
transform.position = Vector3.Lerp(transform.position, Player.transform.position + new Vector3(0f, mFollowHeight, 0f), Time.deltaTime * mFollowRate);
}
Not optimized at all, but the idea should work.
Obviously your camera needs to be pointing down
And to keep the camera from jumping up with the character just ad...
transform.position = Vector3.Lerp( transform.position, target.position + new Vector3(0f, (mFollowHeight - target.position.y), 0f), Time.deltaTime * mFollowRate);
Answer by type102 · Feb 12, 2012 at 04:09 AM
I like VS48's answer but there was a small bit of it that I felt needed improving
transform.position = Vector3.Lerp( transform.position,
target.position +
new Vector3(0f, (mFollowHeight - target.position.y), 0f),
Time.deltaTime * mFollowRate);
in the third vector3 which sets the height of the camera I subtracted the target's y position so that when the character jumps up the camera will not move along with it (not so important when working with sprites or characters that don't jump up much but it's adds to the feel of the camera.)
Your answer
Follow this Question
Related Questions
Deadfrontier type crosshair 1 Answer
How do I create a shmup in Unity? 2 Answers
Rotate From SpawnPoint TO Transform Rotation 1 Answer
Cinimachine virtual camera not updating when in standby mode 1 Answer
3rd pserson shooter camera issue 1 Answer