CharacterController 캐릭터 컨트롤러는 오브젝트가 위치 이동할 때 사용된다. Collider를 내장하고있다. 캐릭터 컨트롤러를 이용하면 Rigidbody가 없어도 장애물을 인식할 수 있다. (계단을 올라가는 예시) Rigidbody를 이용했을 때는 오브젝트끼리 반작용이 있지만 컨트롤러는 없다. 통과만 못할 뿐이다. Slope Limit : 경사각도 (46도 미만까지 올라간다) Step Offset : 계단 높이 (0.6의 높이까지 올라간다) using System.Collections; using System.Collections.Generic; using UnityEngine; public class CCMove : MonoBehaviour { public float movSpeed = ..
게임 오브젝트의 충돌이벤트와 트리거이벤트, 키네마틱에 대해 정리하였습니다. (Collision, Trigger, Kinematic) 1. 충돌 (Collsion) 충돌 이벤트 종류 OnCollisionEnter : 2개의 오브젝트의 충돌시점에 1번 발생하는 이벤트 OnCollisionStay : 닿아있는 동안 계속 발생 OnCollisionExit : 떨어질 때 1번 발생 매개변수인 Collision collision에는 상대 오브젝트의 정보가 들어있다. 조건 1. 2개 오브젝트 모두 Collider가 있어야 한다(영역계산범위) 2. 움직이는 오브젝트에 Rigidbody가 있어야 한다.(Rigidbody는 움직일 때 계산) -> Box가 움직여서 Wall에 닿으면 이벤트 발생 -> Wall이 움직여서 B..
Unity에서 게임 오브젝트의 이동, 회전, 점프, AddForce와 Velocity(오브젝트 자체 속도 부여), LookAt(오브젝트 바라보기), RotateAround에 대해 정리하였습니다. 1. 알아두어야할 것 2. 이동 (Move) 3. 회전 (Rotate) 4. AddForce와 Velocity - 오브젝트 날려보기 5. 점프와 점프 프로그래밍 (Jump) 6. 카메라 회전, LookAt (바라보기), RotateAround 1. 알아두어야할 것 정규화벡터 / 단위 벡터 (Normalized Vector / Unit Vector) 벡터는 크기와 방향을 나타낼 수 있는 데이터타입이며 각 축의 크기가 1인 벡터를 정규화 벡터 or 단위 벡터 라고한다. 방향만 표시하는 벡터라고 생각하면 된다. Vec..
오브젝트 캐릭터의 애니메이션 부여 및 블랜딩, 카메라 조정(따라오는 카메라), 총 발사 로직(총알 생성 및 발사까지)에 대해 알아보겠습니다. 1. 이동 (Move) Player 이동 스크립트 대각선으로 이동할 때 속도가 빨라지는데 이를 길이가 1인 벡터로 변환한 방향 성분만 사용한다. Vector3.normalized를 하여 정규화 벡터값을 사용할 수 있다. 2. 회전 (Rotate) Player 회전 스크립트 플레이어의 회전은 마우스의 좌우 이동값을 받아와서 구현한다. 왼쪽으로 움직이면 음수 값, 오른쪽으로 움직이면 양수 값을 반환한다. florat r 변수에 이 값을 저장한다. 회전 로직 또한 구동하는 디바이스의 프레임 레이트에 관계없이 회전할 수 있게 Time.deltaTime을 곱한다. Rotat..