언리얼 엔진 - 게임 프로젝트/GAS 프레임워크 RPG 프로젝트

RPG 게임의 능력치 - 3) Attribute Based 모디파이어

monstro 2025. 7. 27. 16:03
728x90
반응형

- 개요

Gameplay EffectMagnitude Calculation Type 중에서 Attribute Based의 동작방식을 알아본다

해당 옵션은 다른 Attribute의 값을 기반으로 선택한 Attriubte를 수정하는 방식으로 동작한다

 

- Attribute Based 모디파이어에 대하여

 

Attribute Based 모디파이어의 구성은 위와 같다

파란색 - 초록색 - 보라색 범위의 순서대로 알아본다

 

1) Backing Attributes

구성은 다음과 같다

  • Attribute To Capture : Capture함으로써 기반으로 삼을 Attribute를 설정
  • Attrbiute Source : Capture된 Attribute가져올 대상, Source 또는 Target에서 선택할 수 있음
  • Snapshot : Capture한 Attribute스냅샷로 저장하여, 이펙트 적용 시점스냅샷을 기준으로 계산 수행

 

2)  Coefficient

Coefficient / Pre Multiply Additive Value / Post Multiply Additive Value의 3가지로 구성되어 있다

3개를 통한 연산식은 다음과 같다

{ ( BackingAttribute 값 + Pre ) * Coefficient } + Post

 

연산식은 각각의 모디파이어에 개별적으로 적용된다

 

3) 복수개의 Attribute Based 모디파이어의 동작

여러개의 Attribute Based 연산이 존재한다 설정한 인덱스 순서대로 연산이 이뤄진다
수식에서의 연산자에 따른 우선순위가 아닌, 설정한 인덱스의 순서대로 연산이 이뤄진다

 

- 최종 실행 결과

첫 번째 Attribute Based 모디파이어

 

두 번째 Attribute Based 모디파이어

 

 

AttributeSet의 생성자에서 Health 어트리뷰트를 0의 값으로 초기화한다

최종적으로 해당 GE가 적용된 후에 변경되는 Health의 값은 다음과 같다

최종 Health 어트리뷰트에 대한 연산

 

 

 

위와 같이 Health 어트비류트의 값이 설정된 것을 확인할 수 있다

 

 

728x90
반응형