728x90
반응형
▣ 코드 설명
LayerMask groundLayer:
캐릭터가 닿을 수 있는 땅의 레이어를 지정합니다. Unity에서 레이어는 충돌 처리를 위한 그룹을 나눌 때 사용됩니다. groundLayer는 땅으로 간주할 레이어를 선택할 수 있도록 합니다.
CheckIfGrounded() 함수:
Raycast를 이용하여 캐릭터의 발 밑에 땅이 있는지 확인하는 함수입니다. Raycast는 캐릭터의 위치에서 아래쪽으로 발사되며, groundLayer에 속한 오브젝트와 충돌하는지 여부를 확인합니다.
중력 적용 및 이동 처리:
캐릭터가 공중에 있으면 중력이 지속적으로 적용되어 아래로 내려오게 되고, 착지했을 때는 중력에 의해 속도가 과도하게 증가하는 것을 막기 위해 velocity.y = -2f로 설정됩니다.
controller.Move()는 플레이어 캐릭터를 이동시키는 메서드입니다.
점프 처리:
Input.GetButtonDown("Jump")를 통해 플레이어가 점프 버튼을 눌렀는지 확인합니다. 점프가 가능할 때는 velocity.y에 계산된 속도를 할당하여 위쪽으로 이동하게 됩니다.
애니메이션 제어:
점프를 시작할 때는 animator.SetTrigger("JumpUp")로 JumpUp 애니메이션이 실행되고, 착지할 때는 JumpDown 애니메이션이 실행됩니다. 이 애니메이션들은 Unity의 Animator 시스템을 통해 제어됩니다.
728x90
반응형
'[ Unity ] > - 유니티 실습' 카테고리의 다른 글
유니티 Player Fall GameOver (0) | 2024.10.15 |
---|---|
유니티 Player Die Ragdoll모드 (1) | 2024.10.14 |
유니티 Aim 상체 회전(애니메이션 상체 방향 문제) (0) | 2024.10.11 |
유니티 FogEffect (0) | 2024.10.11 |
유니티 프로젝트 템플릿 메뉴 (3) | 2024.10.10 |
댓글