개발자로/Unreal

[Unreal4] 캐릭터(Character)

ReasonyB 2022. 8. 19. 16:02

CharacterMovementComponent, CapsuleComponent, SkeletalMeshComponent의 추가를 통해 Pawn 클래스는 고도로 특화된 Character 클래스로 확장. 캐릭터는 월드에서 걷기, 달리기, 점프, 비행, 수영 등이 가능한 직립 플레이어를 표현하기 위해 디자인 됨. 클래스는 기본적인 네트워킹이나 인풋 모델 구현도 추가되어 있음.

 

SkeletalMeshComponent

폰과 달리 캐릭터에는 스켈레톤을 사용하는 고급 애니매이션을 위한 SkeletalMeshComponent가 딸려옴. 다른 스켈레탈 메시를 Character 파생 클래스에 추가 시키는 것도 가능하지만, 캐릭터에 관련된 주 스켈레탈 메시는 Character 클래스 내에 존재하는 SkeletalMeshComponent이다.

 

CapsuleComponent

CapsuleComponent는 운동 콜리전에 사용됨. CharaterMovementComponent에 대한 복잡한 지오메트리 계산을 위해, Character 클래스의 콜리전 컴포넌트는 직립된 캡슐 모양이라 가정.

 

CharacterMovementComponent

CharacterMovementComponent는 아바타가 걷기, 달리기, 점프, 낙하, 수영 등으로 이동할 때 rigidbody 피직스를 사용하지 않도록 할 수 있음. 이것은 캐릭터에 국한된 것으로, 다른 클래스에서 구현할 수 없음. CharacterMovementComponent에 설정할 수 있는 프로퍼티는 낙하와 걷기의 마찰력, 공기와 물과 땅을 가로지르는 이동 속력, 부력, 중력 스케일, 캐릭터 피직스 오브젝트에 행사할 수 있는 물리력 등에 대한 값이 포함. CharacterMovementComponent는 애니메이션으로 오는루트 모션 파라미터도 포함하며, 피직스로 사용할 수 있도록 이미 월드 스페이스에서 트랜스폼 됨.