๊ทธ๋ฅ ๊ฐ์ธ๊ฐ์๊ฐ์ ๋ป๊ธ์ด๊ณ ๋ฑํ ์ฃผ์ ๋ ์์.
์ ๋ํฐ๊ฐ ์์ฉ ์์ง ๊ธ์ ์ง์ผ์ฃผ๋ฉด์ ์ฐ๊ธฐ ์ฝ๋ค๋ ํ์ ๋ฐ๊ฒ๋๋ฐ์๋ ๋ฉ์ธ ๋ฃจํ ๊ด๋ฆฌ๋ฅผ ํ์ง ์๊ณ ๊ฐ ๊ฐ์ฒด๋ณ๋ก '์คํฌ๋ฆฝํธ' ๋ฅผ ๋ถ์ฌ์ ๋์๊ฐ์์๊ฒ ํ ์ฒ ์ ํ ๊ฐ์ฒด์์ฃผ์ ๊ตฌ์กฐ๋ก ์ค๊ณ๋๊ฒ ํฐ ๋์ ๋ดค๋ค๊ณ ๋ด.
๋ด๋ถ๊ตฌ์กฐ์ผ ์ฌ์ฉ์๋ค์ด ์๋น ๋ ธ๊ฒ ์ง๋ง ๋ง์ฝ ์ ๋ํฐ ํ๋ก์ ํธ๋ฅผ ์ด์์๋ ์ค๊ฐ์ main() ์ฝ๋ ํธ์ง์ฐฝ์ด ์์๋ค๋ฉด ๋น์ ๊ณต์ ๋น๋กฏํด ์ ๋ฌธ์ ํ๋ฝ๋ฅ ์ด ๋ช๋ฐฐ๋ ๋ ๋์์๊ฑฐ๋ค.
๊ทผ๋ฐ ์ ๋ํฐ๊ฐ ์ง๊ธ๊น์ง ์ญ์๋ ๊ฐ ์์ ์ ๊ทผ๋ฐฉ์๊ณผ ์ค๊ณ๋ฅผ ๋ด๋ค๋ฒ๋ฆฌ๊ณ
'์ฌ์ค ์ฌ ์ค๋ธ์ ํธ ํธ๋ฆฌ์ํํ๋ฉด์ Monobehaviour ํธ์ถํ๋๊ฑด ์ข๊ฐ์๊ฑฐ์์. DOTS ์ด๊ฒ ๋ ์ข์๋ฏ' ์ ์ฌ์ฉ์์๊ฒ ๋ ๋ฉ์ด๋ฉด ๋์ฌ ์ ์๋ ์ ์ฅ์ด ํฌ๊ฒ ๋๊ฐ์ง๋ฐ
1. ์์ ๋น์ ๋ง์ด ๋ง๋ค ์ฌ์ฉ์ UI ํ๋ก์ฐ ๋ค๋ฟ์ผ ๊ฒ์์ค๋ธ์ ํธ ๋ค๋ฟ์ผ
2. ๊ทผ๋ฐ ์ฌ์ค์ turbo-c์์ ์ค๊ณ๋ฐฉ์์ธ๋ฐ ๊ตณ์ด ์ ๋ํฐ์จ์ ๊ธฐ์กด๋ฐฉ์์ ๋ง์ถ๋๋ผ ๋ชธ๋นํ์ด์ผํจ? ๋ด ํ๋ ์์์ด๋ ์์ง๋ ์ข์๊ฑฐ ๋ง์๋ฐ?
๋ฌธ์ ๋ ์ ๋ํฐ์์ ์ ๊ณตํ๋ ๊ทผ๋ณธ์ ์ธ ๊ตฌ์กฐ์์ฒด๊ฐ DoD์ ์ ๊ทผ๋ฒ๊ณผ ์์ ๋ฐ๋ํธ์ด๋ผ๋๊ฑฐ์.
๊ฐ์ธ์ ์ธ ์ ์ฅ์ผ๋ก ๋ฐ์ดํฐ์งํฅ๊ฐ๋ฐ์ด๋๊ฑฐ์ sw design์์์ ์์น๋
์์ณ์คฌ์๋ ํจ๋ฌ๋ค์๊ธ์ด๊ณ ํ์ค์ ์ผ๋ก๋ ๊ณ ์ ์ ์ฐจ์งํฅ์ ๋๋์๋ณด๋ ๋์์ธ ํจํด์ ๋ ๊ธ์ด๋ผ๊ณ ๋ณด๋๋ฐ
๊ทธ๊ฑธ ๊ทนOOP๊ตฌ์กฐ์ธ ํด์์ ์กด๋ ์นด์์ดํ๊ฒ ์ง์ํ๊ฒ ๋ค๊ณ ์์ฌ์ ๋ถ๋ฆฌ๋๊น '์ด ์ํคํ์ ์ ๋ด๊ธด ์ฒ ํ์ ์๊ฒ ์ด์?' ๊ฐ ๋๋ฌดํ๋ฉด์ API๋ก ์ฑ์ฐ์งํ๋ ๊ณ ๋ต์ ์ธ ํ์ด-ํ ํฌ๋์ด ๋์ด๋ฒ๋ฆผ. ๋ญ ์ข ์ด์๊ฒํ๊ฒ ๋ค๊ณ ECS์ค์์๋ ์ฌํํ ํฌ์์ ๊ตฌ์กฐ๊ฐ ์๋๋ผ ์์ฌ๋ถ๋ฆฌ๋๋ผ ๋ญ ํด์ฃผ๋๊ฒ ๋ง์ ์ํคํ์ ๊ตฌ์กฐ๋ฅผ ๋ฐ์๋์ ์ดํดํด์ผํ๋ ๊ฐ๋ ์ด ๋์ฑ ๋ง์์ง๊ฑด ๋ค์ด๊ณ .
๊ฐ์ธ์ ์ผ๋ก๋ ํฐ๋ณดc, CDX, OGRE,ย ย irrlicht ์ฐ๋ ํ๋ฑ์์ ๊ฐ๋ฐ๊ฒฝํ์๋ผ์ ์ ์ฐจ์ ์ ๊ทผ์ด๋ ๋ฐ์ดํฐ ์ค๋ฆฌ์ํฐ๋ ์ค๊ณ๊ฐ ์คํ๋ ค ์์ ์ต์. ์๋ ์์c ์์ ์ vํ ์ด๋ธ์ ์ฑ๋ฅ์ ์ ๋์ ์ด๋ผ๋ฉด์ c++ ์ฒํ๋น์ธ์ฐ๊ฑฐ๋, ๊ฐ๋ณ๊ธธ์ด ์๋ฃ๊ตฌ์กฐ ํผํฌ๋จผ์ค ใ ๊ฐ๋ค๊ณ ๊ณ ์ ๊ธธ์ด ๊นก๋ฐฐ์ด๋ง ์ฐ๋์ฌ๋๋ค ๋๋ ค์๋ ๊ด๊ธฐ์ ์์ ์ด์์ผ๋๊น ๋ญ...
๋ด๊ฐ ์ ๋ํฐ ์ฒ์๋ดค์๋๋ '์ ๊ธฐ๋ฅ ๋ฃ๊ณ ๋นผ๊ณ ํ๋๊ฑฐ ์ด์๊ฒ๋ง๋ค์๋ค. ๊ทผ๋ฐ ์ด๊ฑฐ ์ฌ๊ตฌ์ ์ธ๋ด ์ค๋ธ์ ํธ์ ์คํฌ๋ฆฝํธ ์ฒ๋ฐํ์์ผ๋ฉด ์คํ์ ์ด๋ป๊ฒ ์ถ์ ํ์ง?' ๋ผ๋ ์๊ฐ์ด ๋จผ์ ๋ค์์.
ํ์ง๋ง ๋ด ๊ฐ์ธ์ ์ทจํฅ์ ์ทจํฅ์ด๊ณ , ์ ๋ํฐ๋ ๊ทธ๋ฐ ์ฒ ์ ํ ๊ฐ์ฒด๊ตฌ์กฐ๋ฅผ ๊ฐ์ง๊ณ ์ดํํด์ ๋ฌ๊ฑฐ๊ณ , ๋ง์ ๊ฐ๋ฐ์๋ค์๊ฒ ๊ทธ ๊ตฌ์กฐ๋ ์ฅ์ ์ผ๋ก ๋ฐ์๋ค์ฌ์ง๊ฑฐ๋ผ๊ณ ์๊ฐํจ. ์ด๋๊น์ง๋ ๋ณธ์ธ์ด ์ฐ๊ธฐ ์ข์ ๊ตฌ์กฐ๊ฐ ๊ฐ์ฅ ์ข์ ๊ฑฐ๋ผ๊ณ ์๊ฐํ๋๊น.
์ด๋ฐ ์์ง์๋ค๊ฐ DoD ๊ฐ๋ ์ ์ง์ํ๋ ค๋ฉด, ๊ธฐ์กด ์์ง๊ตฌ์กฐ์ ์ต๋ํ ์ถฉ๋์ด ์ ์ ๊ฒฝ๋๊ธ ํ๋ ์์์ ์ถ๊ฐํด์ฃผ๊ฑฐ๋ span<> ๊ฐ์๊ฑธ ๋ฉ์ ๋๋ก์์ ์ง์ํด์ฃผ๋ ์์ผ๋ก ๋ถ๋ด์ด ๋ฎ์ ๋ฐฉ์์ผ๋ก ์ ๊ทผ์ ์์ํด์ผ ํ์.
๊ทธ๋์ ์ด ใ ใ ๋ค์ ์์ง ๋ด๋ถ ์ฝ์ด์ ์ค2๋ณ๊ฑด๋ด๋ง๋ฅ '๋ด๊ฐ ์๊ฐํ ์ต๊ฐ์ ECS' ๋ฅผ ํ์ฌํ ๋ค์์ ๊ทธ API ์ฐ๊ฒฐ์ ์ ์ฃผ๋ ์ฃผ๋ ๋ง๋ค๊ธฐ ์์ํ์. IL2CPP๋ burst ์ปดํ์ผ๋ฌ ์ ๋ถ ๋ด๋ถ๊ฐ๋ฐํ๋๊น ์์ง๋ด๋ถ c++๋จ์์ ์กด๋ ์๋ง๋ค๋ฉด ์ต๊ฐ์๋? ํ๋ ์๊ฐ์ด์์๋ฏํ๋ฐ ๊ทธ ๊ฒฐ๊ณผ๊ฐ pure๋ hybrid๋ ๋ api deprecated๋๋ ๋ฑ๋ฑ
์์ง ๋ด๋ถ ๋ณ๊ฒฝ์ ์ฌํ๋ฅผ ์ต์๋จ ๋์์ธ์ด ์ง๊ฒฉ์ผ๋ก ์ณ๋ง๋ ์ ์ ์กฐ์ข ํ๋์ผ์ํ์ธ์ด ๋์์.
๋ง์ง๋ง์ ๋ค ์๋ ๊ฑฐ๋ผ๊ณ ์ข๊ฒ ๋ด์ค๋ ์ด๊ฑด ์ ๋ํฐ์ ์ง๊ธ๊น์ง์ ์ฒ ํ๊ณผ ๋๋ฌด ๋ค๋ฅธ ์ ๊ทผ๋ฐฉ์์ธ๊ฒ ์ด์ง์ ์. ์์ ์ ๋ํฐ๋ฅผ ์น ๊ฐ์์์ด์ OGRE๋ง๋ฅ ๋ฉ์ธ๋ฃจํ๋ ์ฌ๊ทธ๋ํ๋ถํฐ ๋ง๋ค๊ฒํ ๊ฒ๋ ์๋๋ผ๋ฉด ์ต์ํ ์ผ๊ด์ฑ ์๋ ์ ๊ทผ๋ฒ์ ์ ๊ณตํด์ผ ํ๋๋ฐ ๋์ถฉ ๋ ๋๋ฅ ์ฌ์ด์ ๋ค๋ฆฌ ๋์์ฃผ๊ณ '๊ฑด๋๋ค๋ ์๋ ์์์' ๋ผ๊ณ ํ๋ ๊ฒ ๊ฐ๋ค.
๊ณผ์ฐ ๋ผ์ดํธํ ๊ฐ๋ฐ์๋ ์ง๊ธ๊น์ง์ฒ๋ผ ๋ ๊ณ ๋์ด๋ฅผ ํ๊ณ , ๊ณ ๊ธ๊ฐ๋ฐ์๋ค์ ํ๋ํ๊ฒ DOTS๋ฅผ ์ฐ๋ ๋๋ง๋ฆฌ ํ ๋ผ ์ก๊ธฐ๊ฐ ์ฑ๊ณตํ ๊น? ์คํ๋ ค ๋น DOTS๋ ๊ธฐ๋ฅ ์ ๋ฐ์ดํธ์์ ํญ์ ์์ธ๋๋ 2๋ฑ์๋ฏผ์ทจ๊ธ์ด๋ผ๊ณ ๋๋ผ๊ณ , DOTS๊ฐ๋ฐ์๋ ๋งค๋ฒ ์ค๋ธ์ ํธ์ ์ํฐํฐ๋ฅผ ์ํธ๋ณํํด์ผํ๋ ๋ฅ๊ฐํ๋ จ์ ์๋ฌ๋ฆฌ๊ฒ ๋ง๋๋๊ฒ ์๋๊น?
์ค๋๋ ์๊ฐ์ด๋ค.
๋ฐ์ DOTS ๋ญ๊ฐ ์ข๋๊ณ ๋ฌผ์ด๋ณธ ์ฌ๋์ธ๋ฐ, ์ด ๊ธ์ 80ํผ์ผํธ๋ ์ดํดํ์ง ๋ชปํ์ง๋ง DOTS๊ฐ ๊ณ ์ธ๋ฌผ์ฉ์ด๋ผ๋๊ฑด ํ์คํ ์ดํดํจ!
์ธ๋ ๊ฐ๋ฐ์๊ฐ dodํ๋ ค๋ฉด ๋ญ๊ฐ ์ ์ผ ๋์?
์ฌ์ฉ์ด ์ฌ์ด๊ฑธ ๋ ๋์ ๊ตฌ์กฐ์ ์ผ๋ก ๊ทธ๊ฒ ๋ ์ข์ ๋ฐฉํฅ์ด๋๊น ๊ทธ๋ ๊ฒ ๋ฐ๊ฟ๋๊ฐ๋๊ฑด ํ๋ฆฌ์ง ์์๋ค๊ณ ๋ด ๊ทธ๋ฆฌ๊ณ ๋ฆฌํฉํ ๋ง์ด๋๊ฒ ์๋ ๊ธฐ์กด๊ฑฐ๋ฅผ ์ด๋์ ๋ ๋ถ์๋ฉด์ ๊ฐ๋ ํ๋ ๊ฑฐ๋ผ ์ด์ฉ ์ ์์ ์์ ์ ์ ๋ํฐ์ฒ๋ผ ๊ณ์ ์ฐ๊ณ ์ถ์ผ๋ฉด ๊ทธ๋ฅ ๊ตฌ๋ฒ์ ์ฐ๋ฉด ํด๊ฒฐ๋ ๋ฌธ์ ์ ๋จ์ง ์์ผ๋ก ๋ณํ๋ ์ ๋ํฐ๋ฅผ ์ฐ๊ณ ์ถ์ผ๋ฉด ์๋ก์ด ๊ฑฐ์ ์ ์ํด์ผ ๋๋๊ฑฐ๊ณ ๋น์ฐํ ๋ณํ์ ๊ณผ๋๊ธฐ๊ฐ ์์์๋ ์๋๊ฑฐ๊ณ ๋ ๋ฅํ ๋ถ์ ์ ์ผ๋ก ๋ณด์ง ์์ ๊ทธ๋ฆฌ๊ณ ๊ฐ๋ํ๋ฉด์ ๊ธฐ์กด๊ฒ๊ณผ ์ด์ง๊ฐ ์๊ธฐ๋๊ฑด ์ธ๋ฆฌ์ผ๋ ๋ง์ฐฌ๊ฐ์ง์
์ข์ ์๊ฒฌ์ธ๋ฐ ๋ด๊ฐ ๋ณด๊ธฐ์ 1. ์ง๊ธ ์ ๋ํฐ๊ฐ ๋์๊ฐ๋ ค๋ ๋ฐฉํฅ์ด '๋ฏธ๋์ ์งํฅ์ '์ผ๋ก์ ๊ทธ์ชฝ์ด ๋งํ '๋ณํ'์ ์ ์ ํ๊ฐ ์ ๋ํ ์๋ฌธ์ด ์ข ์๊ณ 2. ํ์ฌ ์ถฉ๋๋๋ ๋ถ๋ถ์ ๋ ๊ฑฐ์ vs ์ฐจ์ธ๋๊ฐ ์๋๋ผ ๊ทผ๊ฐ๊ณผ ์ ๋ถ์ด๊ธฐ ์ฑ๊ฒฉ์ด ๋ ๊ฐํ๋ค๊ณ ๋๊ปด์ง.
3. ๊ทธ๋์ ์์ฐ์ ์ผ๋ก ํ์ฌ '๋ถํ์ํ(?) ๋ง์ฐฐ' ์ด ๋ฐ์ํ๋ ๋ถ๋ถ ์๋น์๊ฐ '๊ตฌ ๋ฒ์ ' ์ผ๋ก ๋ฒ๋ ค์ง ๊ฒ์ด ์๋๋ผ ์ ์ฑ ์ ๋๋์ด๋ผ ๋ณด๊ธฐ ๋๋ฌธ์ '์ ๊ทธ๋ด๊ฑฐ๋ฉด ๋ ๊ฑฐ์' ๊ฐ์ ์ผ์ด ์๊ธฐ๋ ๊ฒ์ ์ถฉ๋ถํ ๋ง์์ ์์์๊ฒ
์ฌ์ฉ์ด ์ฌ์ด๊ฑธ ๋ ๋์ ๋ผ๋๋ถ๋ถ๋ ๋ง๊ผฌ๋ฆฌ์ก๊ธฐ๊ฐ ์๋๋ผ ์ ๋ง ํฐ ๋ฌธ์ ์. ์ ๋ํฐ์ ๊ฐ์ ์ ํฌ๊ธฐํ๋๊ฒ์ด๊ธฐ๋ํ๊ณ , ์ฌ์ฉ์ด ์ฝ๋ค ์ด๋ ต๋ค ์์ฒด๋ ๊ตฌ์กฐ์ ์ผ๋ก ์ข๋ค ๋์๋ค์ ๊ธฐ์ค์ด ๋ ์ ์๋ ์์์. ๋๊ฐ ์ค๋ ฅ์ด ์๋ค ์๋ค์ ๋ฌธ์ ๊ฐ์๋
์๋ ์ ๋ํฐ ์๋ํฐ์ ์ฒ ํ์ ๋ถ์ ํ์ง ์์ผ๋ฉด์ DOD์ ์ํ๋ฅผ ๋ณผ ์ ์๋ ๋ฐฉ๋ฒ์ด ์ถฉ๋ถํ ์์๋ค๊ณ ๋ณด๊ธฐ ๋๋ฌธ์ ํ์ฌ์ feature ๊ณผ์ ๋๋ฌธ์ ์์ด๋๋์ ํผ์ ์ด ์๊ธด๊ฑด ์๋๊น.
14.42 ๋ง ๋ณด๊ณ ๋ ์ค๋ฅธ๊ฑฐ์ง๋ง ๋ณธ๋ฌธ์์ ๋งํ๊ฒ์ฒ๋ผ ๊ฐ์ธ์ ์ผ๋ก ๋ฐ์ดํฐ ์ค๋ฆฌ์ํฐ๋๋ 'OOP hell์ ๋์ ์ ๊ฒฌ์ ํ๊ธฐ ์ํด ์๊ฒ์์ ๋ค์ ๋ฐฐ์ฐ๋ ๊ตํ' ์ด ํฌ๋ค๊ณ ์๊ฐํ๊ธฐ ๋๋ฌธ์ ๋ณํ์ ์ํ๋ ์๋ก์ด ์งํฅ์ ๊น์ง๋ ์๋๋ผ๊ณ ์๊ฐํจ
์ข์๊ธ์ด๋ผ ์๊ฐํ๋๋ฐ ์ ๋น์ถ๊ฐ 2๊ฐ์ผ๊น?
์ดํด ๋ชป ํด์
๋ด ์๋๊ธ์ ๊ตฌ์กฐ์ ์ผ๋ก ๊ทธ๊ฒ ๋ ์ข์ ๋ฐฉํฅ์ด๋ ๊ทธ๋ ๊ฒ ๋ฐ๊ฟ๋๊ฐ๋๊ฒ ํ๋ฆฌ์ง์๋ค๊ณ ์๊ธฐํ์ง๋ง ๊ทธ๊ฒ ์ข์ง ์์ ๋ฐฉํฅ์ธ ์ด์ ๊ฐ ๋ ๋ง์๊ฑฐ๊ฐ๋ค๊ณ ์๊ฐํจ ๋ํํ ๋๊ฐ ๊ทธ๊ฑฐ ์ด๋๋ผ๊ณ ๋ฌผ์ด๋ณด๋ฉด ๊ฒ์์ถ์์๊ฐ์๊ณ ๊ฒ์๋ง๋ค๊ธฐ ๋์ดํ๊ณ ์ถ์๊ฑฐ ์๋๋ฉด ๊ฑด๋ค์ง๋ง๋ผํ๊ณ ์ถ์
๋น๋จ DOTS๋ฟ๋ง์๋. ๋ค๋ฅธ ๊ฒฐ์ ๋ค๋ ๊ณต๊ฐํ๊ธฐ ์ด๋ ค์ด ์ด์ ๋ฅผ ํ ๋๋ก ๋๊ณต์ฌ ๊ฐ์์๊ณ ์ ๋๋ก ์์ฑ๋์ง๋ ๋ชปํ ์ฑ ์๋ก์ด ๋ค๋ฅธ ๋ฐฉ์์ผ๋ก ๋ฐ๋๋๊ฒฝ์ฐ๊ฐ ํ๋คํจ
ํจํค์ง ๊ด๋ฆฌ๋ฐฉ์ ์ค๋ฝ๊ฐ๋ฝํ๋ค๊ฐ ๋์ค์ '์ ์ฅ์์ ๋จ๊ธฐ๊ณ ์์ผ๋ ์ํ๋ค๋ฉด ์ฃผ๋๋ก ํ์ง json ํธ์งํด๋ผ( changelog์ ํ์ค) ' ๋ผ๋ ํด์ ์์ ํด๊ฒฐ๋ฒ์ผ๋ก ๋๋ ๋ช๊ฐ๋ ๋นผ๋๋ฐ๋ ๋ชปํ๊ฒ ํ์ฌ์๋ชป ๊ฐ๋ค....
๋ ๋ํ์ดํ๋ผ์ธ์ ๋ณํ, UI์์คํ ์ ๋ณํ, DOTS, Visual Scripting ๋ญ ์๋ง์ ์ก๋คํ ์์๋ค ์์ด์ก๋ค ๋ฐ๊ฟจ๋ค ๋ด๊ฐ ์๊ฐํ๋ ์ด์ ๋ ๋๋ด์ผ๋ก ๋งํ์๋ฉด ๊ทผ๋ณธ์ด ์์ด์๊ณ ๊ตฌ์กฐ์ ์ผ๋ก DogFooding์ ๋ถ์ฌ. ์ ์ ๋ค์ด ์ํ๋ ์ ๋ํฐ์ ๊ฐ์ ์ฅ์ ๊ณผ ์ ๋ํฐ๊ฐ ์ถ๊ตฌํ๋ ๋ฐฉํฅ์ฑ์ด ๋ค๋ฅด๊ธฐ ๋๋ฌธ์ ์ ์ ๋ค์ด ์ดํดํ๊ธฐ ์ด๋ ค์ด ์ด์ํ ๊ฒฐ์ ๋ค์ ๋ด๋๋๊ฒ๊ฐ์.
์๋์ ํ๋ฆ ๋จ๋์น๋ณด๊ธฐ ์ด๋ฐ๊ฒ๋ค ๋๋ฌธ์ ์๋ํ๊ฑฐ๋ ์์ ๊ฑฐ๋ ํ๋ ๊ฒฐ์ ๋ค. DOTS ์ฝ์ง๋ ๊ทธ๋ฐ ์๋๋ค์ค ํ๋๋ผ๊ณ ๋ณด์
bolt๋ ๊ทธ๋ ๊ณ probuilder๋๊ทธ๋ ๊ณ ์ฌ์ค๋ ค๋ฉด production ready ํ๊ฑธ ๊ณ ๋ฅด๋๊ฐ, ๊ทธ๋ ๊ฒ ๋ง๋ค๋๊ฐ ํด์ผํ๋๋ฐ "ํ์ฉ์ ์ฑ๋ฅ์ ๋ง๊ฒ ๊ณํ์ ์ผ๋ก" ์ํ๋ก ๋ด๋์ง๋๊ฑฐ ์์ข์ ๋ฒ๋ฆ
ใ ใ ๊ทธ๋ฐ๊ฒ๋ค ์ง์ง ๋ฑ ํ๋ฌธ์ฅ์ผ๋ก ์ค๋ช ๋๋๊ฑฐ์์. ๊ทผ๋ณธ์ด ์์ด์๋ค......
๋ค ์ข์๋ฐ ๋ง์ค์ ๋ญ๋ ์ผ๋ฒ ์ถฉ์ด๋
๋น์ถ ๋๋ฃจ๋ ์ ๋ค์ ์ด ์ ๋ํฐ ๊น๋ค? ๋ ๋์๋! ์ด๋ฌ๋ ์ค์ธ๊ฐ.
"์ ๋ํฐ์์ ์ ๊ณตํ๋ ๊ทผ๋ณธ์ ์ธ ๊ตฌ์กฐ์์ฒด๊ฐ DoD์ ์ ๊ทผ๋ฒ๊ณผ ์์ ๋ฐ๋ํธ์ด๋ผ๋๊ฑฐ์" ์์ ์คํฌ๋กค ๋ด๋ฆฌ๊ณ ๋น์ถ ๋๋ ์. ์ ๋ํฐ Dots๋ ๊ธฐ์กด GameObject ๋ฅผ ์ฌ์ฉํ๋๊ฑธ ์์ ํ๋ฉด์ ๊ฐ๋ฐํ๋๋ฐ 3๋ ์ ์ง์ ๋ค๊ณ ์์ pure, hybrid ์ด์ฉ๊ตฌ GDC2022 ์์ Authoring ์์ฐํ๋๊ฒ๋ง ๋ด๋ ์ด๋ฐ ๊ฐ์๋ฆฌ ์๋์ค๋๋ฐ ๊ทธ์กฐ์ฐจ๋ ๊ณต๋ถ์ํ๊ณ ๊ธ ์ผ๊ฑฐ์
authoring์ด '๋ณํ' ์ด๋ผ๋๊ฑด ์๊ฐํด๋ณด๊ณ ๋๊ธ ์ธ๋๊ฑฐ๋? ๊ฒ์๊ฐ ์ ์ ์ผ๋ก GameObject์ ๊ฐ์ด ์ฐ๋๊ฑธ ์์ ํ๋ค๋ฉด์ ๊ทธ๊ฒ oo๋ dod๋ฅผ ์ฎ๊ฒ ๋ค๋๋ป์ด๋ผ๋๊ฑธ ์ดํด๋ชปํ๊ณ 1.0.0 ๋ฆด๋ฆฌ์ฆ๋๊ณ api๊ฐ ์ ๊ตํด์ก์ผ๋๊น ์ด์ ์๋์ค ์๋ค ใ ใ ใ ใ ์๋ฆฌ๋ฅผ ์ดํด๋ชปํ๊ณ ์์ ํ๋ ๊ธฐ์ ๊ณต์ผ๋ก๋ง ์๊ฐ์ด ๊ตณ์ผ๋ ์ด๋ฐ ์๋ฆฌ๊ฐ ๋์ค์ง ใ ใ ใ
๊ทธ๋๊น Authoring ์ด ์ฃผ์ ๊ธฐ๋ฅ์ผ๋ก ๋ค์ด์๋๋ฐ pure ๋ ๋ง์ ์ ์ง๊ธ๋ ์ฐ๋๊ณ ์ ๋ฅ์. ์๋ผ์ผ
๊ทธ๋์ ์ด ใ ใ ๋ค์ ์์ง ๋ด๋ถ ์ฝ์ด์ ์ค2๋ณ๊ฑด๋ด๋ง๋ฅ '๋ด๊ฐ ์๊ฐํ ์ต๊ฐ์ ECS' ๋ฅผ ํ์ฌํ ๋ค์์ ๊ทธ API ์ฐ๊ฒฐ์ ์ ์ฃผ๋ ์ฃผ๋ ๋ง๋ค๊ธฐ ์์ํ์. IL2CPP๋ burst ์ปดํ์ผ๋ฌ ์ ๋ถ ๋ด๋ถ๊ฐ๋ฐํ๋๊น ์์ง๋ด๋ถ c++๋จ์์ ์กด๋ ์๋ง๋ค๋ฉด ์ต๊ฐ์๋? ํ๋ ์๊ฐ์ด์์๋ฏํ๋ฐ ๊ทธ ๊ฒฐ๊ณผ๊ฐ pure๋ hybrid๋ ๋ api deprecated๋๋ ๋ฑ๋ฑ
API ์ฐ๊ฒฐ์ ์ ์ฃผ๋ ์ฃผ๋ ๋ง๋ค์ด์ pure hybrid ์๊ฒผ๋ค๋๊ฒ 3๋ ์ experiment ๋จ๊ณ ์๊ธฐ๋ฅผ ์ง๊ธ ์จ๋์๊ฑฐ์์ ์ฅ์ ๋ จ์ ๊ทธ๋ฆฌ๊ณ ์ง๊ธ Authoring์ api ์ฐ๊ฒฐ ๋๋ฌธ์ ์ฐ๋๊ฒ ์๋๋ผ ์ ๋ํฐ ์ฒ ํ์ธ wysiwyg๋ฅผ ์๋ํฐ์์, ๊ฐ๋ฐ ๋ฐฉ์์์ ์ง์ํ๋ ค๊ณ ์ฐ๋๊ฑฐ์ง ๋ณ์ ์
์ญ์ ํ๋ก ๊ทธ๋๋จธ๋ ๋ฌ๋ผ - dc App
๊ธฐ์กด์ ์ ๋ํฐ ์ฌ์ฉํ๋ ์ฌ์ฉ์๊ฐ ์๋ก DOTS๋ฅผ ๋ฐฐ์ฐ๋ ๋ฐ์ ํ์ํ Cost, ์๋ก์ด ์์ง์ ํตํด์ ๋น์ทํ ์ฌ์์์ ๋ ๋์ ํผํฌ๋จผ์ค๋ฅผ ๋ณด์ฌ์ฃผ๋๋ฐ๊น์ง ํ์ํ Cost ์ด๋ ๊ฒ ๋ ํผ? DOTS๋ฅผ ๋ฐฐ์ฐ๋ ๊ฒ ์ง๊ธ์ ๋ ๋์๋ณด์ด๋๋ฐ... ๊ธธ์ ์ด์ด์ค ๊ฒ ์ด๋์ธ๊ฐํ๋ ์๊ฐ์ด ๋ค์ด ๋๋
๊ฐ์ธ์ ์ฅ์์ ๊ทธ๋๋ ๋ฐฐ์ฐ๋ฉด ์ด๋์
ECS๋ ์ข์ ๋ฐฉํฅ์ด๋ผ๊ณ ๋ ์๊ฐํ๋๋ฐ ์ OOP ์ค์ฌ์ผ๋ก ์ง์ธ ์ ๋ํฐ์์ ECS๋ฅผ ์ต์ง๋ก ์ ๊ณตํ๋ ์ถ์๊ธด ํ์
์ฑ๋ฅ์ด ์๋ฐฑ๋ฐฐ ์ฐจ์ด๋๋๋ฐ ์๋ฉด ์ข์ฃ . ๊ณต๋ถํ๊ธฐ ์ซ์ผ๋ฉด ๊ธฐ์กด๋๋ก ๋ง๋ค๋ฉด ๋๊ณ ..
์ด๊ฒ ์ ๋ต์ด์ง ์ฝ์ด๋ ๋ณํ๊ฑฐ ํ๋๋ ์์ด ๊ฑ ์ต์ ํ๋ ๋ ์๊ธด๊ฑฐ๊ณ ๋ชจ๋ฐ์ผ ์์ฅ ์ ์ ์จ ๋์ ์ ๋ํฐ ์ํ๊ณ ํน์ฑ์ ๋ก์ฐ์๋์์ ์กฐ๊ธ์ด๋ผ๋ ๋ ํผํฌ๋จผ์ค ๋ฝ์ผ๋ ค๊ณ ์จ๋ชธ๋นํ๊ธฐ ํ๋๊ฒ ์๋์ ์ผ์
์ธ๋ฆฌ์ผ์ด ํ์ด์๋ ์งํฅ์ด๋ ์ ๋ํฐ๋ dod ๋ด์ธ์์ ๋ฐ๋๋ก ๊ฐ๋๊ฑฐ์ ๋ฃจ๋ฉ ๋๋์ดํธ ์ด๋ฐ๊ฑฐ๋ ์์ ํ ๋๋น๋๋ ๊ธฐ์ ์ด๋ผ๋๊ฒ ์๋ณด์? ๊ธ๊ณ ๊ตฌ๋ฒ์ ์ ๋จธ๋ฌผ๊ณ ์์๊ณ ๊ฐ ์๋๋ผ ๋ฉ์ธ ๋ ์ด์ด๋ ๋ณํ๊ฒ ์๋๋ฐ ๋ญ dots ์ ์ฌ์ธํ๋ค๋์์ผ๋ก ํธ๋ํ๋์ง ๋ชจ๋ฅด๊ฒ ์ ๊ธ๋ฝ์ ๋ณด๋๊น ๊ธฐ์ ๋๋ ๋ต์ ๋ ์คํ์ผ์ด๋ผ ๋ง์จ๋ฆ ํ๊ธฐ ์ซ์ผ๋ ๋น์ถ๋ฐ๊ณ ๋ค๋ก๊ฐ๊ธฐ ํ๋๊ฑฐ์ง
์๋ก๋ค๋ฅธ ๋๊ฐ๊ฐ ์์ด๋๊ฒ ์ด๋ป๊ฒ ์ฌ์ธ์ด๋ ใ ใ ใ ใ ํ๋๋ฅผ ๋ฒ๋ ค์ผ ์ฌ์ธ์ด์ง ใ ใ ใ ใ ใ ๊ทธ๋ฆฌ๊ณ ๊ธ๋ก ๋งํ๋ ์ฌ๋ํ๊ณ ์๋ฌด์๊ฒฌ ๋ง ์ํ๊ณ ๋น์ถํ ํ๋์ฌ๋์ด ์์ผ๋ฉด ๋์ค์ ๋๊ฐ ๋ต์ ๋์?
๋ต์ ๋๋ก ๋น์ถ๋ฐ๊ณ ์ถ์๋ฐ ์ธ๋งํ ํฉ๋ฆฌ์ ์ธ ์ด์ ๊ฐ ์๋์ค๋๊น ์ xํ์น ํ๋ฏ์ด '๋ต์ ๋๋ผ์ ์๋ฌป๋ฐ ํ๋๊ฑฐ' ๋ก ํฌ์ฅํ๋๊ฑฐ๊ตฌ๋ง ใ ใ ใ
stackoverflow ์์ dots ์ง๋ต ๋ณด๋ฉด ๋ต๋ณํ๋ dots ์ฌ์ฉ์๋ค์ ๋ฐ์ดํฐ์ ์ผ๋ก ์ฌ๊ณ ๋ฐฉ์์ ๋ฐ๊ฟ๋ผ, ๋ฐ์ ์ ํํ๋ฉด ์ฐธ ์ข๋ค๊ณ ์์ฒญ ํธ์ฌํ๋๋ฐ ๋๊ธ์์ dots๊ธํ๋ค๊ณ ์ ๊ฒฝ์ง๋ ์ ๋ค์ ๊ทธ๋ฐ ๊ฐ๋ ๋์ ํ์ด ์๋๋ผ ๊ทธ๋ฅ ์ข ๋ฒ๊ฑฐ๋ก์ด ๊ธฐ๋ฅ์ด๊ณ ์ฌ์ฉ๋ฒ ์ตํ๋ฉด ๋๋๊ฑธ๋ก ์๊ฐํด์ ํฑํฑ๋๋๊ฒ๊ฐ๋ค
๊ทธ๋ฅ ์ ํ์ง์คํ๋์ธ๊ฑฐ์ง๋จธ
DOTS ์ข ๋ณด๊ณ ์ด ๊ธ ๋ค์๋ณด๋๊น ใ ใด ๊ณต๊ฐ๋๋ค