model 이라는 Transform 있다.
유니티 화면에서 Rotation 값들을 입력할 때 보면, 도로 입력한다.
코드 상에서 model.localRotation 값을 보면 라디안 값이다.
model.localRotation = Quaternion.Euler(new Vector3(degreeX, degreeY, degreeZ)); 이런 식으로 값을 적용할 때는 도.
유니티화면에서 도로 입력하고, 코드 상에서 model.localRotation 값(라디안)을 그대로 가져와서 도로 변환해서 model.localRotation 값을 적용해 보면 회전이 유니티 화면에서 입력할 때와 다르게 나온다.
* 라디안 -> 도 : 0.223f * Mathf.Rad2Deg
* 도 -> 라디안 : 90 * Mathf.Deg2Rad
로그로 model.localRotation 값을 확인해보면, 적용하기 전 까지는 값의 변화가 없는데 적용하고 나면 값이 바뀐다. (x, y, z, w가 바뀜... w가 바뀌는 걸로 봐서 내부적으로 별도 연산이 들어 가는 것 같기도...)
유니티 화면에서 입력할 때의 값을 코드로 바로 적용하면 이런 문제가 발생하지 않는다.
유니티화면에서 입력한 값을 그대로 사용하기에는 문제가 있는것 같다.
'unity tech.' 카테고리의 다른 글
Texture Type의 Texture와 Sprite 단순 차이 (0) | 2015.09.02 |
---|---|
이미지 로드해서 Image에 적용 (0) | 2015.09.02 |
자식 객체 Destroy 할 때 주의 (0) | 2015.08.31 |
MonoBehavior 객체 사용시 주의 (0) | 2015.08.31 |
컴포넌트 찾기 주의 사항 (0) | 2015.08.10 |