KLingo Project Documentation 1.0.0
Unreal Engine 5.6 C++ Project Documentation
로딩중...
검색중...
일치하는것 없음
UPopup_WriteBoard 클래스 참조

#include <Popup_WriteBoard.h>

+ UPopup_WriteBoard에 대한 상속 다이어그램 :
+ UPopup_WriteBoard에 대한 협력 다이어그램:

Public 멤버 함수

 UPopup_WriteBoard (const FObjectInitializer &ObjectInitializer)
 
FVector2D GetPrevMousePos ()
 
void InitPopup (int32 InQid, const FWriteQuestionData &InQuestionData)
 
virtual void NativeConstruct () override
 
virtual void NativeOnInitialized () override
 
virtual void NativeTick (const FGeometry &MyGeometry, float InDeltaTime) override
 
void OpenAnimation ()
 팝업 오픈 애니메이션을 재생합니다
 

Public 속성

bool bAllowPlayerControl = false
 이 팝업이 활성화되어 있을 때 플레이어 조작을 허용할지 여부
 
FOnCanvasSaved OnCanvasSaved
 캔버스 저장 완료 시 호출되는 델리게이트
 

Protected 멤버 함수

void AdjustLength ()
 
void ClearWriteBoard ()
 
virtual FReply NativeOnMouseButtonDown (const FGeometry &InGeometry, const FPointerEvent &InMouseEvent) override
 
virtual FReply NativeOnMouseButtonUp (const FGeometry &InGeometry, const FPointerEvent &InMouseEvent) override
 
virtual FReply NativeOnMouseMove (const FGeometry &InGeometry, const FPointerEvent &InMouseEvent) override
 
void UpdateAnimation (float InDeltaTime)
 스크립트 오픈 애니메이션 업데이트
 

Protected 속성

bool bIsDrawing
 
bool bIsOpenAnim = false
 애니메이션 재생 중 여부
 
UWidgetAnimation * BlueprintOpenAnimation
 블루프린트에서 정의한 오픈 애니메이션
 
TObjectPtr< class UImageButtonButton_Save
 
TArray< class UImage * > DotLineImages
 
TArray< class UTextBlock * > GuideTexts
 
TObjectPtr< class UHorizontalBox > HorizontalBox_DotLine
 
TObjectPtr< class UHorizontalBox > HorizontalBox_Guide
 
TObjectPtr< class UImage > Image_Canvas
 
EGameSoundType OpenAnimSound = EGameSoundType::UI_PopupOpen
 팝업 오픈 시 재생될 사운드 타입
 
float OpenDuration = 0.2f
 애니메이션 지속 시간
 
EEaseType OpenEaseType = EEaseType::EaseOutBack
 Easing 타입
 
float OpenElapsedTime = 0.0f
 경과 시간
 
FVector2D OpenPivot = FVector2D(0.5f, 0.5f)
 애니메이션 중심점 (0~1 범위)
 
float OpenStartScale = 0.8f
 시작 스케일
 
float OpenTargetScale = 1.0f
 목표 스케일
 
TObjectPtr< class UOverlay > Overlay_WriteBoard
 
EPopupType PopupType
 
FVector2D prevMousePos
 
TObjectPtr< class UTextureRenderTarget2D > RT_Canvas
 
TObjectPtr< class USizeBox > SizeBox_Canvas
 
FSlateFontInfo tempFontInfo
 
TObjectPtr< class UTextBlock > Text_Guide
 
TObjectPtr< class UTextBlock > Text_Question
 

Private 멤버 함수

void ClearCanvas ()
 
void DrawLines (FVector2D mousePos, FLinearColor drawColor)
 
void DrawPoint (FVector2D mousePos, FLinearColor drawColor)
 
FVector2D GetLocalMousePos (FVector2D mousePos)
 
void SaveCanvas ()
 

Private 속성

int32 AnswerIdx = 0
 
FString AnswerKr
 
float borderMinWidth = 560
 
TObjectPtr< class UTexture2D > dotLineTexture
 
TObjectPtr< class UFont > guideTextFont
 
int32 Qid
 
float stepLength = 360
 
TObjectPtr< class UWriteBoardwriteBoardObject
 

상세한 설명

Popup_WriteBoard.h 파일의 17 번째 라인에서 정의되었습니다.

생성자 & 소멸자 문서화

◆ UPopup_WriteBoard()

UPopup_WriteBoard::UPopup_WriteBoard ( const FObjectInitializer &  ObjectInitializer)

Popup_WriteBoard.cpp 파일의 19 번째 라인에서 정의되었습니다.

19 : Super(ObjectInitializer)
20{
21 ConstructorHelpers::FObjectFinder<UTextureRenderTarget2D> rtCanvasRef(TEXT("/Script/Engine.TextureRenderTarget2D'/Game/CustomContents/UI/DrawingBoard/RT_Canvas.RT_Canvas'"));
22 if (rtCanvasRef.Succeeded())
23 {
24 RT_Canvas = rtCanvasRef.Object;
25 }
26
27 ConstructorHelpers::FObjectFinder<UTexture2D> dotLineImageRef(TEXT("/Script/Engine.Texture2D'/Game/CustomContents/UI/DrawingBoard/writepanel.writepanel'"));
28 if (dotLineImageRef.Succeeded())
29 {
30 dotLineTexture = dotLineImageRef.Object;
31 }
32
33 ConstructorHelpers::FObjectFinder<UFont> guideTextFontRef(TEXT("/Script/Engine.Font'/Engine/EngineFonts/Roboto.Roboto'"));
34 if (guideTextFontRef.Succeeded())
35 {
36 guideTextFont = guideTextFontRef.Object;
37 }
38}
TObjectPtr< class UTextureRenderTarget2D > RT_Canvas
TObjectPtr< class UTexture2D > dotLineTexture
TObjectPtr< class UFont > guideTextFont

다음을 참조함 : dotLineTexture, guideTextFont, RT_Canvas.

멤버 함수 문서화

◆ AdjustLength()

void UPopup_WriteBoard::AdjustLength ( )
protected

Popup_WriteBoard.cpp 파일의 131 번째 라인에서 정의되었습니다.

132{
133 // 예상 답변에 따른 WriteBoard 길이 조절
134 float letterNum = AnswerKr.Len();
135
136 // 1. Render Target 길이 늘리기
137 RT_Canvas->ResizeTarget(stepLength * letterNum, stepLength);
138
139 // 2. Image의 길이 늘리기
140 Image_Canvas->SetDesiredSizeOverride(FVector2D(stepLength * letterNum, stepLength));
141
142 // 예상 답변 힌트 생성
143 for (const TCHAR letter : AnswerKr)
144 {
145 // 십자 점선 칸 이미지 추가
146 UImage* tempImage = NewObject<UImage>(this, UImage::StaticClass());
147 tempImage->SetBrushFromTexture(dotLineTexture);
148
149 // 이미지 크기 설정
150 FSlateBrush tempImageBrush = tempImage->GetBrush();
151 tempImageBrush.SetImageSize(FVector2D(360));
152 tempImage->SetBrush(tempImageBrush);
153
154 HorizontalBox_DotLine->AddChildToHorizontalBox(tempImage);
155 DotLineImages.Add(tempImage);
156
157 // 글자 힌트 텍스트 추가
158 UTextBlock* tempText = NewObject<UTextBlock>(this, UTextBlock::StaticClass());
159 tempText->SetText(FText::FromString(FString::Printf(TEXT("%c"), letter)));
160 tempText->SetColorAndOpacity(FLinearColor(0.4f, 0.4f, 0.4f, 0.5f));
161 tempText->SetMinDesiredWidth(360.f);
162 tempText->SetJustification(ETextJustify::Type::Center);
163
164 // 글자 폰트 크기 설정
165 tempText->SetFont(tempFontInfo);
166
167 HorizontalBox_Guide->AddChildToHorizontalBox(tempText);
168 GuideTexts.Add(tempText);
169 }
170}
TObjectPtr< class UImage > Image_Canvas
TArray< class UTextBlock * > GuideTexts
FSlateFontInfo tempFontInfo
TArray< class UImage * > DotLineImages
TObjectPtr< class UHorizontalBox > HorizontalBox_Guide
TObjectPtr< class UHorizontalBox > HorizontalBox_DotLine

다음을 참조함 : AnswerKr, DotLineImages, dotLineTexture, GuideTexts, HorizontalBox_DotLine, HorizontalBox_Guide, Image_Canvas, RT_Canvas, stepLength, tempFontInfo.

다음에 의해서 참조됨 : InitPopup().

+ 이 함수를 호출하는 함수들에 대한 그래프입니다.:

◆ ClearCanvas()

void UPopup_WriteBoard::ClearCanvas ( )
private

Popup_WriteBoard.cpp 파일의 242 번째 라인에서 정의되었습니다.

243{
244 UKismetRenderingLibrary::ClearRenderTarget2D(this, RT_Canvas, RT_Canvas->ClearColor);
245}

다음을 참조함 : RT_Canvas.

다음에 의해서 참조됨 : SaveCanvas().

+ 이 함수를 호출하는 함수들에 대한 그래프입니다.:

◆ ClearWriteBoard()

void UPopup_WriteBoard::ClearWriteBoard ( )
protected

Popup_WriteBoard.cpp 파일의 172 번째 라인에서 정의되었습니다.

173{
174 HorizontalBox_DotLine->ClearChildren();
175 HorizontalBox_Guide->ClearChildren();
176}

다음을 참조함 : HorizontalBox_DotLine, HorizontalBox_Guide.

다음에 의해서 참조됨 : InitPopup().

+ 이 함수를 호출하는 함수들에 대한 그래프입니다.:

◆ DrawLines()

void UPopup_WriteBoard::DrawLines ( FVector2D  mousePos,
FLinearColor  drawColor 
)
private

Popup_WriteBoard.cpp 파일의 194 번째 라인에서 정의되었습니다.

195{
196 // Begin Draw Canvas To Render Target
197 UCanvas* canvas = nullptr;
198 FVector2D size;
199 FDrawToRenderTargetContext context;
200 UKismetRenderingLibrary::BeginDrawCanvasToRenderTarget(this, RT_Canvas, canvas, size, context);
201
202 // Calculate Draw Positions
203 FVector2D currPos = prevMousePos;
204 int32 div = 64;
205 FVector2D drawOffset = (mousePos - currPos) / div;
206
207 // Draw
208 for (int32 i = 1; i < div; ++i)
209 {
210 currPos = prevMousePos + drawOffset * i;
211
212 // Set thickness Whether now in Draw or Erase
213 float thickness = (drawColor == FLinearColor::Black) ? 10 : 25;
214 // Draw Line
215 canvas->K2_DrawLine(prevMousePos, currPos, thickness, drawColor);
216 }
217 prevMousePos = mousePos;
218
219 UKismetRenderingLibrary::EndDrawCanvasToRenderTarget(this, context);
220}

다음을 참조함 : prevMousePos, RT_Canvas.

다음에 의해서 참조됨 : NativeOnMouseMove().

+ 이 함수를 호출하는 함수들에 대한 그래프입니다.:

◆ DrawPoint()

void UPopup_WriteBoard::DrawPoint ( FVector2D  mousePos,
FLinearColor  drawColor 
)
private

Popup_WriteBoard.cpp 파일의 178 번째 라인에서 정의되었습니다.

179{
180 // Begin Draw Canvas To Render Target
181 UCanvas* canvas = nullptr;
182 FVector2D size;
183 FDrawToRenderTargetContext context;
184 UKismetRenderingLibrary::BeginDrawCanvasToRenderTarget(this, RT_Canvas, canvas, size, context);
185
186 // Set thickness Whether now in Draw or Erase
187 float thickness = (drawColor == FLinearColor::Black) ? 10 : 30;
188 // Draw Box
189 canvas->K2_DrawBox(mousePos, FVector2D(1, 1), thickness, drawColor);
190
191 UKismetRenderingLibrary::EndDrawCanvasToRenderTarget(this, context);
192}

다음을 참조함 : RT_Canvas.

다음에 의해서 참조됨 : NativeOnMouseButtonDown().

+ 이 함수를 호출하는 함수들에 대한 그래프입니다.:

◆ GetLocalMousePos()

FVector2D UPopup_WriteBoard::GetLocalMousePos ( FVector2D  mousePos)
private

Popup_WriteBoard.cpp 파일의 222 번째 라인에서 정의되었습니다.

223{
224 return writeBoardObject->GetLocalMousePos(Image_Canvas, RT_Canvas, mousePos);
225}
TObjectPtr< class UWriteBoard > writeBoardObject

다음을 참조함 : Image_Canvas, RT_Canvas, writeBoardObject.

다음에 의해서 참조됨 : NativeOnMouseButtonDown(), NativeOnMouseButtonUp(), NativeOnMouseMove().

+ 이 함수를 호출하는 함수들에 대한 그래프입니다.:

◆ GetPrevMousePos()

FVector2D UPopup_WriteBoard::GetPrevMousePos ( )

Popup_WriteBoard.cpp 파일의 71 번째 라인에서 정의되었습니다.

72{
73 return prevMousePos;
74}

다음을 참조함 : prevMousePos.

◆ InitPopup()

void UPopup_WriteBoard::InitPopup ( int32  InQid,
const FWriteQuestionData InQuestionData 
)

Popup_WriteBoard.cpp 파일의 51 번째 라인에서 정의되었습니다.

52{
53 // Button Event
54 Button_Save->OnButtonClickedEvent.RemoveDynamic(this, &UPopup_WriteBoard::SaveCanvas);
55 Button_Save->OnButtonClickedEvent.AddDynamic(this, &UPopup_WriteBoard::SaveCanvas);
56
57 if (Text_Guide != nullptr)
58 {
59 tempFontInfo = Text_Guide->GetFont();
60 Text_Guide->RemoveFromParent();
61 }
62
63 this->Qid = InQid;
64 this->AnswerKr = InQuestionData.answer_kor;
65 this->Text_Question->SetText(FText::FromString(InQuestionData.word_data.eng));
66
69}
TObjectPtr< class UTextBlock > Text_Question
TObjectPtr< class UTextBlock > Text_Guide
TObjectPtr< class UImageButton > Button_Save
FWriteWordData word_data

다음을 참조함 : AdjustLength(), FWriteQuestionData::answer_kor, AnswerKr, Button_Save, ClearWriteBoard(), FWriteWordData::eng, Qid, SaveCanvas(), tempFontInfo, Text_Guide, Text_Question, FWriteQuestionData::word_data.

+ 이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:

◆ NativeConstruct()

void UPopup_WriteBoard::NativeConstruct ( )
overridevirtual

Popup_WriteBoard.cpp 파일의 45 번째 라인에서 정의되었습니다.

46{
47 Super::NativeConstruct();
48 writeBoardObject = NewObject<UWriteBoard>();
49}

다음을 참조함 : writeBoardObject.

◆ NativeOnInitialized()

void UPopup_WriteBoard::NativeOnInitialized ( )
overridevirtual

Popup_WriteBoard.cpp 파일의 40 번째 라인에서 정의되었습니다.

41{
42 Super::NativeOnInitialized();
43}

◆ NativeOnMouseButtonDown()

FReply UPopup_WriteBoard::NativeOnMouseButtonDown ( const FGeometry &  InGeometry,
const FPointerEvent &  InMouseEvent 
)
overrideprotectedvirtual

Popup_WriteBoard.cpp 파일의 76 번째 라인에서 정의되었습니다.

77{
78 // Check Mouse is in Canvas
79 const FGeometry CanvasGeometry = Image_Canvas->GetCachedGeometry();
80 if (!CanvasGeometry.IsUnderLocation(InMouseEvent.GetScreenSpacePosition()))
81 {
82 return FReply::Unhandled();
83 }
84
85 // Get Mouse Position in Local Image Coordinate System
86 // Save Current MousePos to prevMousePos
87 prevMousePos = GetLocalMousePos(InMouseEvent.GetScreenSpacePosition());
88 bIsDrawing = true;
89
90 // Draw Point Once
91 // PRINT_STRING(TEXT("%s"), *InMouseEvent.GetEffectingButton().GetFName().ToString());
92 if (InMouseEvent.IsMouseButtonDown(EKeys::LeftMouseButton)) // Draw
93 {
94 DrawPoint(GetLocalMousePos(InMouseEvent.GetScreenSpacePosition()), FLinearColor::Black);
95 }
96 else if (InMouseEvent.IsMouseButtonDown(EKeys::RightMouseButton)) // Erase
97 {
98 DrawPoint(GetLocalMousePos(InMouseEvent.GetScreenSpacePosition()), FLinearColor::White);
99 }
100
101 return FReply::Handled();
102}
FVector2D GetLocalMousePos(FVector2D mousePos)
void DrawPoint(FVector2D mousePos, FLinearColor drawColor)

다음을 참조함 : bIsDrawing, DrawPoint(), GetLocalMousePos(), Image_Canvas, prevMousePos.

+ 이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:

◆ NativeOnMouseButtonUp()

FReply UPopup_WriteBoard::NativeOnMouseButtonUp ( const FGeometry &  InGeometry,
const FPointerEvent &  InMouseEvent 
)
overrideprotectedvirtual

Popup_WriteBoard.cpp 파일의 104 번째 라인에서 정의되었습니다.

105{
106 // Get Mouse Position in Local Image Coordinate System
107 // Save ZeroVector to prevMousePos
108 prevMousePos = GetLocalMousePos(FVector2D::ZeroVector);
109 bIsDrawing = false;
110
111 return FReply::Handled();
112}

다음을 참조함 : bIsDrawing, GetLocalMousePos(), prevMousePos.

+ 이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:

◆ NativeOnMouseMove()

FReply UPopup_WriteBoard::NativeOnMouseMove ( const FGeometry &  InGeometry,
const FPointerEvent &  InMouseEvent 
)
overrideprotectedvirtual

Popup_WriteBoard.cpp 파일의 114 번째 라인에서 정의되었습니다.

115{
116 // return When Mouse Not Pressed
117 if (!bIsDrawing) return Super::NativeOnMouseMove(InGeometry, InMouseEvent);
118
119 if (InMouseEvent.IsMouseButtonDown(EKeys::LeftMouseButton)) // Draw
120 {
121 DrawLines(GetLocalMousePos(InMouseEvent.GetScreenSpacePosition()), FLinearColor::Black);
122 }
123 else if (InMouseEvent.IsMouseButtonDown(EKeys::RightMouseButton)) // Erase
124 {
125 DrawLines(GetLocalMousePos(InMouseEvent.GetScreenSpacePosition()), FLinearColor::White);
126 }
127
128 return FReply::Handled();
129}
void DrawLines(FVector2D mousePos, FLinearColor drawColor)

다음을 참조함 : bIsDrawing, DrawLines(), GetLocalMousePos().

+ 이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:

◆ NativeTick()

void UBasePopup::NativeTick ( const FGeometry &  MyGeometry,
float  InDeltaTime 
)
overridevirtualinherited

UBasePopup.cpp 파일의 7 번째 라인에서 정의되었습니다.

8{
9 Super::NativeTick(MyGeometry, InDeltaTime);
10
11 if (bIsOpenAnim)
12 {
13 UpdateAnimation(InDeltaTime);
14 }
15}
bool bIsOpenAnim
애니메이션 재생 중 여부
Definition UBasePopup.h:57
void UpdateAnimation(float InDeltaTime)
스크립트 오픈 애니메이션 업데이트

다음을 참조함 : UBasePopup::bIsOpenAnim, UBasePopup::UpdateAnimation().

+ 이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:

◆ OpenAnimation()

void UBasePopup::OpenAnimation ( )
inherited

팝업 오픈 애니메이션을 재생합니다

UBasePopup.cpp 파일의 17 번째 라인에서 정의되었습니다.

18{
19 if (!IsInViewport())
20 {
21 AddToViewport();
22 }
23
24 // 팝업 오픈 사운드 재생 (None이 아닐 때만)
26 {
27 if (UGameSoundManager* SoundManager = UGameSoundManager::Get(this))
28 {
29 SoundManager->PlaySound2D(OpenAnimSound);
30 }
31 }
32
33 // 블루프린트에서 정의한 애니메이션이 있으면 해당 애니메이션 재생
35 {
36 PlayAnimation(BlueprintOpenAnimation);
37 return;
38 }
39
40 // 블루프린트 애니메이션이 없으면 기본 스크립트 애니메이션 사용
41 SetRenderTransformPivot(OpenPivot);
42 SetRenderScale(FVector2D(OpenStartScale, OpenStartScale));
43
44 bIsOpenAnim = OpenDuration > KINDA_SMALL_NUMBER;
45 OpenElapsedTime = 0.0f;
46
47 if (!bIsOpenAnim)
48 {
49 SetRenderScale(FVector2D(OpenTargetScale, OpenTargetScale));
50 }
51}
EGameSoundType OpenAnimSound
팝업 오픈 시 재생될 사운드 타입
Definition UBasePopup.h:96
float OpenDuration
애니메이션 지속 시간
Definition UBasePopup.h:64
float OpenElapsedTime
경과 시간
Definition UBasePopup.h:60
float OpenStartScale
시작 스케일
Definition UBasePopup.h:68
FVector2D OpenPivot
애니메이션 중심점 (0~1 범위)
Definition UBasePopup.h:76
float OpenTargetScale
목표 스케일
Definition UBasePopup.h:72
UWidgetAnimation * BlueprintOpenAnimation
블루프린트에서 정의한 오픈 애니메이션
Definition UBasePopup.h:45
게임 내 모든 사운드 재생을 관리하는 중앙 사운드 관리 서브시스템입니다.

다음을 참조함 : UBasePopup::bIsOpenAnim, UBasePopup::BlueprintOpenAnimation, None, UBasePopup::OpenAnimSound, UBasePopup::OpenDuration, UBasePopup::OpenElapsedTime, UBasePopup::OpenPivot, UBasePopup::OpenStartScale, UBasePopup::OpenTargetScale.

◆ SaveCanvas()

void UPopup_WriteBoard::SaveCanvas ( )
private

Popup_WriteBoard.cpp 파일의 227 번째 라인에서 정의되었습니다.

228{
229 if (const auto PopupMgr = UPopupManager::Get(GetWorld()))
230 {
231 if (writeBoardObject != nullptr)
232 writeBoardObject->SaveCanvas(Qid, RT_Canvas);
233
234 // 캔버스 저장 완료 델리게이트 브로드캐스트
235 OnCanvasSaved.Broadcast();
236
237 ClearCanvas();
238 PopupMgr->HideCurrentPopup(false);
239 }
240}
FOnCanvasSaved OnCanvasSaved
캔버스 저장 완료 시 호출되는 델리게이트

다음을 참조함 : ClearCanvas(), OnCanvasSaved, Qid, RT_Canvas, writeBoardObject.

다음에 의해서 참조됨 : InitPopup().

+ 이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:
+ 이 함수를 호출하는 함수들에 대한 그래프입니다.:

◆ UpdateAnimation()

void UBasePopup::UpdateAnimation ( float  InDeltaTime)
protectedinherited

스크립트 오픈 애니메이션 업데이트

UBasePopup.cpp 파일의 53 번째 라인에서 정의되었습니다.

54{
55 if (!bIsOpenAnim)
56 {
57 return;
58 }
59
60 OpenElapsedTime += InDeltaTime;
61
62 const float Alpha = FMath::Clamp(OpenElapsedTime / OpenDuration, 0.0f, 1.0f);
63 const float EasedAlpha = FEaseHelper::Ease(Alpha, OpenEaseType);
64 const float NewScale = FMath::Lerp(OpenStartScale, OpenTargetScale, EasedAlpha);
65
66 SetRenderScale(FVector2D(NewScale, NewScale));
67
68 if (Alpha >= 1.0f)
69 {
70 bIsOpenAnim = false;
71 }
72}
EEaseType OpenEaseType
Easing 타입
Definition UBasePopup.h:83
static float Ease(float Alpha, EEaseType Type)
Definition FEaseHelper.h:45

다음을 참조함 : UBasePopup::bIsOpenAnim, FEaseHelper::Ease(), UBasePopup::OpenDuration, UBasePopup::OpenEaseType, UBasePopup::OpenElapsedTime, UBasePopup::OpenStartScale, UBasePopup::OpenTargetScale.

다음에 의해서 참조됨 : UBasePopup::NativeTick().

+ 이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:
+ 이 함수를 호출하는 함수들에 대한 그래프입니다.:

멤버 데이터 문서화

◆ AnswerIdx

int32 UPopup_WriteBoard::AnswerIdx = 0
private

Popup_WriteBoard.h 파일의 94 번째 라인에서 정의되었습니다.

◆ AnswerKr

FString UPopup_WriteBoard::AnswerKr
private

Popup_WriteBoard.h 파일의 91 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : AdjustLength(), InitPopup().

◆ bAllowPlayerControl

bool UBasePopup::bAllowPlayerControl = false
inherited

이 팝업이 활성화되어 있을 때 플레이어 조작을 허용할지 여부

true면 이 팝업이 열려있어도 플레이어가 캐릭터를 조작할 수 있습니다. 기본값은 false (대부분의 팝업은 플레이어 조작을 차단)

UBasePopup.h 파일의 105 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : UPopup_DailyStudy::NativeConstruct(), UPopup_SpeakQuestJudes::NativeConstruct().

◆ bIsDrawing

bool UPopup_WriteBoard::bIsDrawing
protected

Popup_WriteBoard.h 파일의 71 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : NativeOnMouseButtonDown(), NativeOnMouseButtonUp(), NativeOnMouseMove().

◆ bIsOpenAnim

bool UBasePopup::bIsOpenAnim = false
protectedinherited

애니메이션 재생 중 여부

UBasePopup.h 파일의 57 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : UBasePopup::NativeTick(), UBasePopup::OpenAnimation(), UBasePopup::UpdateAnimation().

◆ BlueprintOpenAnimation

UWidgetAnimation* UBasePopup::BlueprintOpenAnimation
protectedinherited

블루프린트에서 정의한 오픈 애니메이션

설정된 경우 스크립트 애니메이션 대신 이 애니메이션을 재생합니다.

UBasePopup.h 파일의 45 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : UBasePopup::OpenAnimation().

◆ borderMinWidth

float UPopup_WriteBoard::borderMinWidth = 560
private

Popup_WriteBoard.h 파일의 98 번째 라인에서 정의되었습니다.

◆ Button_Save

TObjectPtr<class UImageButton> UPopup_WriteBoard::Button_Save
protected

Popup_WriteBoard.h 파일의 48 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : InitPopup().

◆ DotLineImages

TArray<class UImage*> UPopup_WriteBoard::DotLineImages
protected

Popup_WriteBoard.h 파일의 54 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : AdjustLength().

◆ dotLineTexture

TObjectPtr<class UTexture2D> UPopup_WriteBoard::dotLineTexture
private

Popup_WriteBoard.h 파일의 102 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : UPopup_WriteBoard(), AdjustLength().

◆ guideTextFont

TObjectPtr<class UFont> UPopup_WriteBoard::guideTextFont
private

Popup_WriteBoard.h 파일의 104 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : UPopup_WriteBoard().

◆ GuideTexts

TArray<class UTextBlock*> UPopup_WriteBoard::GuideTexts
protected

Popup_WriteBoard.h 파일의 59 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : AdjustLength().

◆ HorizontalBox_DotLine

TObjectPtr<class UHorizontalBox> UPopup_WriteBoard::HorizontalBox_DotLine
protected

Popup_WriteBoard.h 파일의 52 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : AdjustLength(), ClearWriteBoard().

◆ HorizontalBox_Guide

TObjectPtr<class UHorizontalBox> UPopup_WriteBoard::HorizontalBox_Guide
protected

Popup_WriteBoard.h 파일의 57 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : AdjustLength(), ClearWriteBoard().

◆ Image_Canvas

TObjectPtr<class UImage> UPopup_WriteBoard::Image_Canvas
protected

Popup_WriteBoard.h 파일의 65 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : AdjustLength(), GetLocalMousePos(), NativeOnMouseButtonDown().

◆ OnCanvasSaved

FOnCanvasSaved UPopup_WriteBoard::OnCanvasSaved

캔버스 저장 완료 시 호출되는 델리게이트

Popup_WriteBoard.h 파일의 33 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : SaveCanvas().

◆ OpenAnimSound

EGameSoundType UBasePopup::OpenAnimSound = EGameSoundType::UI_PopupOpen
protectedinherited

팝업 오픈 시 재생될 사운드 타입

블루프린트에서 팝업별로 다른 사운드를 설정할 수 있습니다. None으로 설정하면 사운드를 재생하지 않습니다. 기본값은 UI_PopupOpen입니다.

UBasePopup.h 파일의 96 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : UBasePopup::OpenAnimation().

◆ OpenDuration

float UBasePopup::OpenDuration = 0.2f
protectedinherited

애니메이션 지속 시간

UBasePopup.h 파일의 64 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : UBasePopup::OpenAnimation(), UBasePopup::UpdateAnimation().

◆ OpenEaseType

EEaseType UBasePopup::OpenEaseType = EEaseType::EaseOutBack
protectedinherited

Easing 타입

애니메이션의 보간 곡선을 선택합니다. 기본값은 EaseOutBack (탄성 효과)

UBasePopup.h 파일의 83 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : UBasePopup::UpdateAnimation().

◆ OpenElapsedTime

float UBasePopup::OpenElapsedTime = 0.0f
protectedinherited

경과 시간

UBasePopup.h 파일의 60 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : UBasePopup::OpenAnimation(), UBasePopup::UpdateAnimation().

◆ OpenPivot

FVector2D UBasePopup::OpenPivot = FVector2D(0.5f, 0.5f)
protectedinherited

애니메이션 중심점 (0~1 범위)

UBasePopup.h 파일의 76 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : UBasePopup::OpenAnimation().

◆ OpenStartScale

float UBasePopup::OpenStartScale = 0.8f
protectedinherited

시작 스케일

UBasePopup.h 파일의 68 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : UBasePopup::OpenAnimation(), UBasePopup::UpdateAnimation().

◆ OpenTargetScale

float UBasePopup::OpenTargetScale = 1.0f
protectedinherited

목표 스케일

UBasePopup.h 파일의 72 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : UBasePopup::OpenAnimation(), UBasePopup::UpdateAnimation().

◆ Overlay_WriteBoard

TObjectPtr<class UOverlay> UPopup_WriteBoard::Overlay_WriteBoard
protected

Popup_WriteBoard.h 파일의 42 번째 라인에서 정의되었습니다.

◆ PopupType

EPopupType UBasePopup::PopupType
protectedinherited

UBasePopup.h 파일의 34 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : UPopup_InputMsg::InitPopup(), UPopup_InputMsg::OnClickOk().

◆ prevMousePos

FVector2D UPopup_WriteBoard::prevMousePos
protected

Popup_WriteBoard.h 파일의 69 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : DrawLines(), GetPrevMousePos(), NativeOnMouseButtonDown(), NativeOnMouseButtonUp().

◆ Qid

int32 UPopup_WriteBoard::Qid
private

Popup_WriteBoard.h 파일의 90 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : InitPopup(), SaveCanvas().

◆ RT_Canvas

TObjectPtr<class UTextureRenderTarget2D> UPopup_WriteBoard::RT_Canvas
protected

Popup_WriteBoard.h 파일의 38 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : UPopup_WriteBoard(), AdjustLength(), ClearCanvas(), DrawLines(), DrawPoint(), GetLocalMousePos(), SaveCanvas().

◆ SizeBox_Canvas

TObjectPtr<class USizeBox> UPopup_WriteBoard::SizeBox_Canvas
protected

Popup_WriteBoard.h 파일의 46 번째 라인에서 정의되었습니다.

◆ stepLength

float UPopup_WriteBoard::stepLength = 360
private

Popup_WriteBoard.h 파일의 96 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : AdjustLength().

◆ tempFontInfo

FSlateFontInfo UPopup_WriteBoard::tempFontInfo
protected

Popup_WriteBoard.h 파일의 62 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : AdjustLength(), InitPopup().

◆ Text_Guide

TObjectPtr<class UTextBlock> UPopup_WriteBoard::Text_Guide
protected

Popup_WriteBoard.h 파일의 61 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : InitPopup().

◆ Text_Question

TObjectPtr<class UTextBlock> UPopup_WriteBoard::Text_Question
protected

Popup_WriteBoard.h 파일의 44 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : InitPopup().

◆ writeBoardObject

TObjectPtr<class UWriteBoard> UPopup_WriteBoard::writeBoardObject
private

Popup_WriteBoard.h 파일의 87 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : GetLocalMousePos(), NativeConstruct(), SaveCanvas().


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