๊ฑ ๋์ถฉ ํด์ ๋ณด๋จ ์ก์
์ด ๋ ์ด๋ ค์ธ ๊ฑฐ๋ผ๊ณ ์๊ฐํ๊ณ ์์๋๋ฐย ๋ฐ์ ๊ธ ๋ณด๊ณ ๊ถ๊ธํด์ก์
๊ทธ๋ฅ ๋ฐ๋ณต๋ฌธ์ผ๋ก ๋ํด ๋ดํด ๊ตด๋ฆฌ๋ฉด ์ ๋๋ ๊ฑฐ์..?ย ์ํธ๋ผ ํ๋ฐ์ ์ ๋ชฐ๋ผ์ ์ค์ ๊ตฌํ์ ์ด์ผ ํ๋์ง๋ ๋ชจ๋ฆ..
์ฝ๋ฉ์ ๊ตฌํ์ด ์ด๋ ค์ด๊ฑด ๋ณ๋ก ์์ ๋๋ ๊ตฌํ ํ๋ผ๋ฉด ๋ฐ๋ก ํ๋๋ฐ ์๊ฐ๋๋๋๋ก ๋ง์ง๋ฉด ๋์ค์ ํํํจ ๋๊ฐ ๋ ์ด๋ ต๋ค๊ธฐ๋ณด๋จ ์ก์ ์ ์ผ์ํ์์ผ๋ก ์ญ ํ๋์ ์ ์ง์ํค๋ฉด ๋๋๋ฐ ํด์ ๋ ํด๋ง๋ค ํ ์ ์๋ ํ๋์ ๊ฐ์ง์๋ฅผ ์ ํ์ํด ๋ดํด์ ํ ์ ์๋๊ฒ ์๊ณ ์๋๊ฒ ์์ผ๋๊น ๋จ์ํ ๋ด๊ฐ ํด์ ๋๋ธ๋ค ๋ผ๊ณ ๋งํ ์๋ ์์ง๋ง ๋ด๊ฐ ์ฌ์ฉ ํ ์ ์๋ ํ๋๋ ฅ์ ์ ๋ถ ์๋ชจํ ๋ค์ ํด์ ๋๋ธ๋ค ์ด๋ฐ์์ผ๋ก ํ ์๋ ์์ ๊ทธ๋ฆฌ๊ณ ๋ฐ๋ณต๋ฌธ์ด๋ผ๋๊ฑด ๋ด๊ฐ ์ฝ๊ฒ ๋ฉ์ถ์ ์๋๊ฒ ์๋ ๋ฉ์ถ๋ ค๊ณ ํ ๋๋ง๋ค ๋ถ๊ธฐ์ ์ ๊ณ์ ๋ฃ์ด์ผ ํด์ ๊ทธ๋ฐ ๋ฐฉ๋ฒ์ ํ๋ฆ ๋ง์ฝ ๋ด๊ฐ a๋ฅผ ์์ง์ผ๋ ๋ฐ๋ณต๋ฌธ์ ๋ฉ์ถ๋ค? ๊ทธ๋ผ b๋ ์ด๋ป๊ฒ ์์ง์ผ๊น? ์ฌ์ค c#์์ฒด๊ฐ ๋ฐ๋ณต๋ฌธ์ผ๋ก ๊ตด๋ฌ๊ฐ๋ ๊ฑฐ๊ธด ํ์ง๋ง ๋จ์ํ ๋ฐ๋ณต๋ฌธ์ผ๋ก ๋ํด, ๋ดํด ํ๊ธฐ๋ ํ๋ค๋ค๋ ์๋ฆฌ์ง
๊ฒ์๋ง๋ค ๋ค๋ฅธ๋ฐ ๊ฒฝํ์ ํด์ ๊ฒ์์ ์ฒ์ ํฐํ์ ์๋ชป ์ค๊ณํ๊ฑฐ๋ ๋์ถฉ ์ค๊ณํ๋ฉด ๋์ค์ ใ ๋๋๊ฒ ๋ง์๋๊ฒ ๊ฐ์
๊ตฌํ์ ํ๊ณ ์ถ์ ๋๋ก ๋ง ํ ์ ์๋๊ฒ ์๋๊ฐ๋ณด๊ตฌ๋.. ์ด๋ ต๋ค
์์ ๊ธ ์ฝ์ด๋ณด๋ฉด ์๊ฒ ์ง๋ง ๊ธฐํ์ด ์ด๋ ค์ด๊ฑฐ์ ๊ตฌํ์ด ์ด๋ ค์ด๊ฒ ์๋๋ผ ์ค๊ฐ์ ๋ฐ๊พธ๊ธฐ๊ฐ ์ด๋ ค์
์ฝ๋ฉํ ์คํธ ๋์ด๋ ์ฌ๋ผ๊ฐ์๋ก ํด์ ๊ฒ์ ๊ตฌํํ๋๊ฑฐ๋ ๋น์ทํ๋๋๋จ
๋ฃฐ์ด ์ผ์ ์ด์ ๋ณต์กํด์ง๋ฉด ์คํ ์ดํธ๋จธ์ ๊ณผ ๊ฐ์ด ํ๋ก์ฐ๋ฅผ ์๊ฐํ ๊ฐ๋ฅํ ๋ ธ๋ ๊ธฐ๋ฐ ํด์ด ๊ฑฐ์ ํ์์ ์ด๋ผ๊ณ ๋ด๋ ๋ฌด๋ฐฉํจ ๊ฐ์ข ์ฐ์ถ ํธ๋ฆฌ๊ฑฐ, UI ON/OFF ์กฐ๊ฑด, ๊ฐ์ข ์์ธ์ฒ๋ฆฌ ๋ฑ์ ๋ถ๊ธฐ๋ณ๋ก ๋ค ๋ฐ์๋๋๋ค...? ๊ตฌ์กฐ๋ฅผ ์ ์ง๊ณ ๋ง๊ณ ๋ฅผ ๋ ๋์ ๊ธฐ๋ฅ ์ถ๊ฐ, ๋๋ฒ๊น , ๊ทธ๋ฆฌ๊ณ ๊ฐ์ข ์ ์ง๋ณด์์ ๋๋ ์ฝ์คํธ์ ๋ฆฌ์คํฌ๊ฐ ๋๋ฌด ์ปค์ง (์ด ๊ฒฝ์ฐ์๋ ๊ตฌ์กฐ๋ฅผ ์ ์ง๋ ๊ฒ ์์ฒด๊ฐ FSM๊ณผ ๊ฐ์ด ๊ฐ ์คํ ์ดํธ๋ฅผ ๊ฒฉ๋ฆฌ์ํฌ ์ ์๋ ํ๊ฒฝ์ ๊ตฌ์ฑํ๋ ๊ฒ์ด ๋๊ฒ ์ง, ๊ทธ๋ฐ๋ฐ ์ด๊ฒ๋ ์ง์ ์ ๋๋ก ๋ง๋๋ ค๋ฉด ํ์ฐธ๊ฑธ๋ฆผ) ์๊ธฐ ํผ์์ ๊ฐ๋ฐํ๋ฉด์ ๋ชจ๋ ํด๋์ค๋ค ์ฌ์ด์ ์ฐธ์กฐ๊ตฌ์กฐ๋ฅผ ๋ค ๋จธ๋ฆฟ์์ ๊ธฐ์ตํ๋๊ฒ ๊ฐ๋ฅํ ์ฌ๋์ด๋ฉด ๋ชจ๋ฅผ๊น, ์ ์ ๊ฑด๊ฐ๊ณผ ๊ฐ๋ฐ ํจ์จ์ ์๊ฐํ๋ฉด ํด์ ๊ฒ์์ ์คํ ์ดํธ๋จธ์ ์ ๋ง๋ค๋์ง ์ฌ๋์ง ํด์ ์ฐ๋๊ฒ ๋ต
์ํ FSM์ด๋๊ฒ ์์ฃผ ๋ณด์ด๊ธด ํ์ด๋ ๋ญ๊ฐ ํ์๋๋ฐ.. ๋์ค์ ํ ๋ฒ ์ฐพ์๋ด์ผ๊ฒ ๋ค
ํน์ ์ ๋ํฐ ์ฐ๊ณ ์๋๊ฑฐ๋ฉด ์ด ์์ ์ถ์ฒ. ์ง๊ธ ๊ฐ๋ฐ์ค์ธ ๊ฒ์์๋ ์ฐ๋์ค์ธ๋ฐ, ๊ต์ฅํ ๋ง์กฑ์ค
https://assetstore.unity.com/packages/tools/visual-scripting/nodecanvas-14914
์์ ์
ํ๊ต๋ค๋๋ C++ ๋ฒ ์ด์ค ์์ฒด๊ฐ๋ฐ ๊ฒ์์์ง์ ๋ํด์ ์์ฒด ์คํ ์ดํธ๋จธ์ ํด๊น์ง ์ง์ ๋ง๋ค์ด์ ์ด ์ ์ด ์์๋๋ฐ, ํฌํธํด๋ฆฌ์ค๋ก ์ธ๊ฒ ์๋ ์ด์์ ๊ทธ๋ฅ ์ฌ์ ์ฐ๋๊ฒ ์๊ฐ ์ ์ฝ๊ณผ ์ ์ ๊ฑด๊ฐ์ ์ข์๊ฒ... (๋์ ํ๋ก๊ทธ๋๋จธ ํฌํด์ฉ์ผ๋ก๋ ๋งค์ฐ ํ๋ฅญํจ)
์ ใทใทใทใท ํ๋ฐ์ ์ง์ง ๊ธฐ์ด์ ์ธ ๋ฌธ๋ฒ๋ฐ์ ๋ชจ๋ฅด๋๋ฐ ์ด๋ฐ ๊ฑฐ ๋ง์ด ์๊ฒ ๋๋๊น ์ฌ๋ฐ๋ค! ๊ณ ๋ง์ ๋กํ๋กํ
https://github.com/thefuntastic/Unity3d-Finite-State-Machine
ํน์์ด๋ฐ ์ฝ๋๋ก๋ง ์ฐ๋ fsm๊ฐ์๊ฒ๋ ์จ๋ฐง์ ?
์์ ์ฝ๋ ์์ ๋ช๊ฐ๋ ์ด๋ป๊ฒ ์ดํด๋ ํ๋๋ฐ ๋ฐ์ ๊ฒ๋ค์ ์ข ๋ ์ฝ์ด๋ด์ผ๊ฒ ๋ค.. ์ด๊ฒ๋ ์ข๋ค ๊ณ ๋ง์!!
๋๋ ์ด๋ฐ์ ๋ฐ ๋ ธ๋๋ฒ ์ด์ค fsm๋ค ๋ช๊ฐ ์จ๋ดค๋๋ฐ ๋ค ๋ญ๊ฐ ๋์ง๋์ง ๋ฌด๊ฒ๊ฑฐ๋ ์ง์ ๋ถํ๊ณ ๋์ฌ๋น ์ง ๋๋ ๋ค์ด์ ์ฝ๋๋ฒ ์ด์ค๋ก fsm์ฐ๊ณ ์๋๋ฐ ๋ ธ๋์บ๋ฒ์ค ๊ฐ์ถํ๋๊ฑฐ๋ณด๋ ์ข ์ด๋ค์ง ์ด์บ์ฐ๊ณ ์๋์ง ๊ถ๊ธํ๋น ui๊ฐ๋ฐ์ผ์ง๋๋ดค๋๋ฐ ui๋ ๋ ธ๋์บ๋ฒ์ค ์?
๋ด ์์ ๋ค๋ ์จ๋ณธ๊ฒ๋ค์์? ๋น๊ตํด์ ๋ ธ๋์บ๋ฒ์ค๊ฐ ๋ ์ข๋คํ๋ ํฐ์ฐจ์ด๋๋๊ฒ ์ด๋ค์ ๋ค์์์??
์ข์ ์๋ฃ ๊ฐ์ฌ.... ๋ด๊ฐ ์์ ์ ์ผ๋ ์์ฒด๊ฐ๋ฐ ์คํ ์ดํธ๋จธ์ ์ด ์์ ์ฌ๋ ค์ค ์คํ ์ดํธ๋จธ์ ์ด๋ ๋น์ทํ ๋๋์. ๋์ , C#์ด ์ง์ํด์ฃผ๋ ์ ์ ๊ธฐ๋ฅ์ธ Reflection์ ์์ด ๋ฒ์ ์ ์ ๋งํธ C++ ์คํ ์ดํธ๋จธ์ ์ธ๋ฐ, ๊ทธ๋์ ๊ตฌ์กฐ๊ฐ ํจ์ฌ ๋ ๋ณต์กํ์ง... ๋ด๊บผ๋ ๋์ถฉ ๋ ธ๋๋ค์ ์๊ฐํํด์ฃผ๋ฉด์ ๋ฐํ์์ ์ด๋ค์ ๋์ ์ผ๋ก ๊ด๋ฆฌํ๋ ํด๊ณผ ์์ค์ฝ๋ ์จ๋ฆฌ ๋ฒ์ ์ ํ์ด๋ธ๋ฆฌ๋๋ก๋ ๋ณผ ์ ์๋๋ฐ, ๋์ถฉ ๋ ธ๋๋ฅผ ์๊ฐํํด์ฃผ๋ ํด์์ ๋ ธ๋๋ ํธ๋์ง์ ์กฐ๊ฑด๋ค์ ๋ง๋ค๊ณ , ํธ๋์ง์ ๋ง๋ค ์กฐ๊ฑด ์ฒดํฌ์ฉ ๋๋ค์์ ๋ฃ์ด๋๋ฉด ๊ทธ๊ฑธ C++๋ก Export ํด์ ๊ฒ์ํ๋ ์ด ๋ก์ง๊ณผ ํจ๊ป ์ปดํ์ผ๋๋๋ก ํ๋ ๋๋? ๊ทธ๋์ ์๋๋ ๋นจ๋์. ๋จ, ์๊ฐํ ๋ชจ๋์์ ์ฝ์ด๋ค์ผ ์ฉ๋๋ก ์คํ ์ดํธ๋จธ์ ์ ๋ณด๋ฅผ ๋ฐ๋ก ์ ์ฅํด์ฃผ๋ ์๋ํฐ์ฉ ๋ฐ์ด๋๋ฆฌ ํ์ผ์ ํ๋์ฉ ๋ ๋ง๋ค๊ฒ ๋ฌ๋ค๋ง.
์ด๋์๋ ์๊ฐํ ๋ชจ๋์ ์์๋๋ฐ, ์๊ฐ์ ๋ค์ฌ์ ์๊ฐํ ๋ชจ๋๊น์ง ๊ตฌํํ ์ด์ ๋ ํ๋ก์ฐ๊ฐ ๋์ ๋ณด์ด์ง ์์ผ๋ฉด ์๋ฌด๋ฆฌ ์ฝ๋๋ฅผ ๊น๋ํ๊ฒ ์ง๋๋ผ๋ ๊ท๋ชจ๊ฐ ์ผ์ ์ด์ ์ปค์ง ๊ฒฝ์ฐ์๋ ๊ฐ๋ฐ ์๋๋ ์ ํ๋๊ณ , ๋ฌด์๋ณด๋ค ๊ด๋ฆฌ๊ฐ ์๋๊ฑฐ๋ . (RNGods๋ ์จ๊ฐ ์ฐ์ถ ์์คํ ์ ๋ํ ๊ณ ๊ธ AI์ ํตํฉ๋๋ฌธ์ ๋ณต์ก๋๊ฐ ์๋นํจ) ํธ๋์ง์ ์กฐ๊ฑด๋ง 40๊ฐ๊ฐ ๋์ด๊ฐ๋ฉด์, Event์ฒ๋ผ ๋ฐ๋ก ํธ๋ํนํ๊ธฐ๊ฐ ๊ท์ฐฎ์ ์น๊ตฌ๋ค๋ ๋ง์๊ณ ...
Nodecanvas๋ฅผ ์ฌ์ฉํ๋ ์ด์ ๋ ์์ ๊ฐ์ ์ฝ๋ ๊ธฐ๋ฐ ์คํ ์ดํธ๋จธ์ ์ ๊ฐ์ข ๋๋ฒ๊น ์ฉ ๊ธฐ๋ฅ๋ค์ ๋ํ ๋ค์ํ ๋ฉ์ธ์ง ์์คํ ๋ค์ ํตํฉ์ํจ ํ ์๊ฐํํ๋ ๊ณต์๋ณด๋ค, ์ด๋ฏธ ๋ฐฐํํ ์คํ ๋ ๋ชจ๋์ ์ฌ์ ์ฐ๋๊ฒ ๋นจ๋๊ฑฐ๋ . ๋ด๊ฐ ๊ตฌํํ๊ณ ์ ํ๋ ์จ๊ฐ ์์คํธ๋ํ ๊ธฐ๋ฅ๋ค์ด ์ด๋ฏธ ์ ๋ถ ๋ค์ด์์๊ณ , ์์ค ์ฝ๋๋ ๋ธ๋ ค์ฌ ๋ฟ๋๋ฌ, API๋ง ์ญ ํ์ด๋ณด์๋ ํด์ ์ผ๋ง๋ ์ ๊ฒฝ์ ์จ์ ๋ง๋ค์๋์ง๊ฐ ๋ณด์ธ ๊ฒ๋ ์์๊ณ . ๋ฌผ๋ก , ์คํ ์ดํธ๋จธ์ ์ ์ง์ ๋ง๋ค๊ณ ๊ธฐ๋ฅ๋ค์ ์ถ๊ฐํ๋ ค๋ค๊ฐ ์ ํํ๋ ํ๋ก๊ทธ๋๋จธ ๊ธฐ์ค์ผ๋ก๋ ์ ๋ ์ง๋ง, ํด์์ ์ ๊ณตํด์ฃผ๋ ๋ค์ํ ๊ธฐ๋ฅ๋ค์ ํ์ฉํ ํ์์ฑ์ด ์๊ณ , ํ๋ก์ฐ๊ฐ ์ซ์๊ฐ ์ ์์ ์ ๋๋ก ๋จ์ํ ๊ฒฝ์ฐ์๋ ์ฝ๋๋ฒ ์ด์ค FSM๋ ์ถฉ๋ถํ ์ข์ ์ ํ ๊ฐ์.
https://nodecanvas.paradoxnotion.com/features-comparison/
Nodecanvas
vs ๋ค๋ฅธ ์์ ๊ด๋ จ ๋ก๋ฐฅ์ ์ ๋ํฐ ํฌ๋ผ์์๋ถํฐ ์์ ๋ถํฐ ์ค๋ซ๋์ ์ด์ด์ ธ์จ ์ฃผ์ ์ธ๋ฐ, ์ผ์ผ์ด ์๊ธฐํ๋๊ฒ๋ณด๋ค๋ ์ ์ฐจํธ๋ API๋ค ํ๋ฒ ๋๋ฌ๋ณด๋๊ฒ ๋น ๋ฅผ์๋ ์์ ๊ฒ ๊ฐ์.
์น์ ํ๋ต๋ณ ใณใณ ใ ใ ๋จ์ ์ ๋จธ ์์์? ํฌ๋ฆฌํฐ์ปฌํ ๋ฒ๊ทธ๋ ํ๊ณ, ํผํฌ๋จผ์ค ์ด์, ํธํ์ฑ ๊ฐ์
๋, ์๋ ์๋ ๋ถํฐ ์กด์ฌํ๊ณ , ์ค๋ซ๋์ ์ ์ด์ดใ ์ด์๋ง๋ก ๋ง์ ์ฌ๋๋ค์ด ํ์ฉํด์ค๋ฉด์ ํ ์คํ ํด์จ ์์ ์ด๋ผ ๊ทธ๋ฐ์ง ํผํฌ๋จผ์ค์ ์ด์๋ ํฌ๊ฒ ์๋ฟ๋๊ฒ ์๋๋ผ๊ณ . ๋, ์์ค ์ฝ๋๊ฐ ๊ณต๊ฐ๋์ด ์์ด์ ์ด์๊ฐ ๋ฐ์ ๊ฐ๋ฅํ ๊ฑด๋์ง๊ฐ ๋ฐ๊ฒฌ๋๋ฉด ํฌ๋ผ์์ ์์ ๊ตฌ๋งค์๋ ๊ฐ๋ฐ์๊ฐ ํค๋ฐฐ๋จ๋๊ฑธ ๊ตฌ๊ฒฝํ ์๋ ์์ ์์ ์ ๋ฏฟ๋๋ค๊ธฐ๋ณด๋ค๋ ์์ ๊ฐ๋ฐ์์ ์ปค๋ฎค๋ํฐ๋ฅผ ๋ฏฟ๊ณ ์ด๋ค๋ ๋๋...?
์๊ฐ๋ด์ ํ๋ฒ ๋ฌธ์๋ณด๊ณ ์จ๋ฐ์ผ๊ฒ๋ค. ๋์ FlowCanvas / NodeCanvas ๋๋ค ์ฌ์ฉํจ?
์ด๋๋ ๊ฐ์๊ธฐ ๋น์ฃผ์ผ์คํฌ๋ฆฝํ ์๋ฐ์์ ์ฌ์ ์กฐ๊ธ ์ฐ๋ค๊ฐ ์ฒ๋ฐ์๋๊ณ ์์ฐ๋์ค ์ ใ ใ ์ง์ง ์ ํ์ ์ผ๋ก๋ผ๋ ํ์ฉํ ๊ฑด๋์ง๊ฐ ์์ง ์์๊น ํ๋๋ฐ, ๊ฐ์ธ์ ์ผ๋ก๋ FSM์ด๋ ๋นํค์ด๋น์ด ํธ๋ฆฌ๊ฐ ๋ง์ง๋ ธ์ ์ธ๊ฒ๊ฐ์ ์์ฐ์ฑ ์ธก๋ฉด์์๋ ์ ์ง๋ณด์ ์ธก๋ฉด์์๋ ์์ค์ฝ๋์ ๋นํด์ ๋์๊ฒ ์๋ ๋๋... IDE์์ ์ฐธ์กฐ๊ตฌ์กฐ ํธ๋ํน์ด ์๋๋๊ฒ ๊ฐ์ฅ ํผ ๋์ ์ ์์ด๋ ๊ด๋ จ๋๊ฑด (์ง์ง ํน์ํ ์ข ๋ฅ๊ฐ ์๋ ์ด์์) ๋ฐ๋๋ก ์ง์ ์ง๋๊ฒ๋ณด๋ค Amplify๊ฐ์ ๋ ธ๋ ๊ธฐ๋ฐ ์๋ํฐ ์ฐ๋๊ฒ ๊ฐ๋ฐ ํจ์จ์ด ๊ฐ์ฅ ์ข์์
์ฐ๋จน ํด๋ณด๊ณ ์จ๋ค
๋์ถฉ ์จ๋ฐจ๋๋ฐ ๋ค๋ฅธ ๋น์ฅฌ์ผ ์์ ๋ค๋ณด๋จ ๋๊ฑฐ๊ฐ์. ์ค์ ๋ก ์ฐ๊ฒ๋ ์ง ๋ชจ๋ฅด๊ฒ ์. ์์ต์ํด์ ์๋ชฐ๋ผ์ ๊ทธ๋ฐ๊ฒ๋ ์๊ฒ ๋๋ฐ ์์ง์ ์ฝ๋๋ก๋ง ํ๋๊ฒ ๋ ๋๊ฑฐ๊ฐ์์, ๋์ค์ ์ข๋ ํ๋ก์ ํธ ๋ณต์กํด์ ธ์ ์๋๊ฒ ๋ค์ถ์ผ๋ฉด ์๋ง ์ฐ๊ฒ๋ ๋ฏ.
๋์ด ๋ ธ์ ์ ์ฌ๋ฆฐ ๋ฐ๋ชจ๊ฒ์๋ ๋ฐ์์ ์ ํด๋ฐง์๋ค ใ
์ผ์
๊ธฐ๋ณธ์ ์ผ๋ก ๊ฒ์ ์์คํ ์ continuousํ๋ฐ ๊ทธ๊ฑธ ์นผ๊ฐ์ด ์๋ผ์ ํด์ผ๋ก ์ ์ํ๋๊ฒ ์๋นํ ์ด๋ ค์
๋ณ์ ๊ฐ์์๋ฆฌํ๊ณ ๋ค์๋ค ํ๋ก๊ทธ๋จ์์ฒด๊ฐ ๋ฐ๋ณต๊ณผ ์ ์ด์ ํฐ๋ฉ์ด๋ฆฐ๋ฐ ํด์ ๊ฐ๋์ด๋ ต๋์ด์ง๋ ์ ํฝ๋ง๋ณด๋๋จธ๋ฆฌ์๋ ๊ฒ์๋ค
์ฌ๊ธฐ์ ์๋ฌด๋ ํด์ ๊ฐ ๋ ์ด๋ ต๋ค๋ ์๋ฆฌ ํ์ ์๋๋ฐ ๊ฒ์ด๋ ๋๋ ์ฆ์ด๋ ธ?