ESlateVisiblity
- 위젯을 모니터상의 출력여부에 대한 상태를 제어할 때 사용하는 열거형
- SetVisibility(ESlateVisibility InVisibility) : 현재 위젯의 상태를 변경할 때
- GetVisibility() : 현재 위젯의 상태를 확인할 때 (Return ESlateVisibility Visibility)
- 위젯 애니메이션 블렌딩의 경우
- 마우스 입력 또는 키보드 입력값을 받을 수 있는지에 대한 여부 결정시
ESlateVisibility - SlateWrapperTypes.h
/** Is an entity visible? */
UENUM(BlueprintType)
enum class ESlateVisibility : uint8
{
/** Visible and hit-testable (can interact with cursor). Default value. */
Visible,
/** Not visible and takes up no space in the layout (obviously not hit-testable). */
Collapsed,
/** Not visible but occupies layout space (obviously not hit-testable). */
Hidden,
/** Visible but not hit-testable (cannot interact with cursor) and children in the hierarchy (if any) are also not hit-testable. */
HitTestInvisible UMETA(DisplayName = "Not Hit-Testable (Self & All Children)"),
/** Visible but not hit-testable (cannot interact with cursor) and doesn't affect hit-testing on children (if any). */
SelfHitTestInvisible UMETA(DisplayName = "Not Hit-Testable (Self Only)")
};
- Visible
- SetVisibility 설정하지 않을 경우의 기본값
- 화면에 출력되며 마우스 클릭 및 터치 등의 인터렉션이 가능하다.
- 일반적으로 위젯이 열려있으며, 버튼, 텍스트 등의 인터렉션이 필요하 경우 (우편함, 로비 플레이 버튼 등)
- Collapsed
- 화면에 출력되지 않으며 레이아웃에서 공간을 차지하지 않는 형태
- 라운드 시작시 상호작용하지 못하는 위젯들 (상점 등)
- Hidden
- 화면에 출력되지 않으며 레이아웃에서 공간을 차지하는 형태
- 플레이어 이름표 애니메이션 처리 또는 레이아웃 위치를 유지해야하는 경우
- HitTestInvisible
- 화면에 출력되지만 인터렉션이 불가능하며, Child에게도 적용된다.
- 화면 전체에 덮인 오버레이의 경우 (대쉬 이펙트, 블러드 이펙트 등)
- SelfHitTestInvisible
- 화면에 출력되지만 인터렉션이 불가능한 형태. Child 위젯들에게는 적용되지 않는다.
- 듀토리얼에서의 특정 버튼의 활성화의 경우
'Unreal Engine > Etc' 카테고리의 다른 글
[UE5] - Component Architecture (0) | 2025.04.04 |
---|---|
[UE,게임수학] - 짐벌 락(Gimbal Lock) 오일러 각 (Euler Angles) (0) | 2025.01.23 |
UE5 - Destructible Mesh(Dynamic Mesh Component) (0) | 2024.12.27 |