ํ์ฌ ๊ทธ๋ํฝ์ค ๊ณต๋ถํ๊ณ ์๋๋ฐ ์์ง๊ตฌ์กฐ๋ฅผ OOP+ECS(์ปดํฌ๋ํธ) ๊ธฐ๋ฐ์ผ๋ก ์ฌ์ฉํธ์์ฑ๋๋์ผ๋ก ์ก์๋ณด๊ณ ์๋๋ฐ ๊ณต๋ถ๋ชฉ์ ์ผ๋กํ๋๊ฑฐ๋ผ RAII ์์น์์๊ฑฐํด์
SharedPtr์ด๋ UniquePtr๊ฐ์ ์ค๋งํธํฌ์ธํฐ๋ ์ผ๋จ ์์ฐ๊ณ ์์ต๋๋ค
ํ์ฌ ์์คํ ๊ธฐ๋ฐ์ผ๋ก ๋ก์ฐ๋ฐ์ดํฐ(DXAPI์ฌ์ฉ ์์๋ฐ์ดํฐ, ๋ฆฌ์์ค๋ฐ์ดํฐ, ์ ๋ ฅ๋ฐ์ดํฐ..๋ฑ) ์ ๊ฐ ์์คํ (์ฑ๊ธํด๊ธฐ๋ฐ๋งค๋์ )๊ธฐ๋ฐ์ผ๋ก ๋ฐ์ดํฐ๋ ์๋ค์ด ๊ฐ์ง๊ณ ์ธ๋ฑ์ค๋ฅผ
๊ฐ ์ํฐํฐ(์ค๋ธ์ ํธ) ์ ์ปดํฌ๋ํธํํ๋ก ํ์ํ ์ปดํฌ๋ํธ๋ฅผ ์ ๋ํฐ๋๋์ผ๋ก ๋๋ ค๊ณ ํ๋๋ฐ ์ ์๊ฐ์ ์ปดํฌ๋ํธ๋ฅผ ํฌ์ธํฐ๋ก ๋ค๊ณ ์์ ํ์๊ฐ ์๊ณ (8๋ฐ์ดํธ) ์์คํ
์์
์ผ๊ด์ฒ๋ฆฌ ํด์ฃผ๋์ด์ ์ธ๋ฑ์ค(4๋ฐ์ดํธ) ๋ก ์ํฐํฐ์ ๋ค๊ณ ์๋๊ฒ ๋ ํจ์จ์ ์ผ๊ฑฐ๊ฐ๊ณ ๋งค๋์ ์์ ecsํจํดํํ๋ก ์
๋ฐ์ดํธ ์ฑ๊ธ์ฝ์ด๋ก ํ๋ ์๋ง๋ค ์
๋ฐ์ดํธํ๋ ์ถํ ๋ฉํฐ์ฐ๋ ๋ ์์ผ๋ก ๋ฐ๊ฟ ๋ณ๋ ฌํํ๋ก ์
๋ฐ์ดํธํ๋ ์์๋ง๋ง์ผ๋ฉด(์
๋ ฅ->ํธ๋์คํผ->์ปฌ๋ผ์ด๋...๋ฑ ์ ํ์์ ํ์ํ๋
์๋ค) ์ดํํ๊ฐ ์บ์์ง์ญ์ฑ์ด๋ ์ฒ๋ฆฌ๋ ์ ์ฉํ ๊ฒ์ผ๋ก ๋ณด์ด๋๋ฐ ๊ณ ์ ์ ์ธ OOP(์ธ๋ฆฌ์ผ๋ฑ)์ ํํ์ ๋นํด์ ๊ตฌ์กฐ์ค๊ณ๊ฐ์ข ๋จธ๋ฆฌ๊ฐ ์ํ๋๋ผ๊ตฌ์ ๊ทธ๋๋ ํ์ต๋ชฉ์ ์ด๋ ์ด๋ฐฉ์๋๋ก ๊ณ์ ๊ฐ๋ณด๋๊ฒ ๋์์ง์์๊น์?
RAII๋๋ฌธ์ ์ค๋งํธ ํฌ์ธํฐ๋ฅผ ์์ฐ๊ฒ ๋ค๋ ํ์ด๋์ ์ฒ์๋ค์ ๋ญ ecs๋ ์ฐ๋ ๋๋ ํ๊ธฐ์ ์ ๊ทธ๋ฅ ๋ก๋->ํฌ์๋ ๋ ๋๋ฌ ๋จผ์ ํ์
์ง๊ธ ์ผ๋ฐ 3d๊ฐ์ฒด ๋ ๋๋ง๊น์ง๋ ๊ตฌํํด๋๊ธดํ์ด์ ๋ํผ๋๋ ๋๋ง์ ์ ๊ฐ ํ์ต์ค์ด๋ผ ์์ง ํด๋ณด์ง ์์๊ตฌ์, ์ค๋งํธํฌ์ธํฐ๋ ๊ทธ๋ฅ ํ์ต๋ชฉ์ ์ผ๋ก ์ผ๋จ ์์ฐ๊ณ ์๋๊ฑฐ๋ผ ํ์ํ๋ฉด ์ผ๊ด๋ก ๋ฐ๊พธ๋ฉด ๋๊ธดํด์์
์์ฌ๋ถ๋ฆฌ์ง๋ง๊ณ ์ดํดํ ์ ์๋๊ฒ๋ง ํด๋ณด์ญ์์ค ECS๋ ๋นผ๊ณ ๋ง๋ค์ด๋ณด๊ณ ๊ทธ๋ค์์ ECS๋ก ๊ฐ์ ํด ๋ณด๋ ๊ฒ๋๋ค ์ด์ฐจํผ ์ ๋๋ก ์๊ณ ์๋ ์ฌ๋์ด ๋๋ฌผ๊ธฐ๋๋ฌธ์ ๊ทธ๋ ๊ฒ๊น์ง ํ์์์๊ฒ๋๋ค ๊ทธ๋ฆฌ๊ณ ra2์๊ธฐ๋... ๋จํํ ๋ ํ์ง ๋ง์ญ์์ค
์ดํด๊ฐ์๊ฐ๋ค์ ์ ๊ตฌ์กฐ ์ ๊ฐ์์ ํ๊ฒ ๋ค๋๋ฐ -_-;์๊ฒ ์ต๋๋ค
@๊ธ์ด Indie(14.39) ์ผ๋จ ์ ๊ฐ ์คํด๊ฐ์๊ฒ ์ ์๊ฑฐ๊ฐ๊ธดํ๋ฐ raii๋๋ฌธ์ ์ค๋งํธํฌ์ธํฐ๋ฅผ ์์ด๋ค๋์๋ฏธ๋ ์๋์์ต๋๋ค ํ์ต๋ชฉ์ ์ผ๋ก ์์ํฌ์ธํฐ๋ฅผ ์ด๋ค๋๊ฑฐ์๊ณ raii์๊ธฐ๋ฐํด ์ค๋งํธํฌ์ธํฐ๊ฐ ๋ง๋ค์ด์ง๊ฑด ์๊ณ ์์ผ๋ ๋ฆด๋ฆฌ์ฆํ์ด๋ฐ๋๋ฌธ์ ํ์ธ์ฐจ ์์ฐ๊ณ ์๋๊ฑฐ๋ผ์์ ์คํด๊ฐ์์๋ค๋ฉด์ฃ์กํฉ๋๋ค
ํด๋น ๋๊ธ์ ์ญ์ ๋์์ต๋๋ค.
์ ๋ฐ์ดํธํจ๋ฉ๊ฐ์ ๊ทธ๋ฐ๊ฒ ์๊ตฐ์ ๊ทธ๊ฑด์๊ฐ๋ชปํ๋ค์ ๋ต๋ณ๊ฐ์ฌํฉ๋๋ค!
ํด๋น ๋๊ธ์ ์ญ์ ๋์์ต๋๋ค.
์ ๋ฐ์ดํธํจ๋ฉ๊ฐ์ ๊ทธ๋ฐ๊ฒ ์๊ตฐ์ ๊ทธ๊ฑด์๊ฐ๋ชปํ๋ค์ ๋ต๋ณ๊ฐ์ฌํฉ๋๋ค!
@๊ธ์ด Indie(14.39) size_t(long long) ๊ฐ์๊ฑธ๋ก ์จ๋ ์ด์ฐจํผ ํฌ์ธํฐ๋ฅผ ์ฐ๋๋๋ง ๊ทธ๋ผ ๋ชปํ๊ฒ ๋ค์ ๊ฐ์ฌํฉ๋๋ค
์ฉ์ด๊ฐ ์์ฒญ ํผ์ฌ ๋์ด ์๋๊ฑฐ ๊ฐ์๋ฐ ๋์ด ๋งํ ๋ก์ฐ๋ฐ์ดํฐ-์์คํ ์ด ์ํฐํฐ-์ปดํฌ๋ํธ ์๋? ๊ทธ๋ฐ๋ฐ ์ํฐํฐ์ ์ปดํฌ๋ํธ๋ฅผ ์ ๋ํฐ ๋๋์ผ๋ก ๋๋ค๋๊ฒ ๋ฌด์จ ๋ง์ธ์ง ์ ์ดํด๊ฐ ์๋๊ตฌ์. ECS ๋ ๋ด๋ถ์ ๊ฐ์ง ๋ณ์ ์ฌ์ด์ฆ ์ฐจ์ด ์ด๋ฐ ๊ฒ ๋ณด๋จ OOP ์ฒ๋ผ ๊ฐ์ฒดํ๋ ์ธ์คํด์ค๊ฐ ๊ฐ๋ณ ํ์์ญ์ ํ ๋น๋์ด ์๋๊ฑธ ํฌ์ธํฐ ํ๊ณ ํ๊ณ ๊ฐ๋ฉด์ ์ ํํด์ ์ฐพ์๊ฐ๋ ์บ์๋ฏธ์ค ๋๋ฌธ์ ์ฐ๋๊ฑฐ๋ผ ํฌ๊ฒ ์ค์ํ ๋ถ๋ถ์ ์๋๊ฑฐ ๊ฐ๊ตฌ์ ๊ทธ๋์ OOP ๋ ECS ๊ธฐ๋ฐ์ด๋ ๊ฒ๋ ์ข ์ค๋ช ์ด ๋ถ์กฑํ ๋ถ๋ถ์ธ๋ฏ. OOP๋ฅผ ์ธ๋ฆฌ์ผ์ด๋ผ๊ณ ํ๋๋ฐ ์ธ๋ถ๋ก ๋ ธ์ถ๋ ์กํฐ-์ปดํฌ๋ํธ ๊ตฌ์กฐ๊ฐ ๊ทธ๋ ๊ฒ ๋ณด์ผ ์ ์์ด๋ ์์ง ๋ด๋ถ ๋จ์์ DOD ์คํ์ผ๋ก ๋์๊ฐ๊ธฐ ๋๋ฌธ์ ๊ทธ๋ฐ ๊ตฌ๋ถ๋ ์ ์ ํ์ง ์์๊ฑฐ ๊ฐ๊ณ