์ ์ ๊ธฐ๋ฐ Scene ๊ด๋ฆฌ์ Particle Pool ์ต์ ํ๋ฅผ ํตํ ๊ฒ์ ์์ง ์ค๊ณ
๐ Level 3 Tutorial โ Limn Engine Advanced Guide
AI ์์ฝ
Context
๊ฐ์ฒด ์์ฑ ๋ฐ ํ๊ดด ๋ฐ๋ณต์ผ๋ก ์ธํ ๋ฉ๋ชจ๋ฆฌ ๋จํธํ์ ์ํ ์ ํ ์์ ๋ ๋๋ง ์ค๋ฒํค๋ ํด๊ฒฐ ํ์. ๋ณต์กํ ์ํ ๋จธ์ ์์ด ํจ์จ์ ์ผ๋ก ๋ค์์ ๊ฒ์ ํ๋ฉด์ ์ ํํ๊ณ ๊ด๋ฆฌํ๋ ๊ตฌ์กฐ์ ๋ฐฉ์ ๋ชจ์.
Technical Solution
- ์ ์ ๊ธฐ๋ฐ Scene Indexing์ ํตํ ๋ ๋๋ง ํํฐ๋ง ๊ตฌ์กฐ ์ค๊ณ
- ๋ชจ๋ Scene ์ปดํฌ๋ํธ๋ฅผ ์ด๊ธฐ ๊ตฌ๋ ์ ๋ฉ๋ชจ๋ฆฌ์ ์ฌ์ ๋ก๋ํ์ฌ ๋ฐํ์ ์์ฑ ๋น์ฉ ์ ๊ฑฐ
- Render Loop ๋ด ์กฐ๊ฑด๋ฌธ ์ฒ๋ฆฌ๋ฅผ ํตํ ๋นํ์ฑ Scene์ update ๋ฐ draw ํธ์ถ ์์ฒ ์ฐจ๋จ
- ParticleSystem ๋ด Pool ๊ธฐ๋ฐ ๊ฐ์ฒด ๊ด๋ฆฌ๋ก ์๋ช ์ฃผ๊ธฐ(Life/Alpha)์ ๋ฐ๋ฅธ ์๋ ๋ฉ๋ชจ๋ฆฌ ํ์ ๊ตฌํ
- Circle Collision ๋์ ์ ํตํ ์ํ ๊ฐ์ฒด ๊ฐ์ ๊ฑฐ๋ฆฌ ๊ธฐ๋ฐ ์ ๋ฐ ์ถฉ๋ ํ์ ๋ก์ง ์ ์ฉ
- Fixed HUD ์ต์ปค๋ง ์์คํ ์ ํตํ ์นด๋ฉ๋ผ ์ขํ๊ณ์ ๋ ๋ฆฝ์ ์ธ UI ๋ ๋๋ง ๋ ์ด์ด ๋ถ๋ฆฌ
์ค์ฒ ํฌ์ธํธ
- ์ํ ์ ํ ์ ๊ฐ์ฒด๋ฅผ ์ฌ์์ฑํ๋ ๋์ Scene Indexing์ ํตํ ๊ฐ์์ฑ ์ ์ด ๊ฒํ - ๋น๋ฒํ ์์ฑ/์ญ์ ๊ฐ ๋ฐ์ํ๋ ์ดํํธ ์์์ ๋ํด Object Pooling ํจํด ์ ์ฉ - ์ขํ๊ณ๊ฐ ๋ค๋ฅธ UI ์์๋ ๋ ๋๋ง ๋ฃจํ ๋ง์ง๋ง ๋จ๊ณ์์ Fixed ์ขํ๋ก ๋ฎ์ด์ฐ๋ ๊ตฌ์กฐ ์ค๊ณ - ๋จ์ ์ถฉ๋ ํ์ ์ AABB ๋ฐฉ์๋ณด๋ค ์ฐ์ฐ ํจ์จ์ด ๋์ ๊ฑฐ๋ฆฌ ๊ธฐ๋ฐ Circle Collision ํ์ฉ