C++ ์ข ํ๋ค๊ฐ DX11๋ ๋์ถฉ ๋ค๋ค๋ณด๊ณ ์ธ๋ฆฌ์ผ C++ ๊ณต๋ถํ๋ ค๊ณ ํ๋ ์ค์ ๋๋คย
์ธ๋ฆฌ์ผ5๊ฐค์ ๋ฌผ์ด๋ด์ผํ๋ ์ถ๊ธดํ๋ฐ ์ฃฝ์ ๊ฐค ๊ฐ๊ธฐ๋ ํ๊ณ ๊ตฌ๊ธ๋งํด๋ณด๋ ์ด ๊ฐค์ด ์ ์ผ ๋ง์ด ๋์์ ํ๋ฒ ์ง๋ฌธ์ฌ๋ฆฝ๋๋น
์ข ์ฐพ์๋ณด๋๊น ๋ธ๋ฃจํ๋ฆฐํธ๋ง ์จ์ ๋ง๋ ํฌํด์ ์๋ฏธ๊ฐ ์๋ค, ์ธ๋ฆฌ์ผ C++๋ก ๋ง๋ ํฌํด์ด ์์ด์ผํ๋ค ๋ผ๋ ์๊ฒฌ์ด ์ฃผ๋ฅ์ธ ๊ฒ ๊ฐ์๋ฐ
๊ทธ๋ ๋ค๊ณ C++๋ง ์จ์ ๋ง๋๋๊ฑด ๋ณ๋ก๋ค, ๋ธ๋ฃจํ๋ฆฐํธ ์ธ๋๋ ๋ธ๋ฃจํ๋ฆฐํธ ์ฐ๊ณ ํ์ํ ๋๋ง C++ ์ฐ๋ฉด ๋๋ค ๋ผ๋ ์๊ฒฌ๋ ๋ง๊ณ ..
๊ฒฐ๋ก ์ ์ผ๋ก ๋์ ์ ์ ํ ์ค๊น์จ์ ํฌํด ๋ง๋๋๊ฒ ์ข์ ๊ฒ ๊ฐ์๋ฐ ์ด๋์ BP๋ฅผ ์ฐ๊ณ ์ด๋์ C++์ ์จ์ผํ๋์ง ๊ฐ์ด ์์กํ๋ค์ ใ
์ด๊ฑด์ด๊ฑฐ ์ ๊ฑด๊ฑฐ์ ์นผ๊ฐ์ด ๋๋ ์ง๋ค๊ธฐ๋ณด๋ค๋ ์ฝ๊ฐ ํ๋ค๋ณด๋ฉด ์ค์ค๋ก ๊นจ์ฐ์น๋ ๊ทธ๋ฐ ์ข ๋ฅ์ ๊ฒ์ธ๊ฐ์?
๊ทธ๋ฆฌ๊ณ ์ฑ ๋ณผ๋ ค๋ฉด ์ด๋์ฐ ์ผ์ธ์ ์ธ๋ฆฌ์ผC++ ๊ฒ์๊ฐ๋ฐ์ ์ ์ <- ๊ทธ๋๋ง ๋ณด๋ ค๋ฉดย ์ด๊ฑฐ๋ง ๋ด๋ผ ๋ผ๊ณ ๋ค ์นด์๋๋ฐ
ํน์ ๋ค๋ฅธ ์ฑ ์ด๋ ์๋๋ฉด ์์ ๊ฐ์๊ฐ์๊ฑฐ ์ถ์ฒํด์ฃผ์๋ฉด ๊ฐ์ฌํ๊ฒ ์๋๋ค,,ย
ex) ์ธ๋ฆฌ์ผ ๊ณต์๋ฌธ์ ์ผ์ธ์นญ ์ํ C++ ํํ ๋ฆฌ์ผ ์ญ ๋ฐ๋ผ๊ฐ๋ด๋ผย // ๋จธ ์ด๋ฐ
ํฌํด์ ๊ฒ์์ ๊ณ๊ฐค์ ๋ฌผ์ด๋ณด์ผ. ์ฌ๊ธด ์ธ๋๊ฐ๋ฐ์ด๋ผ ์ธ๋ฆฌ์ผ๋ฐ์์์ด๋ค. ๊ฐ ๊ณ ๋ ์ฐ์ง
https://m.dcinside.com/board/gamejob
https://dev.epicgames.com/community/learning/courses/X7l/unreal-engine-convertendo-blueprints-para-c/qOLO/unreal-engine-introducao-a-blueprint-vs-c
๋ค์์
๊ฒ์์ ๊ณ๊ฐค์ ์ฐ๋๊ฑฐ ์ถ์ฒ
ํ์ด์ง๊ฐ ๋ธ๋ฆฌ์ง์ด๋ก ๋์ด์๋ค; ์ด์งํผ ์์์ ํ๊ธ์๋ง ๋์ฌ๊ฑฐ์
๋ธ๋ผ์ง๊ฒ์ด๋ ธ
์ผ๋จ์ ์ต์ํด ์ง๋๋ฐ ์ ๋ ํ๋ฉด ๋ ๋ฏ.. ๊ฐ์ธ์ ์ผ๋ก๋ ๋ธํ๊ฐ ํธํด์ ์ฃผ๋ก ๋ธํ๋ก ํ๋ ค๊ณ ํ๋๋ฐ ํ๋ค๋ณด๋ฉด c++๋ก ๊ฐ๋๊ฒ ๋ ํธํ ๋๊ฐ ์๋๋ผ
ในใ ์ด๋ณด๋ฉด ์ด๋์ฐ๊บผ ์ถ์ฒ ์ฝ์ดํ๊ฑฐ ์ฝ๋๋ก ์ฝ๋์์ ํ์๋๋ ์์ ์กํฐ๋ค BP๋ก Weapon ์ ์ฝ๋ BP_Weapon_Pistol , BP_Weapon_Shotgun ๊ฐ์ด ๋ฐ๋ก ๋ถ๋ฆฌํด์ค์ผํ๋์ ๋ค์ BP UI Base ์ฝ๋/ ์์๋ค UMG ๋ก Slate ์ฐ๋ ๋ฏธ์น์๋ผ๋ค์ ๋ค ์ฃฝ์ด๊ณ HUD ๋ง Slate๋ก
Character ์ฝ๋๋ก Character_Default BP๋ก ํ์ํ๋ ์ ๋ค BP๋ก AnimInstance ์ฝ์ดํ๊ฑฐ Proxy ๋ก ์ฝ๋๋ก ํ์์ ABP BP๋ก ๊ฑ ์ฝ์ดํ ๊ธฐ๋ฅ์ ์ฝ๋๋ก ๋๋จธ์ง ์ง์ํ๊ฑฐ ๋ค๋ฃจ๋๊ฑด ๋ค BP๋ก
UMG, BP์์ Tick๋ ธ๋ ์ฐ๋ ์ ๋ค ๊ฐ๊ธ์ ์ฝ๋๋ก / ๋ฐ๋ณต๋ฌธ ์ฐ๋์ ๋ค ์ฝ๋๋ก ์ฑ๋ฅ๋ณด๋ค ์ ์ง๋ณด์ ์ด์ ๋๋ฒ๊น ํ์ํ ์ ๋ค ๋ฌด์กฐ๊ฑด ์ฝ๋๋ก
๊ณจ-๋ ๊ฐ์ฌํฉ๋๋ค.. ์ด๋ ๊ฒ ์ ์ฑ๋ค์ฌ ๋๋ตํด์ฃผ์๋ค๋
BP๋ ๊ฑ ์ธํ ๋ถ์ฌ์ค ๋๋ง ์ฌ์ฉํ๊ณ ์ฃผ ๋ก์ง์ ๋ค C++๋ก ๊ตฌํํด์ผํจ์ฌ
์ธ๋ฆฌ์ผ ๋ชจ๋ฅด๋ฉด ๋ธ๋ฃจํ๋ฆฐํธ ์๋ ค์ฃผ๋ ํํ ๋ฆฌ์ผ์ด๋ ์ธ๊ฐ๊ฐ์๊ฑฐ ๋ณด์๊ณ , C++์ ๊ทธ ์ดํ์ ํ๋ฉด ๋จ์ฌ ์ธ๋ฆฌ์ผ C++ ์ฒจ ํด๋ณด๋ฉด UPROPERTY() UFUNCTION() ๊ทธ๋ฆฌ๊ณ virtual ํจ์ ๋ด๋ถ์ Super:: ๋ถ์ด ์๊ณ , ํ์ํ ๋ชจ๋ ์ฐพ์์ ์ถ๊ฐํ๊ณ ํค๋ ์ผ์ผ์ด ๋ค ๋ฃ์ด์ผํ๊ณ ๋ฑ๋ฑ ๋์กํ๊ธด ํ๋ฐ, ํจ์ ์ด๋ฆ ๋๋ถ๋ถ์ด ๋ธ๋ฃจํ๋ฆฐํธ๋ ๋๊ฐ์์ ๋ธ๋ฃจํ๋ฆฐํธ์ ์จ๋จน์๋ ๊ตฌ์ฑ๋๋ก C++ ์์ฑํ๋ฉด ๋ณดํต์ ๋ค ๋์ํด์ฌ
์์์ ์ธ๊ธ๋ ์ด๋์ฐ ์ฑ ๋ณด๊ณ ๋ฐ๋ผํ๋ ๊ฒ๋ ์ข๊ณ , C++๋ก ๋ง๋ ํ ํ๋ฆฟ ํ๋ก์ ํธ ํ๋ ๋ณด๊ณ ์บ๋ฆญํฐ ์ด๋ป๊ฒ ๊ตฌํํด๋จ๋์ง ์ฐธ๊ณ ํ๊ฑฐ๋ ํ๋ฉด ์ข์์ฌ ๊ฐ๋ Lyra ๋ถ์ํ๋ผ๋ ๋ง ๋์ค๋ ๊ฒ๋ ์๋๋ฐ, ๊ทธ๊ฑฐ๋ ์ด๋ ์ ๋ ์์์ผ์ง ๋ณด๋ ๊ฐ ๋ง๋ ๊ฐ ํ์ง ์ฒจ๋ถํฐ ๊ทธ๊ฑฐ ๋ณด๋ฉด ๊ดํ ๋จธ๋ฆฌ์ํ๊ณ ํฌ๊ธฐํด์ฌ
๋ธ๋ฃจํ๋ฆฐํธ ์ฐ๋๊ฑฐ๋, Anim ๋ธ๋ฃจํ๋ฆฐํธ์ ์คํ ์ดํธ ๋จธ์ ์ง๋๊ฑฐ๋, ์ ๋๋ฉ์ด์ ์์ ์ ๋ ธํฐํ์ด ๋ถ์ด๋๊ฑฐ๋ ๋ชฝํ์ฃผ ๋ง๋๋๊ฑฐ? AI ๊ธฐ๋ฅ์ธ ๋นํค์ด๋น์ด ํธ๋ฆฌ๋ ๋ธ๋๋ณด๋ ์ ๋? ๋๋จธ์ง๋ ๋ค ์ธํ ์ฉ๋๋ก๋ง BP_XX, WBP_XX ์ ๋๋ง ๋ง๋ค๊ณ , ๊ธฐ๋ณธ ํด๋์ค๋ ๋ค C++๋ก ๋ง๋ค๋ฉด์ ์ฐ์ตํ์ธ์ฌ
๊ทธ๋ฆฌ๊ณ , ์์๋ถํฐ ๋ค C++๋ก ํ์ง๋ง๊ณ ํ 2~3์ฃผ? ์ ๋๋ ๋ธ๋ฃจํ๋ฆฐํธ ๋ค๋ค๋ณด๋๊ฑฐ๋ ํด๋ณด์ธ์ฌ ํฌํด๋ก ๋ธ๋ฃจํ๋ฆฐํธ๋ฅผ ์ทจ๊ธ ์ํ๋ค๋ ์ด์ ๊ฐ ์ธ๋ฆฌ์ผ ํ๋ก๊ทธ๋๋จธ ํ๊ฒ ๋ค๋ฉด์ C++ ์์ฐ๋๊ฒ ๋ง๋ ์๋๊ธฐ๋ ํ๊ณ , ์ฝ๋ ๊ฐ๋ ์ฑ ๊ด์ ์ด๋ ๋ฒ์ ๊ด๋ฆฌํ ๋ ๋ฐ์ด๋๋ฆฌ ํ์ผ๋ก ์ ์ฅ๋์ ์๋ํฐ์์๋ง ํ์ธ ๊ฐ๋ฅํ ๋ธ๋ฃจํ๋ฆฐํธ๋ณด๋ค C++์ด ๋ ํธํด์ ๊ทธ๋์ฌ ๊ทผ๋ฐ ๊ทธ๋ ๋ค๊ณ ๋ธ๋ฃจํ๋ฆฐํธ๋ฅผ ์์ฌ์ฉํ๋ ๊ฑด ์๋๊ณ ๋น์ค์ด ๋ฎ์๊ฑฐ ๋ฟ์ด์ง ์ ์ด์ ๋ธ๋ฃจํ๋ฆฐํธ ๋ชจ๋ฅด๋ฉด ์ธ๋ฆฌ์ผ ๋ชป์จ์ฌ
์ธ๋๋ ์ทจ๋ฝ๋์ ์ข ๋ค๋ฅด๊ฒ๋ด์ผํจ ํ์ดํ