::protected/언리얼4&5
위젯 애니메이션 만들기.
해맑은욱
2020. 1. 9. 00:22
위젯에 애니메이션을 주기 위해선
에디터 상에서 위젯의 애니메이션 작업(키 프레임)을 해줘야 하고
애니메이션 변수를 코드에서 호출하여 사용한다.
위젯에서 선언된 애니메이션을 찾는 코드(역시 구글링!)
UProperty* pProperty = GetClass()->PropertyLink; // 클래스 내의 모든 속성에서 위젯 애니메이션을 찾는다. while (nullptr != pProperty) { // 찾은 속성이 오브젝트 속성 일때 if (pProperty->GetClass() == UObjectProperty::StaticClass()) { UObjectProperty* pObjProperty = Cast<UObjectProperty>(pProperty); // 오브젝트 속성이 위젯 애니메이션일때 if (pObjProperty->PropertyClass == UWidgetAnimation::StaticClass()) { UObject* pObj = pObjProperty->GetObjectPropertyValue_InContainer(this, 0); UWidgetAnimation* pWidgetAnim = Cast<UWidgetAnimation>(pObj); if (nullptr != pWidgetAnim && nullptr != pWidgetAnim->MovieScene) { if (pWidgetAnim->MovieScene->GetFName() == "FadeOut") { mpFadeOut = pWidgetAnim; // UWidgetAnimation 변수에 담기 } else if (pWidgetAnim->MovieScene->GetFName() == "FadeIn") { mpFadeIn = pWidgetAnim; } } } } // 다음 속성으로 pProperty = pProperty->PropertyLinkNext; } | cs |
+애니메이션을 선택하여 애니메이션 추가후 디테일 속성값들을 변경하고 키 프레임을 잡는다.
키 프레임은 우측 디테일 창의 속성들 옆에 아이콘을 누르면 된다.