๋ํํด์ ๊ทธ๋ฐ์ง ํ๋ฃจ์ 3~4์๊ฐ๋ฐ์ ์์ ์ํด์ ๊ทธ๋ฐ์ง ๋ถ๋๋ ์ ๊ณ ๊ตฌ์กฐ๊ณ์ ๋ฏ์ด๊ณ ์น๋๋ฐ ์๊ฐ ๋ค์ก์๋จน๊ณ ์๋๋ฏ ๊ทธ๋ผ ๋ณธ๋ก ์ผ๋ก
1. ์บ๋ฆญํฐ ์คํฌ๋ฆฝํธ ๋ชจ๋ํ
๋ชฌ์คํฐ, ์ฌ๋ฌ๊ฐ์ ์ง์ ์ ๋ง๋ค๋ ๋ฐ๋ณต์ ์ธ ์์ ์ ์ค์ด๊ณ ๊ฐ๊ฐ ์ฒ๋ฆฌํ๊ธฐ ์ฉ์ดํ๊ฒ ํ๊ธฐ ์ํด ๋ชจ๋ํ๋ก ๊ต์ฒด
์๋ฐํ ๋ชจ๋ : ์๋ฐํ ์ค๋ธ์ ํธ ์์์ผ๋ก ์๋ SpriteRenderer์ ๊ด๋ฆฌ ์ฃผ๋ก ์๋ฐํ ๊ต์ฒด, ์ ๋๋ฉ์ด์ ์ ์ฒ๋ฆฌํจ
๋ฌด๋ธ๋จผํธ ๋ชจ๋ : ์ด๋ ๊ด๋ จ๋ ํ๋ ์ ํ, ์์ง์, ๋๋ฐฑ๋ฑ ๋ชจ๋ ์์ง์ ํ๋์ ์ฌ๊ธฐ์ ์ฒ๋ฆฌํจ
์ดํ ๋ชจ๋ : ๊ณต๊ฒฉ์ ๊ด๋ จ๋ ํ๋ ์ฝ๋ผ์ด๋์ ์ด๊ฐ ์ฃผ๋ ์ฒ๋ฆฌ
๋ฒ ์ด์ค ์บ๋ฆญํฐ : ๊ฐ ๋ชจ๋์ ์ ์ดํ๋ฉฐ ๊ฐ ์ ์ดํ๋ ๋ชจ๋์ Baseํด๋์ค์ ์ฒ๋ฆฌ๋์ด์์ผ๋ฉฐ Base๋ฅผ ์์๋ฐ๋ ์์์ ์ด๋ฒคํธ๋ก ์ฒ๋ฆฌ๊ฐ๋ฅ
2. KeyManager ๊ตฌ์กฐ ๋ณ๊ฒฝ
์๋๋ ๋ธ๋ฆฌ๊ฒ์ดํธ๋ก ์ด๋ฒคํธ๋ฅผ ํ๋์ ๋ฃ์ด ์คฌ์ง๋ง ๋ณต์กํ๊ณ ์ฝ๋๊ฐ ๊ธธ์ด์ง๊ณ ์ธ๋์๋ ํจ์๊ฐ ๋ง์์
์ด๋ฒคํธ ํ์์ผ๋ก ํค๋งค๋์ ์ ๋ฑ๋ก๋ ์คํฌ๋ฆฝํธ์ GetKeyEvent๋ฅผ ์์ฑํ๊ณ ์ฌ์ฉ
inputState : ํค ์ํ๋ 3๊ฐ์ง๋ก UnPress, Press, DoublePress๋ก ๊ฐ๊ฐ ๋๋ฅด๊ณ ๋์๋, ๋๋ ์๋, ์ฐ์์ผ๋ก ๋๋ฒ ๋๋ ์๋ ๊ฐ์ด ๋์ด์ด
keyValue : KeyCode
3. CustomEventer
UGUI์ ๊ธฐ๋ฅ๋ค๋ ์ข์ง๋ง ๋ด๊ฐ ์ํ๋ ๋ฐฉํฅ์ผ๋ก ์ค๊ณํ๊ธฐ์ ๋ถ์กฑํ๊ฒ ๋๋ฌด ๋ง์์ ๋๋ถ๋ถ UI ์ด๋ฒคํธ๋ ์ง์ ๋ง๋ค์ด์์ฌ์ฉํจ
๋ฆฌ์คํธ๋ฐ, ์คํฌ๋กค๋ทฐ, ๋ฒํผ๋ฑ
CustomEventSystem์ ์์ ์ ๋งํฌํ๊ณ ์๋ CustomSelectButton์ ๊ด๋ฆฌํ๊ณ ์ ํ๊ด๋ฆฌํ๋ฉฐ ์ ํ๋ ์ค๋ธ์ ํธ์ ํค๋ณด๋๋ก ์ ํ๊ฐ๋ฅํ๊ฒ ์ค๊ณ๋์ด์์
์ง์ ๋ง๋ ๋ฆฌ์คํธ๋ฐ
4. ์์ ์์คํ
์์ ์ Npc๋ฅผ ํด๋ฆญํด PopupMenu์์ ํด๋ฆญํด์ ๊ฐ๋ฅํ๋๋ก ์ค๊ณ Npc๋ณ๋ก ์์ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ง๊ณ ์์ผ๋ฉฐ
PopupMenu์ ์์ ๋ฒํผ์ ํด๋ฆญํ๋ฉด ๋ฐ์ดํฐ๋ฅผ ๋ฐ์์์ ๋ฟ๋ ค์ค
๊ตฌ๋งคํ๊ฑฐ๋ ์๋ก ์ป์ ์์ดํ ์ ๋๊ฐ์ด ์ดํํธ ์ ์ฉ
5. ํ๋กํ ์ฐฝ
์ฅ์ฐฉํ ์์ดํ , ์คํ , ์๋ฐํ๋ฑ์ ๋ณผ ์ ์์
๊ธฐ๋ณธ ์คํ ๋ณด๋ค ์ฆ๊ฐํ๊ฒ, ๋จ์ด์ง๊ฒ ๊ตฌ๋ถ ๊ฐ๋ฅํ๊ฒ ์ค์ ๋ํ๋ ๋๊ฐ์ด ํ์
6. ๊ฑฐ๋ ์ถ๊ฐ
์์ง๊น์ง ๊ท๊ฒ์ฌ, ๊ฑฐ๋๋ฟ์ด๋ฉฐ ๋ชจ๋ํ ์ํค๋๋ผ ๊ธฐ์กด ์คํฌ๋ ๋ค ๋ ๋ฆฐ์ํ์ฌ์ Idle, Walk ์ ๋๋ฉ์ด์ ๋ง ์ ์ฉ๋์ด์์
ํ ์คํธ ์ค์ด๋ผ ์์๊ฐ ์์ง ์์
์ด๋ง ์๋ฌ๊ฐ์ผ์ง
๋์ด๊ฑฐ ์บ๋ฆญํฐ ์คํ๋ผ์ดํธ ์ด๋์ ๊ตฌํจ?
npk์ถ์ถ - dc App
๋ํ๋ฅผ ํ๊ณ ์ถ์๊ฒ์ธ๊ฐ ๋ํ๋ฅผ ๋ง๋ค๊ณ ์ถ์๊ฒ์ธ๊ฐ