Voglio fare una fotocamera in prima persona che ruota con il mouse.
Ho guardato la pagina API Scripting Input.GetAxis e ho trovato un codice di esempio, che ho incluso nella parte inferiore del mio post. Dopo averlo provato, mi sono reso conto che, sebbene abbia le stesse funzionalità di base che speravo potesse avere, non mantiene la fotocamera parallela al piano xz, in particolare quando si sposta il mouse in cerchio. Dopo un po 'la telecamera si troverebbe ad un'angolazione dispari e il giocatore sarebbe completamente scomposto!
Esiste una soluzione rapida a questo codice che limiterebbe in qualche modo il movimento della videocamera o esiste un modo migliore per ruotare la videocamera?
using UnityEngine;
using System.Collections;
public class ExampleClass : MonoBehaviour {
public float horizontalSpeed = 2.0F;
public float verticalSpeed = 2.0F;
void Update() {
float h = horizontalSpeed * Input.GetAxis("Mouse X");
float v = verticalSpeed * Input.GetAxis("Mouse Y");
transform.Rotate(v, h, 0);
}
}