이 글은 PC 버전 TISTORY에 최적화 되어있습니다.
서론
3D 게임에서 회전이라는 요소는 굉장히 중요합니다. 앞만 보고 달리는 오버워치 캐릭터를 생각해보면 아찔합니다. 이번에는 마우스의 좌, 우 움직임에 따라 오브젝트가 회전하는 것을 구현함으로서 회전에 대해서 알아보도록 하겠습니다.
2. 회전 (Rotate)
회전 구현하기
유니티에서 회전을 할 수 있게 해주는 함수는 transform.Rotate 입니다. 3가지 사용법이 있으나 Y축을 기준으로 회전한다는 결과는 같습니다.
1. transform.Rotate(Vector3.up * Time.deltaTime);
2. transform.Rotate(0, Time.deltaTime, 0);
3. transform.Rotate(Vector3.up, Time.deltaTime);
위에서 첫 번째 방법을 사용해보도록 하겠습니다. 인자에 대한 설명은 아래와 같습니다.
transform.Rotate(회전할 기준 좌표 축 * Time.deltaTime * 회전 속도 * 변위 값)
위와 같이 이전 이동 스크립트에 마우스 좌, 우의 변위 값을 통해 회전하는 코드를 추가합니다.
마우스를 좌, 우로 움직이면 잘 동작하는 것을 볼 수 있습니다. 속도를 조절하고 싶다면 rotSpeed 값을 조절하시면 되겠습니다.
반응형
'Frontend > Unity' 카테고리의 다른 글
모노디벨롭에서 unsafe 모드 실행하기 (0) | 2016.11.23 |
---|---|
[유니티 C# 기초 강의] 13. SendMessage와 BroadcastMessage (0) | 2016.08.05 |
[유니티 트랜스폼] 카메라 추적 (Follow Cam) (1) | 2016.08.04 |
[유니티 기초] 유니티 생명주기 (Life Cycle) (0) | 2016.08.04 |
[유니티 기초] Time.deltaTime (7) | 2016.08.04 |
[유니티 트랜스폼] 이동 (Move) (5) | 2016.08.04 |