본문 바로가기
::protected/언리얼4&5

위젯 애니메이션 만들기.

by 해맑은욱 2020. 1. 9.

위젯에 애니메이션을 주기 위해선

에디터 상에서 위젯의 애니메이션 작업(키 프레임)을 해줘야 하고

애니메이션 변수를 코드에서 호출하여 사용한다.

 

위젯에서 선언된 애니메이션을 찾는 코드(역시 구글링!)

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(this0);
            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

 

+애니메이션을 선택하여 애니메이션 추가후 디테일 속성값들을 변경하고 키 프레임을 잡는다.

키 프레임은 우측 디테일 창의 속성들 옆에 아이콘을 누르면 된다.

 

 

'::protected > 언리얼4&5' 카테고리의 다른 글

데이터 사용하기.  (0) 2022.06.21
AI  (0) 2020.11.18
위젯(UWidget) 위치 얻기.  (0) 2019.12.20
액터 아웃라인(Outline) 만들기.  (0) 2019.12.18
UUserWidget::Function()  (0) 2019.12.11