게임프로그래밍/실습2
[실습2] MVVM 바인딩을 위한 FieldNotify 생성하기
우승자는메이
2025. 1. 11. 10:10
변수를 선언한다. 이때 원하는 타입이나 변수명은 원하는 것으로 하면 될 것이다.
UPROPERTY(EditAnywhere, BlueprintReadWrite, FieldNotify, Setter, Getter)
FString 변수명;
그 다음 UPROPERTY 매크로를 사용해야하는데 이때 Access 권한을 전부 주는 것이 중요하다.
이제 여기서는 Getter와 Setter 모두 설정한다고 하였으니 함수를 구현하면 된다.
Getter는 간단하다.
FString Get변수명()const { return 변수명; }
그냥 반환만 하면 되는데 이때 중요한 점은 함수 이름을 Get(변수명)으로 해야 된다는 것이다. Setter도 마찬가지이다.
void Set변수명(FString In변수명);
매개변수는 굳이 저렇게 안해도 된다. 하지만 함수 이름은 꼭 Set(변수명)으로 설정하도록 하자.
Setter의 구현이다.
void UVM_LoadSlot::SetPlayerName(FString In변수명)
{
UE_MVVM_SET_PROPERTY_VALUE(변수명, In변수명);
}
매크로를 사용해서 Set을 해주어야 블루프린트에서 바인딩 할때 정상적으로 바인딩이 된다.
참고로 Getter랑 Setter 함수의 이름을 다르게 하고 싶으면 Getter = "함수명" 이런 식으로 지정해주면 된다.