Payback 0.0.1
CK Graduation Project
로딩중...
검색중...
일치하는것 없음
UChargeGaugeWidget 클래스 참조

#include <ChargeGaugeWidget.h>

UChargeGaugeWidget에 대한 상속 다이어그램 :
Inheritance graph
UChargeGaugeWidget에 대한 협력 다이어그램:
Collaboration graph

Public 멤버 함수

void BindToOwner (AActor *InOwner)
 
- UUserWidgetBase(으)로부터 상속된 Public 멤버 함수
virtual void SetAbilitySystemComponent (AActor *InOwner)
 
virtual UAbilitySystemComponent * GetAbilitySystemComponent () const override
 
virtual void OnPushedToLayer ()
 
virtual void OnPoppedFromLayer ()
 
virtual void OnActivated ()
 
virtual void OnDeactivated ()
 
void Activate ()
 
void Deactivate ()
 
FORCEINLINE FGameplayTag GetLayerTag () const
 
FORCEINLINE void SetLayerTag (const FGameplayTag InTag)
 
FORCEINLINE bool IsPrimary () const
 
FORCEINLINE void SetPrimary (const bool InPrimary)
 
FORCEINLINE EWidgetState GetWidgetState () const
 
FORCEINLINE void SetWidgetState (const EWidgetState InState)
 
FORCEINLINE UWaitForWidgetActivationGetActivationHandle ()
 
FORCEINLINE bool HasAppearanceAnim () const
 
FORCEINLINE bool HasDisappearanceAnim () const
 

Protected 멤버 함수

virtual void NativeConstruct () override
 
virtual void NativeDestruct () override
 
virtual void NativeTick (const FGeometry &MyGeometry, float InDeltaTime) override
 
void HandleChargeBegin ()
 
void HandlePhaseChanged (int32 InNewPhase)
 
void HandleChargeEnd ()
 
void UpdateInnerCircleProgress ()
 
void SetInnerCircleProgress (float InProgress)
 
void SetPhaseCircleSegments (int32 InSegments)
 
void SetPhaseCircleProgress (int32 InCurrentPhase)
 
void UnbindFromStateComp ()
 
- UUserWidgetBase(으)로부터 상속된 Protected 멤버 함수
virtual void OnWidgetActivated ()
 
virtual void OnWidgetDeactivated ()
 
void OnPushedToLayer_Internal ()
 
void OnPoppedFromLayer_Internal ()
 
void OnActivated_Internal ()
 
void OnDeactivated_Internal ()
 

Protected 속성

TObjectPtr< UImage > IMG_InnerCircleProgressBar
 
TObjectPtr< UImage > IMG_PhaseCircleProgressBar
 
TObjectPtr< UMaterialInstanceDynamic > InnerCircleProgressMaterial
 
TObjectPtr< UMaterialInstanceDynamic > PhaseCircleProgressMaterial
 
TWeakObjectPtr< UChargeStateComponent > CachedStateComp
 
uint8 bSkipNextInnerCircleProgressUpdate: 1 = false
 
const FName ProgressParameterName = TEXT("Progress")
 
const FName SegmentsParameterName = TEXT("Segments")
 
- UUserWidgetBase(으)로부터 상속된 Protected 속성
EWidgetState WidgetState
 
TObjectPtr< UAbilitySystemComponent > ASC
 
FGameplayTag LayerTag
 
bool bPrimary = false
 
TObjectPtr< UWidgetAnimation > AppearanceAnim
 
TObjectPtr< UWidgetAnimation > DisappearanceAnim
 

멤버 함수 문서화

◆ BindToOwner()

void UChargeGaugeWidget::BindToOwner ( AActor *  InOwner)
42{
43 check(InOwner);
44 IChargeInterface* Charge = Cast<IChargeInterface>(InOwner);
45
46 if (Charge == nullptr)
47 {
48 LOG_ERROR(LogCK, "%s를 찾을 수 없습니다. ", NAMEOF(IChargeInterface));
49 return;
50 }
51
52 UChargeStateComponent* StateComp = Charge->GetChargeStateComponent();
53
54 if (IsValid(StateComp) == false)
55 {
56 LOG_ERROR(LogCK, "%s를 찾을 수 없습니다. ", NAMEOF(UChargeStateComponent));
57 return;
58 }
59
61
62 StateComp->OnChargeBegin.AddDynamic(this, &ThisClass::HandleChargeBegin);
63 StateComp->OnChargePhaseChanged.AddDynamic(this, &ThisClass::HandlePhaseChanged);
64 StateComp->OnChargeEnd.AddDynamic(this, &ThisClass::HandleChargeEnd);
65
66 CachedStateComp = StateComp;
68 SetVisibility(ESlateVisibility::Collapsed);
71
72 LOG_INFO(LogCK, "성공적으로 %s 를 등록했습니다. ", NAMEOF(UChargeGaugeWidget));
73}
#define LOG_ERROR(Category, Format,...)
Definition CK_UE.h:40
#define LOG_INFO(Category, Format,...)
Definition CK_UE.h:38
#define NAMEOF(Type)
Definition CK_UE.h:30
Definition ChargeInterface.h:21
virtual UChargeStateComponent * GetChargeStateComponent() const =0
Definition ChargeGaugeWidget.h:16
uint8 bSkipNextInnerCircleProgressUpdate
Definition ChargeGaugeWidget.h:62
TWeakObjectPtr< UChargeStateComponent > CachedStateComp
Definition ChargeGaugeWidget.h:59
void SetPhaseCircleProgress(int32 InCurrentPhase)
Definition ChargeGaugeWidget.cpp:179
void SetInnerCircleProgress(float InProgress)
Definition ChargeGaugeWidget.cpp:145
void UnbindFromStateComp()
Definition ChargeGaugeWidget.cpp:76
이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:

◆ HandleChargeBegin()

void UChargeGaugeWidget::HandleChargeBegin ( )
protected
93{
94 LOG_INFO(LogCK, "%s 활성화.", NAMEOF(UChargeGaugeWidget));
95
96 if (CachedStateComp.IsValid())
97 {
99 }
100
101 SetVisibility(ESlateVisibility::HitTestInvisible);
105}
void SetPhaseCircleSegments(int32 InSegments)
Definition ChargeGaugeWidget.cpp:162
이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:

◆ HandleChargeEnd()

void UChargeGaugeWidget::HandleChargeEnd ( )
protected
117{
118 LOG_INFO(LogCK, "%s 비활성화.", NAMEOF(UChargeGaugeWidget));
119
123 SetVisibility(ESlateVisibility::Collapsed);
124}
이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:

◆ HandlePhaseChanged()

void UChargeGaugeWidget::HandlePhaseChanged ( int32  InNewPhase)
protected
109{
111 SetPhaseCircleProgress(InNewPhase);
113}
이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:

◆ NativeConstruct()

void UChargeGaugeWidget::NativeConstruct ( )
overrideprotectedvirtual
13{
14 Super::NativeConstruct();
15 SetVisibility(ESlateVisibility::Collapsed);
17}
이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:

◆ NativeDestruct()

void UChargeGaugeWidget::NativeDestruct ( )
overrideprotectedvirtual
21{
23 Super::NativeDestruct();
24}
이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:

◆ NativeTick()

void UChargeGaugeWidget::NativeTick ( const FGeometry &  MyGeometry,
float  InDeltaTime 
)
overrideprotectedvirtual
28{
29 Super::NativeTick(MyGeometry, InDeltaTime);
30
32 {
34 return;
35 }
36
38}
void UpdateInnerCircleProgress()
Definition ChargeGaugeWidget.cpp:127
이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:

◆ SetInnerCircleProgress()

void UChargeGaugeWidget::SetInnerCircleProgress ( float  InProgress)
protected
146{
148 {
150 }
151
153 {
154 InnerCircleProgressMaterial->SetScalarParameterValue(ProgressParameterName, FMath::Clamp(InProgress, 0.0f, 1.0f));
155 return;
156 }
157
158 LOG_ERROR(LogCK, "%s를 찾지 못했습니다. ", NAMEOF(UMaterialInstanceDynamic));
159}
TObjectPtr< UImage > IMG_InnerCircleProgressBar
Definition ChargeGaugeWidget.h:47
const FName ProgressParameterName
Definition ChargeGaugeWidget.h:65
TObjectPtr< UMaterialInstanceDynamic > InnerCircleProgressMaterial
Definition ChargeGaugeWidget.h:53
이 함수를 호출하는 함수들에 대한 그래프입니다.:

◆ SetPhaseCircleProgress()

void UChargeGaugeWidget::SetPhaseCircleProgress ( int32  InCurrentPhase)
protected
180{
182 {
184 }
185
186 if (PhaseCircleProgressMaterial == nullptr)
187 {
188 LOG_ERROR(LogCK, "%s를 찾지 못했습니다. ", NAMEOF(UMaterialInstanceDynamic));
189 return;
190 }
191
192 if (CachedStateComp.IsValid() == false)
193 {
194 PhaseCircleProgressMaterial->SetScalarParameterValue(ProgressParameterName, 0.0f);
195 return;
196 }
197
198 const int32 MaxPhase = CachedStateComp->GetMaxPhase();
199 const float PhaseProgress = MaxPhase > 0 ? (InCurrentPhase * 1.0f) / MaxPhase : 0.0f;
200 PhaseCircleProgressMaterial->SetScalarParameterValue(ProgressParameterName, FMath::Clamp(PhaseProgress, 0.0f, 1.0f));
201}
TObjectPtr< UImage > IMG_PhaseCircleProgressBar
Definition ChargeGaugeWidget.h:50
TObjectPtr< UMaterialInstanceDynamic > PhaseCircleProgressMaterial
Definition ChargeGaugeWidget.h:56
이 함수를 호출하는 함수들에 대한 그래프입니다.:

◆ SetPhaseCircleSegments()

void UChargeGaugeWidget::SetPhaseCircleSegments ( int32  InSegments)
protected
163{
165 {
167 }
168
170 {
171 PhaseCircleProgressMaterial->SetScalarParameterValue(SegmentsParameterName, InSegments);
172 return;
173 }
174
175 LOG_ERROR(LogCK, "%s를 찾지 못했습니다. ", NAMEOF(UMaterialInstanceDynamic));
176}
const FName SegmentsParameterName
Definition ChargeGaugeWidget.h:66
이 함수를 호출하는 함수들에 대한 그래프입니다.:

◆ UnbindFromStateComp()

void UChargeGaugeWidget::UnbindFromStateComp ( )
protected
77{
78 if (CachedStateComp.IsValid() == false)
79 {
80 return;
81 }
82
83 UChargeStateComponent* StateComp = CachedStateComp.Get();
84 StateComp->OnChargeBegin.RemoveDynamic(this, &ThisClass::HandleChargeBegin);
85 StateComp->OnChargePhaseChanged.RemoveDynamic(this, &ThisClass::HandlePhaseChanged);
86 StateComp->OnChargeEnd.RemoveDynamic(this, &ThisClass::HandleChargeEnd);
87
88 CachedStateComp.Reset();
89}
이 함수를 호출하는 함수들에 대한 그래프입니다.:

◆ UpdateInnerCircleProgress()

void UChargeGaugeWidget::UpdateInnerCircleProgress ( )
protected
128{
129 if (CachedStateComp.IsValid() == false)
130 {
131 return;
132 }
133
134 UChargeStateComponent* StateComp = CachedStateComp.Get();
135
136 if (StateComp->IsCharging() == false)
137 {
138 return;
139 }
140
141 SetInnerCircleProgress(StateComp->GetProgressValue());
142}
이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:
이 함수를 호출하는 함수들에 대한 그래프입니다.:

멤버 데이터 문서화

◆ bSkipNextInnerCircleProgressUpdate

uint8 UChargeGaugeWidget::bSkipNextInnerCircleProgressUpdate
protected

◆ CachedStateComp

TWeakObjectPtr<UChargeStateComponent> UChargeGaugeWidget::CachedStateComp
protected

◆ IMG_InnerCircleProgressBar

TObjectPtr<UImage> UChargeGaugeWidget::IMG_InnerCircleProgressBar
protected

◆ IMG_PhaseCircleProgressBar

TObjectPtr<UImage> UChargeGaugeWidget::IMG_PhaseCircleProgressBar
protected

◆ InnerCircleProgressMaterial

TObjectPtr<UMaterialInstanceDynamic> UChargeGaugeWidget::InnerCircleProgressMaterial
protected

◆ PhaseCircleProgressMaterial

TObjectPtr<UMaterialInstanceDynamic> UChargeGaugeWidget::PhaseCircleProgressMaterial
protected

◆ ProgressParameterName

const FName UChargeGaugeWidget::ProgressParameterName = TEXT("Progress")
protected

◆ SegmentsParameterName

const FName UChargeGaugeWidget::SegmentsParameterName = TEXT("Segments")
protected

이 클래스에 대한 문서화 페이지는 다음의 파일들로부터 생성되었습니다.: