GameDev Brasil https://www.gamedev.com.br/forum/ |
|
Third Person Camera https://www.gamedev.com.br/forum/viewtopic.php?f=60&t=41650 |
Página 1 de 1 |
Autor: | heltonluizsb [ Qua Out 09, 2019 12:19 am ] |
Título: | Third Person Camera |
Estou com um problema na criação de código para movimentação da câmera... O códio abaixo a câmera segue o personagem perfeitamente, quando eu rotaciono ele com as teclas A e D (através do LookAt(head), em visto que a movimentação está em outro código), agora o LookAt(head) não respeita a rotação dele... O código altera a rotação do objeto HEAD (GameObject vazio), tanto é que eu vejo os valores de Rotation Y alterando. Porém nada acontece com a câmera e se eu coloco a camera como filha de HEAD não obtenho o resultado desejado... public class CamFollow : MonoBehaviour { public Transform head; public Transform[] pos; public int id; public Vector3 speed = Vector3.zero; public RaycastHit hit; public float scroll; private float rotSpeed, rotation; // Start is called before the first frame update void Start() { rotSpeed = 100; id = 0; } void Update() { CameraAdjust(); CameraRotation(); } // Update is called once per frame void LateUpdate() { transform.LookAt(head); if (!Physics.Linecast(head.position,pos[id].position)) { transform.position = Vector3.SmoothDamp(transform.position,pos[id].position, ref speed, 0.1f); Debug.DrawLine(head.position, pos[id].position); } else if (Physics.Linecast(head.position, pos[id].position, out hit)) { transform.position = Vector3.SmoothDamp(transform.position, hit.point, ref speed, 0.1f); Debug.DrawLine(head.position, pos[id].position); } } void CameraAdjust() { scroll = Input.GetAxis("Mouse ScrollWheel"); if ((Input.GetAxis("Mouse ScrollWheel") < 0) && (id < 2)) { id++; } else if ((Input.GetAxis("Mouse ScrollWheel") > 0) && ((id <= 2) && (id > 0))) { id--; } } void CameraRotation() { rotation += Input.GetAxis("Mouse X") * rotSpeed; rotation *= Time.deltaTime; head.Rotate(0,rotation,0); } } |
Página 1 de 1 | Todos os horários são GMT - 3 horas |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |