[Unreal]#11_Blend Pose By Boolean
Unreal 개발 중 "Chracter Animation"에 대해 알아보겠습니다.
"Simple Shooter Game"의 Character Class 개발 과정 중 일부입니다.
Blend Pose By Boolean
1. 개념
* Blend Pose By Boolean?
: 이 노드는 사실상 "분기문"으로 입력받은 Boolean 값에 따라서, 두 개의 입력 포즈 중 하나를 선택합니다.
2. 사용 방법
1. Animation Blueprint 에디터 창 열기
2. Anim Graph에서 "bool로 포즈 블렌딩" 열기
1. 두 개의 입력 포즈를 각각 "True" 혹은 "False"로 설정
2. 해당 Blend Pose By Boolean 노드를 활성화시킬 bool 값을 통해 두 입력 포즈 중 하나를 선택합니다!
3. 적용
1. Activate Value로 boolean 변수 "Death"를 생성하고 블렌드 노드와 연결합니다.
2. Death가 "True"일때 죽는 Animation을 "True" 핀에 연결
3. Death가 "False"일때 보통의 Locomotion Animation을 "False"에 연결
Set Death 변수
1. C++에서 UFUNCTION() 활용
class AShooterCharacter : public ACharacter
{
//...
public:
// BlueprintPure와 const는 같이 갑니다.
// BlueprintPure = No Execution Pin -> Always have same result or effect on program
UFUNCTION(BlueprintPure)
bool IsDead() const;
//...
};
1. ShooterCharacter 클래스 내부에 "IsDead()" 메서드 선언
2. UFUNCTION(BlueprintPure)를 통해 Editor에서 활용할 수 있도록 "IsDead()" 메서드를 노출시킵니다.
3. "IsDead()" 메서드를 "const"키워드를 통해 상수 멤버 메서드로 선언합니다!
2. UFUNCTION(BlueprintPure) ?
* Pure?
: Execution Pin의 존재 여부로 Pure 혹은 Not-Pure로 구분됩니다.
* 보통은 UFUNCTION(BlueprintPure)와 함께 "const"키워드가 함께 사용됩니다!
3. Event Graph에서 Death 변수 설정
1. Try Get Pawn Owner -> ShooterCharacter로 형 변환
2. ShooterCharcter -> IsDead 메서드 호출
3. IsDead -> SetDeath
* Try Get Pawn Owner의 반환 값은 "APawn" 타입이므로, 리턴 값을 "ShooterCharacter"로 형 변환합니다.
'게임개발 > Unreal C++' 카테고리의 다른 글
[Unreal]#13_State Machine, 상태 기계 (0) | 2022.08.29 |
---|---|
[Unreal]#12_Aim Offset(Pitch 값 설정), Delta Rotator 활용 (0) | 2022.08.29 |
[Unreal]#10_Damage + Health 구현 (0) | 2022.08.21 |
[Unreal]#9-2_Shooting 설계 및 구현 (0) | 2022.08.20 |
[Unreal]#9-1_Shooting 설계 및 구현 (0) | 2022.08.17 |