https://unity.com/kr/how-to/architect-game-code-scriptable-objects#example-players-health-points
๋ ์ด๊ฑฐ ์ค๊ฐ์ ์์ ํ๋ ์ด์ด hp๊ฐ ์ง์ง ์ดํด๊ฐ ์๊ฐ..
"์ด์ ์ฌ์ ์ฒด๋ ฅ ๋ฐ ํ๋ฆฌํน์ด ์๋ค๊ณ ๊ฐ์ ํด ๋ด ์๋ค. ์ฒด๋ ฅ ๋ฐ๋ PlayerHP ๋ณ์๋ฅผ ๋ชจ๋ํฐ๋งํ์ฌ ๋์คํ๋ ์ด๋ฅผ ์ ๋ฐ์ดํธํฉ๋๋ค. ์ฝ๋๋ฅผ ๋ณ๊ฒฝํ์ง ์์๋ PlayerMP ๋ณ์์ ๊ฐ์ ๋ค๋ฅธ ๋ณ์๋ฅผ ์ฝ๊ฒ ์ฐธ์กฐํ ์ ์์ต๋๋ค. ์ฒด๋ ฅ ๋ฐ๋ ์ฌ์ ํ๋ ์ด์ด์ ๋ํ ์๋ฌด๋ฐ ์ ๋ณด๋ ๊ฐ๊ณ ์์ง ์์ผ๋ฉฐ, ํ๋ ์ด์ด๊ฐ ๊ธฐ๋กํ๋ ๋ณ์์ ๋์ผํ ๋ณ์์์ ๊ฐ์ ์ฝ์ด์ฌ ๋ฟ์ ๋๋ค.
์ด๋ ๊ฒ ์ค์ ํด ๋๋ฉด PlayerHP์ ์ฐ๋ํ ์์๋ฅผ ์ถ๊ฐํ๊ธฐ๊ฐ ์ฝ์ต๋๋ค.ย PlayerHP๊ฐ ๋ฎ์์ง๋ฉด ์์ ์ด ๋ฐ๋ ์ ์๊ณ , ํ๋ ์ด์ด๊ฐ ์ฝํด์ง ๊ฒ์ ์๋ฉด ์ ์ ๊ณต๊ฒฉ ํจํด์ด ๋ณํ ์ ์์ผ๋ฉฐ, ๋ค์ ๊ณต๊ฒฉ์ ๋ฐ์ผ๋ฉด ์ํํ๋ค๋ ์ํ๋ฅผ ํ๋ฉด ํจ๊ณผ๋ก ์๋ฆด ์ ์์ต๋๋ค. ์ฌ๊ธฐ์ ์ค์ํ ๊ฒ์ ํ๋ ์ด์ด ์คํฌ๋ฆฝํธ์์ ์ด๋ฌํ ์์คํ ์ ๋ฉ์์ง๋ฅผ ๋ณด๋ด์ง ์์ผ๋ฉฐ, ์์คํ ์ด ํ๋ ์ด์ด ๊ฒ์ ์ค๋ธ์ ํธ์ ๋ํด ์ ํ์๋ ์๋ค๋ ์ ์ ๋๋ค. ๋ํ ํ ์คํธ๋ฅผ ์ํด ๊ฒ์ ์คํ ์ค์ ์ธ์คํํฐ์ ๋ค์ด๊ฐ์ PlayerHP์ ๊ฐ์ ๋ณ๊ฒฝํ ์๋ ์์ต๋๋ค. "
๋์ถฉ hp๋ณ์๋ฅผ ์คํฌ๋ฆฝํฐ๋ธ ์ค๋ธ์ ํธ๋ก ๋ง๋ ๋ค๋๊ฑฐ ๊ฐ์๋ฐ hp๋ณ์๋ฅผ ์คํฌ๋ฆฝํฐ๋ธ ์ค๋ธ์ ํธ๋ก ๋ง๋ค์ด์ ๋ค๋ฅธ ์ค๋ธ์ ํธ์์ ์ด๋ป๊ฒ ์ฐธ์กฐ๋ฅผ ํ๋ค๋ ๊ฑฐ์ผ? ๊ฐ๊ธฐ ๋ค๋ฅธ ์ค๋ธ์ ํธ๊ฐ ์ด ์คํฌ๋ฆฝํฐ๋ธ Hp๋ฅผ ํตํด ์ธ์คํด์คํ ๋๋ค๊ณ ์ณ๋ ์ด Hp๋ค์ ์๋ก ๋ค๋ฅธ๊ฐ ์๋์ผ? ๋ด๊ฐ ๊ธ ๋ด์ฉ์ ์๋ชป ์ดํดํ๊ฑด๊ฐ..?
์ค๋ช ๋ณด๊ณ ์ดํดํ๋ ค๊ณ ํ์ง ๋ง๊ณ ๊ทธ๋ฅ ์ํ ์์ ๋ฐ์์ ๋ฏ์ด๋ณด๋๊น ๋๊ฐ ๋ญ์๋ฆฐ์ง ์๊ฒ ๋๋ผ.
์ดํดํ์ง๋ง. ์์จ ์ ๋ฐ๊ฑฐ. ๊ทธ๋ฅ ํ์๋ฆฌ
๊ตฌ๋ญ? ๊ทธ๋๋ ์คํฌ๋ฆฝํฐ๋ธ ์ค๋ธ์ ํธ ์ข๋ค๊ณ ๋ค์ด์ ๊ฑ ์์จ๋ ๋ฌด๋ฐฉํ๊ฐ๋ณด๋ค
ScriptableObject๋ ๊ทธ๋ฅ ์์ ํ์ผ ๊ทธ์์ฒด๋ผ๊ณ ์๊ฐํ๋ฉด ๋. ๋๊ฐ A.jpg ํ์ผ์ด ์๋ค๊ณ ์๊ฐํด๋ด. ์ด๊ฑด ์ด๋์ ์ฐธ์กฐํด์ ์จ๋ ๋๊ฐ์ ์ด๋ฏธ์งํ์ผ์. ์ด๋์ ๊ฐ ์์ ์ด ๋ฐ์ํด๋ 10๊ตฐ๋ฐ์ A.jpg๋ฅผ ์ฐ๊ณ ์์ผ๋ฉด ๊ทธ ์์ ๋ A.jpg๋ฅผ ์ฌ์ฉํ๋ ๋ ผ๋ฆฌ์ ๊ฐ์๊ฒ์
์ ๋ด์ฉ์ SO๊ธฐ๋ฐ ์ํคํ ์ณ์๋ํ ๊ฐ๋ตํ ์์๊ฐ์๊ฑด๋ฐ, SO ๊ธฐ๋ฐ์ผ๋ก ์ค๊ณํ๋ ๊ฒ์์ ๋ง๋๋๊ฒ ์๋๋๋ผ๋ SO์์ฒด์ ๊ฐ๋ ์ ๋ค๋ฅธ์์ญ์์๋ ๋ง์ด์ฌ์ฉ๋๊ธฐ์ ์๊ณ ์์ด์ ๋์ ๊ฑด์์
HDRP / URP์ ๊ทธ๋ํฝ ์ ํ ๊ฐ์๊ฒ๋ค์ด ๊ทธ๋ฌํ๊ฒ๋ค์
ใฑใ ใฑใ ใฑใ ใฑใ ใฑใ ใฑใ
์์ ์ ๋์จ PlayerHP ๊ฐ์ ๊ฒฝ์ฐ๋ ํ๋ ์ด์ด๊ฐ ํ๋์ผ๋๋ฅผ ๋งํ๋ ๊ฑฐ์ผ. Scriptable Object๋ฅผ ์ฌ๋ฌ๊ฐ์ ์ธ์คํด์ค๋ฅผ ๋ง๋๋๋ฐ ์ฌ์ฉํ ๊บผ๋ฉด ์ฌ๋ฌ ์ธ์คํด์ค๊ฐ ๊ณตํต์ ์ผ๋ก ๊ฐ์ง ๊ณ ์ ๋ ๊ฐ์์๋ ์ธ ์ ์์ด. ์ฌ๋ฌ ์บ๋ฆญํฐ๊ฐ ์ต๋ HP๊ฐ 100์ผ๋ก ๊ณ ์ ๋์ด ์๋ค๊ฑฐ๋ ํ๋ค๋ฉด MaxHP๋ฅผ Scriptable Object๋ก ๋ง๋ ๋ค๋๊ฐ ๋ญ ์ด๋ฐ์์ด๊ฒ ์ง. ๋น์ฐํ ์ธ์คํด์ค ๊ฐ์์ ํ์ฌ HP ๊ฐ์ ๊ฒฝ์ฐ๋ ๋ค๋ค ๋ค๋ฅธ ๊ฐ์ด ๋ง์ผ๋๊น Scriptable Object๋ฅผ ์ฐ๋๊ฒ ์๋์ผ. ์ฆ, ์์ ๋ ํ๋ ์ด์ด๊ฐ ๋ ํ๋์ผ๋ ๋ด HP๋ฅผ Scriptable Object๋ก ๋ง๋ค๊ณ , ์ฌ์ด๋ ๋งค๋์ ๋ ๋ชฌ์คํฐ AI ๊ฐ์๊ฒ๋ค์ด ๊ทธ Scriptable Object๋ฅผ ์ฐธ์กฐํ๊ฒ ํด๋์ผ๋ฉด ๋ฐ๋ก ํ๋ ์ด์ด์ ๊ฐ์ฒด๋ฅผ ๋ชฐ๋ผ๋ ๋์์ ์ํฌ ์ ์๋ค๋๊ฑฐ์ง.
๋ด๊ฐ ์ดํดํ๊ฒ ๋ง๋ค.. ์ข ํท๊ฐ๋ฆฌ๊ฒ ์จ๋จ์ด ์จ.. ๋ฌด์จ ๋ง๋ฅ์ธ๊ฑฐ๋ง๋ฅ ์จ๋์