- 개요
언리얼엔진에서 제공하는 GAS 프레임워크를 사용하여 Topdown RPG를 만들어 본다
GAS 프레임워크에 대한 자세한 설명과 구성요소는 다음의 주소에서 찾아볼 수 있다
이번에 주로 처리할 것은 프로젝트의 설정중에서 게임에 등장하는 캐릭터들을 구성한다
- 처리과정

프로젝트에서 등장하는 캐릭터들의 구성은 위와 같다
기본적인 틀만 C++ 클래스로 잡고, 틀에서 파생되는 여러 객체들은 블루 프린트로 구현하도록 한다
1) 조상 캐릭터 클래스 : AuraCharacterBase 클래스

프로젝트명 + CharacterBase의 이름을 딴 조상 캐릭터 클래스를 생성하였다
Character 클래스에서 상속되었으며 제공된 생성자와 BeginPlay 함수외에 멤버변수로 Weapon을 추가하였다
해당 멤버변수를 사용하여 캐릭터별로 무기를 설정할 수 있다

생성자에서 멤버 변수 Weapon을 Subobject로 생성하여 Character를 무기의 Outer로 설정한다
생성한 Weapon을 SetupAttachement 함수에 넘겨 캐릭터의 WeaponHandSocket 본에 붙인다
마지막으로 Weapon의 Collision을 해제하여 무기가 충돌하지 않게 설정한다
2) C++플레이어 캐릭터 클래스 / 몬스터 캐릭터 클래스


조상 캐릭터 클래스를 상속받은 플레이어와 몬스터 클래스를 생성한다
3) 각 캐릭터 별 블루 프린트와 애니메이션 블루 프린트 생성
3 - 1) 플레이어

위와 같이 플레이어의 블루 프린트와 애니메이션 블루 프린트를 생성하였다

애니메이션 블루 프린트의 Init에서는 PawnOwner를 가져와 플레이어 블루 프린트로 캐스팅하고 변수에 저장한다
설정한 변수에서 CharacterMovement 프로퍼티를 가져오고 마찬가지로 변수에 저장한다
3 - 2) 몬스터


몬스터는 플레이어와는 다르게 여러 개체가 존재한다
따라서 몬스터의 애니메이션 블루 프린트의 조상 버전을 생성한다
애니메이션 블루 프린트의 Init의 로직은 이전의 플레이어와 동일하다
3 - 3) 고블린 창병

고블린 창병은 위와 같이 구성하였다
별다른 로직없이 부모의 로직을 그대로 실행한다
3 - 4) 고블린 사수

고블린 사수의 경우 조금 다른데, 새총을 사용하므로 늘어나고 줄어드는 새총의 애니메이션이 필요하다
따라서 로직을 다르게 구성한다

부모 버전의 Init을 실행하지만, Weapon의 애니메이션 블루 프린트를 가져와 변수에 저장하는 차이점이 있다
저장한 변수를 통해 새총의 애니메이션을 재생할 수 있다
'언리얼 엔진 - 게임 프로젝트 > GAS 프레임워크 RPG 프로젝트' 카테고리의 다른 글
| GAS 프레임워크 도입 - 최종) OwnerActor와 AvatarActor 설정 (0) | 2025.06.30 |
|---|---|
| GAS 프레임워크 도입 - 2) Replication 모드 설정 (0) | 2025.06.29 |
| GAS 프레임워크 도입 - 1) ASC와 AttributeSet 추가 및 설정 (0) | 2025.06.29 |
| 프로젝트 설정 - 최종) 프로젝트 세부 설정 (0) | 2025.06.27 |
| 프로젝트 설정 - 2) 플레이어 설정 (0) | 2025.06.26 |