1. using UnityEngine;
  2.  
  3. public class PaddleController : MonoBehaviour
  4. {
  5.     public Transform orb;
  6.     public float radius;
  7.  
  8.     private Transform pivot;
  9.  
  10.     void Start()
  11.     {
  12.         pivot = orb.transform;
  13.         transform.parent = pivot;
  14.         transform.position += Vector3.up * radius;
  15.     }
  16.  
  17.     void Update()
  18.     {
  19.         Vector3 orbVector = Camera.main.WorldToScreenPoint(orb.position);
  20.         orbVector = Input.mousePosition - orbVector;
  21.         float angle = Mathf.Atan2(orbVector.y, orbVector.x) * Mathf.Rad2Deg;
  22.  
  23.         pivot.position = orb.position;
  24.         pivot.rotation = Quaternion.AngleAxis(angle - 90, Vector3.forward);
  25.     }
  26. }


마우스가 움직임에 따라 그 마우스의 각도에 맞게 orb 주위를 paddle이 회전하는 스크립트인데요

딴건 다 대충 이해가 되는데 Quaternion.AngleAxis(angle - 90, Vector3.forward

요게 이해가 안돼요.. 글씨는 왜 초록색인지 모르겠는데


일단, 아크탄젠트를 구하는 건 유니티 상의 x,y축을 좌표평면으로 보고 구하면 되는건가요?

그 고딩때 했던, 벡터 끝점에서 x축에 수선 내리고 원점이랑 이어서 삼각형 만드는거 맞죠?

그리고 angle이 아크탄젠트로 구한 각도잖아요? 거기서 90도는 왜 빼는거쥬?