๐
2025-07-28
// BP ์์
์ฐธ์กฐํด์ ํด๋์ค ๊ฐ์ ธ์ค๊ธฐ
static ConstructorHelpers::FClassFinder<APawn> ThirdPersonClassRef(
TEXT("/Game/ThirdPerson/Blueprints/BP_ThirdPersonCharacter.BP_ThirdPersonCharacter_C"));
// C++ ํด๋์ค ์ฐธ์กฐํด์ ํด๋์ค ๊ฐ์ ธ์ค๊ธฐ
static ConstructorHelpers::FClassFinder<APlayerController> PlayerControllerClassRef(
TEXT("/Script/ArenaBattle.ABPlayerController"));
์์ ๊ฐ์ ๋ฐฉ๋ฒ์ผ๋ก ๋ธ๋ฃจํ๋ฆฐํธ๋ C++ ํด๋์ค์ ๋ ํผ๋ฐ์ค๋ฅผ ์ธ๋ฆฌ์ผ ์๋ํฐ์์ ๋ณต์ฌํ์ฌ ํค๋ ์์ด ํด๋์ค ์ ๋ณด๋ฅผ ๊ฐ์ ธ์ฌ ์ ์๋ค.
ConstructorHelpers::FClassFinder<> ๊ฐ ์ฐพ๋ ๊ฐ์ UClass ์ด๊ธฐ ๋๋ฌธ์ ๋ธ๋ฃจํ๋ฆฐํธ์ C++ ํด๋์ค์์ ์ฌ์ฉํ๋ ๊ฒฝ๋ก๊ฐ ๋ค๋ฅด๊ฒ ๋ณด์ธ๋ค.
๋ธ๋ฃจํ๋ฆฐํธ์ ๊ฒฝ์ฐ ์ค์ Content ํด๋์ ์๋ .uasset ๊ธฐ๋ฐ ๊ฒฝ๋ก๋ฅผ ์ฌ์ฉํ์ง๋ง
UClass ๋ ์ธ๋ฆฌ์ผ ์์ง์ด ๋ฐํ์์ ์ฌ์ฉํ๊ธฐ ์ํด ๋ฆฌํ๋ ์
์์คํ
์ ๋ฑ๋กํ ํด๋์ค์ด๋ฏ๋ก C++ ํด๋์ค ํ์ผ์ ์ค์ ๋์คํฌ ๊ฒฝ๋ก๊ฐ ์๋๋ผ /Script/๋ชจ๋๋ช
.ํด๋์ค๋ช
๊ฐ์ ๊ฐ์ ๊ฒฝ๋ก๋ฅผ ์ฌ์ฉํ๋ค.
.uassetUBlueprintUClass ๊ฐ์ฒด_C๋ฅผ ๋ถ์ธ๋ค์์ ์ผ๋ก ๋ถํฐ ์ง์ ์ฐธ์กฐ๋ฅผ ๋ฐ๊ธฐ ๋๋ฌธ์ ํค๋ํ์ผ์ ์์กด์ฑ์ ์์จ ์ ์๋ค.
boolean ์ผ๋ก ์ ์ธํ๋ฉด ์ฌ์ด์ฆ๊ฐ ์ด๋ป๊ฒ ๋ ์ง ๋ช
ํํ์ง ์๊ธฐ ๋๋ฌธ์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ ์ฝํ๊ธฐ ์ํด ์ธ๋ฆฌ์ผ์์๋ integerํ์ผ๋ก bool์ ์ ์ธํ๋ ๋ณ์๋ช
์์ ์ ๋์ฌ b๋ฅผ ๋ถ์ฌ ๋ค๋ฅธ integerํ๊ณผ ๊ตฌ๋ถํ๊ณ ๋นํธ ํ๋๊ทธ๋ฅผ ๋ฌ์์ค๋ค.
์ฌ์ด์ฆ๊ฐ ๋ช
ํํ boolean ํ์
์ ์ ์ธํ ์ ์๋ค.
// 1๋นํธ๋ง ํ ๋น
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = Character)
uint8 bIsIdle : 1;
GAS๋ฅผ ํ์ตํ๊ธฐ์ํด ๊ธฐ์ด ์ธ๋ฆฌ์ผ ๊ฐ์๋ถํฐ ๋ฃ๊ณ ์๋๋ฐ ๊ฐ์ฌ๋๋ณ๋ก ๊ตฌํํ๋ ๋ฐฉ์์ด ๋ฌ๋ผ ๊ฐ์ ๋ถ๋ถ์ด์ด๋ ์ฒ์ ๋ฃ๊ฒ ๋๋ ์ง์์ด ๋ง์ ๊ฒ ๊ฐ๋ค.
์ถ์ฒ ์ธํ๋ฐ: ์ด๋์ฐ์ ์ธ๋ฆฌ์ผ ํ๋ก๊ทธ๋๋ฐ Part2. 2-1