본문 바로가기
728x90
반응형

Unity/Basic33

유니티 캐릭터 마우스 이동[기초 4] 마우스 입력을 받아 캐릭터 또는 오브젝트를 이동한다.  1. 마우스 입력 마우스 입력은 Input.GetMouseButtonDown(0), Input.GetMouse... 이다. 0은 왼쪽 마우스 클릭1은 오른쪽 마우스 클릭2는 가운데 마우스 클릭2. 화면(Screen)과 레이(Ray)스크린의 좌표가 있고, 게임 월드의 좌표가 존재한다.마우스 입력은 게임 월드의 좌표에 직접적으로 클릭을 하는 것이 아니다.화면(Screen)에 클릭을 하는 것이다. 마우스 클릭으로부터 게임 월드의 좌표를 얻기 위해서는 변환이 필요하다. 유니티는 카메라에서 광선(빛)을 월드로 투영해 접촉한 지점의 월드 좌표를 얻을 수 있다.Ray ray = Camera.main.ScreenPointToRay(Input.mousePoint);.. 2020. 9. 7.
유니티 카메라 이동 및 회전 [기초 5] 카메라 이동에 관한 글이다.  게임 월드 구현에 있어 카메라는 굉장히 중요한 역할을 한다.어떻게 구현하냐에 따라 게임이 달라 보일 수 있으며, 사용자의 플레이를 용이하게 도와준다.  카메라 시점은 대표적으로 1인칭과 3인칭을 들 수 있다. 1인칭은 FPS 게임에서 주로 쓰이며, 3인칭은 아케이드, RPG 게임들에 주로 사용된다.  본 글에서는 기본적이고 간단한 부분만을 언급한다.  CameraControl 클래스를 생성하고, Main Camera에 CameraControl 클래스를 등록한다. 카메라의 이동 및 회전은 대상이 먼저 움직이고 그 후에 전환이 이루어 지도록LateUpdate()에 구현한다. 1. 추적 카메라 1.1 추적 카메라 구현 다양한 많은 게임들은 카메라가 캐릭터를 따라 이동하도록 구현되.. 2020. 5. 5.
유니티 캐릭터 이동 및 회전 [ 기초 3] 유니티 캐릭터 이동에 관한 글입니다.1. Transform Transform을 사용하여 캐릭터 이동을 구현합니다. transform.position, transform.Translate()의 차이점은 아래의 글을 참조.https://notyu.tistory.com/23 유니티 오브젝트 이동 [기초 1]오브젝트를 이동하는 방법에 대해 알아보겠습니다. 오브젝트를 이동시키는 방법은 한 가지만 존재하지 않습니다. 코딩 방법, 클래스의 사용에 따라 달라집니다. 2D 이동과 3D 이동하는 방법도 다notyu.tistory.com 사용자의 입력을 받아 캐릭터 이동을 구현합니다.사용자의 입력을 받는 방법은 다양합니다. Input.GetAxis("Horizontal"), Input.GetAxis("Vertical")  .. 2020. 5. 4.
유니티 오브젝트 회전 [기초 2] 유니티 오브젝트 회전에 관한 글입니다. 유니티 오브젝트의 회전은 월드 기준과 로컬 기준이 있습니다. transform.rotation은 월드 기준으로 회전을 하고, transform.rotate()은 로컬(오브젝트) 기준으로 회전합니다. 유니티 오브젝트의 회전은 Quaternion(사원수)을 사용합니다. 1.  회전 방향을 입력 받아 회전 회전하고자 하는 Vector3 값을 입력받아,  회전축을 기준으로 각도를 계산합니다.float angle = Mathf.Atan2(direction.y, direction.x) * Mathf.Rad2Deg; Mathf.Atna2( y, x )의 값은 각을 나타내는 단위 중 하나인 radian 값으로 반환됩니다.이를 우리가 흔히 알고 있는 Degree(도)로 바꾸어주기 .. 2020. 5. 4.
728x90
반응형