https://www.youtube.com/watch?v=x5KqpYX4H6g
https://www.unrealengine.com/marketplace/ko/product/action-rpg-01
https://docs.unrealengine.com/4.26/ko/Resources/SampleGames/ARPG/
UE4와 액션 RPG를 이용한 게임 제작 배우기
UE 개발의 모범 사례를 보여주기 위해 에픽게임즈에서 제작한 샘플 프로젝트이다. Gameplay Ability system을 아주 강조하고 있다.
Gameplay Ablilty System
높은 수준으로 아주 간단하고 아주 강력한 어빌리티를 빌드하는 아주 유연한 프레임워크. 사용하기 전에 구성해야할 셋업이 필요하다.
먼저 C++로 구성된 베이스 어트리뷰트가 필요하다. 마나, 체력, 공격 속도, 공격 데미지 등이 있다. 아티스트가 조정하기 편하도록 우리가 먼저 베이스 어트리뷰트를 구성을 해놓는 것이 편하다.
먼저 노란 부분에 RPG 아이템 유형이 있다. 이것이 전체 어빌리티의 컨테이너 역할을 수행한다. RPG 아이템 타입을 상자라고 생각하고 어빌리티와 관련된 모든 것들을 여기에 담는다. RPG 아이템 유형은 UI 비주얼, 아이템 비용과 부여된 어빌리티를 결정한다.
밑의 UI처럼 무기 UI와 구매 비용이 RPG 아이템 유형에서 결정된다.
이번엔 녹색 부분에 게임플레이 어빌리티를 보자. 게임플레이 어빌리티는 비주얼이다. 이펙트의 타이밍을 컨트롤한다. 이펙트를 제작하기 위해 복제하면 여기에 진입하여 이펙트를 멋지게 만들어 준다. 예를 들어 망치로 땅을 찍었을 때의 이펙트와 같은 것들을 여기서 트리거 시킨다.
파란 부분은 게임플레이 이펙트이다. 여기서 모든 일이 일어난다. 여기서 실제 데미지가 발생한다. 이 부분이 없다면 단순히 멋진 이펙트만 스크린에 뿌려줄 뿐이다. 게임플레이 이펙트에서 어트리뷰트에 효과를 적용한다.
어트리뷰트는 체력, 마나와 같은 것이고 이 어트리뷰트 값들은 데이터 테이블을 통해 읽힌다. 이러한 방법은 다양한 종류의 스킬에 걸쳐 데미지를 수정할 수 있는 정말 쉬운 방법이다.
물약 만들기
물약을 새로 만드는 것은 기존의 애셋을 복제하는 것이다. 물약은 세 가지 아이템으로 구성되어 있다. 게임플레이 이펙트, 게임플레이 어빌리티, RPG 아이템 유형이다.
먼저 게임플레이 이펙트부터 만든다. GE_PotionHealth를 복제하여 GE_GDC_PotionHealth를 만들었다.
GE_GDCPostionHealth를 위처럼 설정하여 사용 즉시, 체력과 마나에 데미지를 주는 포션으로 설정했다.
커브 테이블은 csv로 작성하여 레벨별 데미지의 접근을 쉽게 해주었다.
이제 게임플레이 어빌리티를 작업한다. 포션 사용 시의 사운드나 애니메이션 몽타주와 같은 비주얼 측면을 설정한다.
GA_PotionHealth를 복제하여 GA_GDCPotionHealth를 만들었다.
GA_GDCPotionHealth를 다음처럼 설정하여 몽타주와 게임플레이 이펙트를 위에서 설정한 GE_GDCPotionHealth로 설정하였다.
Potion_Health를 복제하여 Potion_GDCHealth를 만들었다.
Potion_GDCHealth에서 아이템의 속성을 설정할 수 있다. 여기서 어빌리티를 위에서 만든 GA_GDCPotionHealth로 설정하였다.
게임화면에서 포션이 추가되었다.
'Unreal Engine > 기타' 카테고리의 다른 글
[UE] Variable Replication (0) | 2023.12.17 |
---|---|
[UE] Network Role (1) | 2023.12.17 |
[UE] ServerTravel과 ClientTravel (0) | 2023.12.08 |
[UE] ThisClass (0) | 2023.12.02 |
[UE] 액션 RPG 코드분석 Melee Attack (0) | 2023.06.05 |