Camera follow for top down is jerky

Hi,

i have a game im working on, and this has been an issue for too long and i dont know how to fix it.

if you make a top down camera view and attach this script to the player

using UnityEngine;
using System.Collections;

public class PlayerController : MonoBehaviour {

	public float moveSpeed;
	private Vector3 mousePos;
	public Animator anim;
	private bool canWalk;
	
	void Update () {
		mousePos = Camera.main.ScreenToWorldPoint (new Vector3 (Input.mousePosition.x, Input.mousePosition.y, Camera.main.transform.position.y - transform.position.y));
		transform.LookAt (new Vector3 (mousePos.x, transform.position.y, mousePos.z));
		if (Vector3.Distance (transform.position, mousePos) >= 2.5f)
		{
			canWalk = true;
		}
		if (Vector3.Distance (transform.position, mousePos) <= 1)
		{
			canWalk = false;
		}
		if (canWalk == true)
		{
			if (Input.GetKey (KeyCode.W) && GameObject.Find ("Control Manager").GetComponent <ControlManager> ().moveEnabled == true)
			{
				GetComponent <CharacterController> ().Move (transform.forward * moveSpeed * Time.deltaTime);
				anim.SetInteger ("Direction", 1);
			}
			else
			{
				anim.SetInteger ("Direction", 0);
			}
		}
		else
		{
			anim.SetInteger ("Direction", 0);
		}
		Vector3 playerXZ = new Vector3 (transform.position.x, Camera.main.transform.position.y, transform.position.z);
		Vector3 velocity = Vector3.zero;
		Camera.main.transform.position = Vector3.SmoothDamp (Camera.main.transform.position, playerXZ + Vector3.back * 3.75f, ref velocity, 0.05f);
		GetComponent <CharacterController> ().Move (Vector3.up * Physics.gravity.y * Time.deltaTime);
	}
}

the camera jerks backwards like really jittery occasionally. please help:(

For most camera jitter related issues, FixedUpdate instead of Update is the answer. :slight_smile: