Collider
플레이어가 부딪히거나 통과하지 못하는 투명한 결계 ex) 맵 끝 밖으로 가지 못하게 막는 투명한 벽
Cube 오브젝트로 플레이어나 Wall을 생성했기 때문에 컴포넌트로 박스 콜라이더가 들어있다.
- Box Collider의 Size로 콜라이더의 크기를 조절할 수 있다.
- Box Collider의 Center로 콜라이더의 중심 위치를 조절할 수 있다.
* 초록색 부분이 Collider이다.
Collider가 컴포넌트에 없다면 Inspector창의 AddComponent - Box Collider로 추가하면 된다.
* 상황에 맞는 콜라이더를 넣으면 됨 - 대부분의 경우는 개체의 크기와 맞게
Rigidbody
개체에 질량을 부여하여 물리 시스템에게 물리를 사용해서 개체의 반응을 일으키게 함
- 플레이어를 움직여도 벽과의 충돌이 안 이루어지는데 이 때 최소 둘 중 한 오브젝트에 Rigidbody 컴포넌트가 존재해야 충돌이 이루어진다.
- Use Gravity : 중력 사용
벽과의 여러 번 충돌 이후 움직임에 버그가 생겼다.
이 문제를 해결하려면 Inspector창 - Rigidbody - Constraints - Freeze Rotation과 Freeze Position을 조정해서 해결할 수 있다.
* 여기선 각 축의 회전과 y축 이동은 사용하지 않으므로 y축 position을 고정했다.
'유데미 강의 > C#과 Unity로 3D 게임 개발하기 : 장애물 코스' 카테고리의 다른 글
OnCollisionEnter(), GetComponent<>() (0) | 2022.08.02 |
---|---|
메서드 (0) | 2022.08.02 |
Cinemachine (0) | 2022.07.28 |
Time.deltaTime (0) | 2022.07.27 |
C# 포맷팅, Input.GetAxis()메서드 (0) | 2022.07.27 |