private void RotateHand() { handObject.transform.Rotate(new Vector3(mousePosition.y, 0, mousePosition.x)); Vector3 clampedEulers = handObject.transform.eulerAngles; clampedEulers.x = QuaternionUtility.GetEulerByInspectorAngle(Mathf.Clamp(QuaternionUtility.GetInspectorAngleByEuler(handObject.transform.eulerAngles.x + mousePosition.y), minXAngle, maxXAngle)); clampedEulers.y = 0f; clampedEulers.z = QuaternionUtility.GetEulerByInspectorAngle(Mathf.Clamp(QuaternionUtility.GetInspectorAngleByEuler(handObject.transform.eulerAngles.z + mousePosition.x), minZAngle, maxZAngle)); handObject.transform.eulerAngles = clampedEulers; }
void Start() { //Movement maxZPosition = transform.position.z + maxZDistance; maxXPosition = transform.position.x + maxXDistance; minZPosition = transform.position.z; minXPosition = transform.position.x - maxXDistance; maxYPosition = transform.position.y + maxHeight; minYPosition = transform.position.y; //Rotation maxXAngle = QuaternionUtility.GetInspectorAngleByEuler(handObject.transform.eulerAngles.x) + maxXRotation; maxZAngle = QuaternionUtility.GetInspectorAngleByEuler(handObject.transform.eulerAngles.z) + maxZRotation; minXAngle = QuaternionUtility.GetInspectorAngleByEuler(handObject.transform.eulerAngles.x) - maxXRotation; minZAngle = QuaternionUtility.GetInspectorAngleByEuler(handObject.transform.eulerAngles.z) - maxZRotation; }