Controlar la rotación de arrastre de la cámara
float dx = Input.GetAxis("Ratón X");
float dy = Input.GetAxis("Ratón Y");
if (Input.GetMouseButton(0))
{ dx *= velocidad de rotación; dy *= velocidad de rotación; transform.Rotate(Vector3.right* dy* rotationSpeed * Time.fixedDeltaTime,Space.Self);//自身旋转 transform.Rotate(Vector3.up * dx* rotationSpeed * Time.fixedDeltaTime, Space.World);//世界旋转 } //获取四元素 ángulos = transform.localEulerAngles;//0~360 if (ángulos.x < 180) { if (ángulos.x > 45) {
transform.rotation = Quaternion.Euler (nuevo Vector3 (45, ángulos.y, ángulos.z));
}
}
if (ángulos.x > 180)
{ if (ángulos.x < 360 - 45) { transformar.rotación = Quaternion.Euler(nuevo Vector3(360 - 45, ángulos.y, ángulos.z)); } }
La rueda de desplazamiento controla el movimiento de la cámara.
//La rueda del mouse controla el avance de la cámara
if (Input.GetAxis("Mouse ScrollWheel")!=0)
{ transform.Translate(Vector3.forward*Time.deltaTime * Input.GetAxis("Mouse ScrollWheel") * 25 , Espacio.Yo); }