Muislook-script voor Unity
Het onderstaande script maakt muisgestuurde rotatiebeweging mogelijk met opties om de X-as, Y-as of beide gelijktijdig te besturen. Ideaal voor het creëren van meeslepende karaktercontroles of dynamische cameraperspectieven in Unity projecten. Pas de gevoeligheid en rotatiebeperkingen aan om de ervaring aan uw specifieke behoeften aan te passen.
Stappen
- Maak een nieuw script, noem het 'SC_MouseLook' en plak de onderstaande code erin.
'SC_MouseLook.cs'
using UnityEngine;
public class SC_MouseLook : MonoBehaviour
{
public enum RotationAxes { MouseXAndY = 0, MouseX = 1, MouseY = 2 }
public RotationAxes axes = RotationAxes.MouseXAndY;
public float sensitivityX = 15F;
public float sensitivityY = 15F;
public float minimumX = -360F;
public float maximumX = 360F;
public float minimumY = -60F;
public float maximumY = 60F;
float rotationY = 0F;
void Update()
{
if (axes == RotationAxes.MouseXAndY)
{
float rotationX = transform.localEulerAngles.y + Input.GetAxis("Mouse X") * sensitivityX;
rotationY += Input.GetAxis("Mouse Y") * sensitivityY;
rotationY = Mathf.Clamp(rotationY, minimumY, maximumY);
transform.localEulerAngles = new Vector3(-rotationY, rotationX, 0);
}
else if (axes == RotationAxes.MouseX)
{
transform.Rotate(0, Input.GetAxis("Mouse X") * sensitivityX, 0);
}
else
{
rotationY += Input.GetAxis("Mouse Y") * sensitivityY;
rotationY = Mathf.Clamp(rotationY, minimumY, maximumY);
transform.localEulerAngles = new Vector3(-rotationY, transform.localEulerAngles.y, 0);
}
}
void Start()
{
// Make the rigid body not change rotation
if (GetComponent<Rigidbody>())
GetComponent<Rigidbody>().freezeRotation = true;
}
}
- Voeg het 'SC_MouseLook'-script toe aan uw GameObject of Camera in Unity.
- Kies rotatie-assen ("MouseXAndY", "MouseX" of "MouseY") in Inspector.
- Stem de muisgevoeligheid nauwkeurig af met de parameters "sensitivityX" en "sensitivityY".
- Stel optioneel rotatiebeperkingen in met "minimumX", "maximumX", "minimumY" en "maximumY".
- Pas andere parameters aan op basis van uw projectvereisten.
- Ga naar de Play-modus om de muisgestuurde camerabewegingen te testen en te observeren.
- Pas de gevoeligheid en rotatiebeperkingen aan voor het gewenste gedrag.
- Integreer het GameObject met 'SC_MouseLook' in uw grotere Unity-project.