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:(