[Unrael Engine] IWYU ๊ฐ„๋‹จ ์ •๋ฆฌ
ยท
๐Ÿ–ฅ๏ธ Study Note/Unreal Engine
IWYU๋Š” “Include What You Use” ์˜ ์ค€๋ง๋กœ, ์†Œ์Šค ์ฝ”๋“œ์— ํ•„์š”ํ•œ ํ—ค๋” ํŒŒ์ผ๋งŒ ํฌํ•จ(Include) ํ•ด์•ผ ํ•œ๋‹ค๋Š” ์›์น™์ž…๋‹ˆ๋‹ค. Unreal Engine์€ ํ•ด๋‹น IWYU๋ฅผ ์ค€์ˆ˜ํ•˜๊ธฐ ์œ„ํ•ด ์–ธ๋ฆฌ์–ผ 5 ๋ฒ„์ „๋ถ€ํ„ฐ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ทœ์น™์„ ์ ์šฉํ•ฉ๋‹ˆ๋‹ค.๋ชจ๋“  ํ—ค๋” ํŒŒ์ผ์€ ํ•„์ˆ˜๊ธฐ๋Šฅ์ด ์ง‘์•ฝ๋œ CoreMinimal.h๋ฅผ ํฌํ•จํ•ฉ๋‹ˆ๋‹ค.*.cpp ํŒŒ์ผ์€ ๋งค์นญ๋œ *.h ํŒŒ์ผ์„ ์šฐ์„  ํฌํ•จํ•ฉ๋‹ˆ๋‹ค.UBT(Unreal Build Tool)์—์„œ ์–ด๋–ค PCH(Precompiled Header)๋ฅผ Include ํ• ์ง€ ํŒ๋‹จํ•˜์—ฌ ํฌํ•จํ•ฉ๋‹ˆ๋‹ค.Engine.h ๋˜๋Š” UnrealEd.h ๊ฐ™์€ ๋ชจ๋†€๋ฆฌ์‹ ํ—ค๋” ํŒŒ์ผ์€ ๋” ์ด์ƒ ํฌํ•จ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋ชจ๋“ˆ์ด ์œ„ ๊ทœ์น™์„ ์‚ฌ์šฉํ•˜๋„๋ก ํ•˜๋ ค๋ฉด *.Build.cs ํŒŒ์ผ์—์„œ PCHUsage๋ฅผ PCHUsageMod..
[Unreal Engine] Animation Blueprint์—์„œ Owner ์บ๋ฆญํ„ฐ์˜ ์ •๋ณด๋ฅผ ๊ฐ€์ ธ์˜ค๋Š” 3๊ฐ€์ง€ ๋ฐฉ๋ฒ•
ยท
๐Ÿ–ฅ๏ธ Study Note/Unreal Engine
์•ˆ๋…•ํ•˜์„ธ์š” 1๋…„ ์ฐจ ๊ฒŒ์ž„ ํด๋ผ์ด์–ธํŠธ ํ”„๋กœ๊ทธ๋ž˜๋จธ ๐Ÿซ›๋นˆ์ฝฉ์ž…๋‹ˆ๋‹ค~Animation Blueprint์—์„œ Character์˜ ํŠน์ • ์ •๋ณด๋ฅผ ๊ฐ€์ ธ์˜ค๊ณ  ์‹ถ์„ ๋•Œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐฉ๋ฒ• 3๊ฐ€์ง€๋ฅผ ์ •๋ฆฌํ•ด ๋ณด์•˜์Šต๋‹ˆ๋‹ค.1. Casting๋ฐฉ๋ฒ•ABP์—์„œ TryGetPawnOwner๋กœ ์บ๋ฆญํ„ฐ ๊ฐ์ฒด(Object)๋ฅผ ๊ฐ€์ ธ์™€ Casting ํ•˜์—ฌ ์›ํ•˜๋Š” ์ •๋ณด๋ฅผ ๊ฐ€์ ธ์˜ค๋Š” ๋ฐฉ๋ฒ•์„ฑ๋Šฅ : ไธ‹๊ฐ€์žฅ ๊ฐ„๋‹จํ•˜๋ฉด์„œ ๊ฐ€์žฅ ๋น„ํšจ์œจ์ ์ธ ๋ฐฉ๋ฒ•์ด๋‹ค.Casting์„ ํ•  ๊ฒฝ์šฐ ABP๋ฅผ Load ํ•  ๋•Œ ์บ์ŠคํŒ…ํ•œ Character BP๋„ ํ•จ๊ป˜ Load ๋˜๋ฏ€๋กœ ABP๊ฐ€ ๋ฌด๊ฑฐ์›Œ์ง„๋‹ค.ABP_Base์˜ Size Map์„ ๋ณด๋ฉด BP_LyraCharacter๊ฐ€ ํ†ต์งธ๋กœ ํฌํ•จ๋˜์–ด ์žˆ๋Š” ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค. 2. Interface ๋ฐฉ๋ฒ•1. Chracter๋กœ๋ถ€ํ„ฐ ์›ํ•˜๋Š” ์ •๋ณด๋ฅผ ๊ฐ€..