https://unity.com/kr/how-to/architect-game-code-scriptable-objects
์ง๋ฌธ๊ธ์ ๋ต๋ณ๋ฌ๋ฆฐ๊ฑฐ์ฒ๋ผ, ํ๋ ์ด์ด๊ฐ ํ๋ ์ด์ด hp๋ฅผ ๊ฐ๊ณ ์๋ค๊ณ ๊ฐ์ ํ๋ฉด
ํ๋ ์ด์ด hp๊ฐ ์ผ์ ์ด์ ๋ด๋ ค๊ฐ๋ ๋ธ๋ฆฌ๊ฒ์ดํธ๋ฅผ ๋ฑ๋ก ์์ผ์ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ด ์์
์ฌ๊ธฐ์ ๊ทธ ๋์ scriptable object๋ก ํ๋ ์ด์ด hp ๋ฅผ ๋ฐ๋ก ๊ด๋ฆฌํ ๊ฒ์ ์ถ์ฒํจ.
๋ธ๋ฆฌ๊ฒ์ดํธ๋ก ์ป์ ๋์ ๋จ์ ์ ํ๋ ์ด์ด๊ฐ ์ผ์ ์ฒด๋ ฅ ์ด์์ผ๋ก ๋ด๋ ค๊ฐ๋ฉด ํ๋ฉด์ ๋นจ๊ฐ ๊ฒฝ๊ณ ๋ฅผ ๋์ฐ๊ณ ์์ ์ ๋ฐ๊พธ๊ณ ํ๋ ๋ฑ์ ์์ ์ ํ๊ณ ์ ํ๋ฉด
์์ ์ ๊ด๋ฆฌํ๋ ์คํฌ๋ฆฝํธ๋ ํ๋ฉด ํจ๊ณผ๋ฅผ ๊ด๋ฆฌํ๋ ์คํฌ๋ฆฝํธ์์ ํ๋ ์ด์ด ์คํฌ๋ฆฝํธ ์์ฒด๋ฅผ ์ฐธ์กฐํ๊ณ ์์ด์ผ ํ๋ค๋ ๊ฑฐ์.
์์ ์ด๋ ui๊ฐ ๋ถํ์ํ๊ฒ ํ๋ ์ด์ด ์คํฌ๋ฆฝํธ๋ฅผ ์ฐธ์กฐํ๋ ๊ฑฐ๊ณ , ์ฌ ์ ํ ๋ฑ์ ์ฒ๋ฆฌํ ๋ ํ๋ ์ด์ด๊ฐ 2๊ฐ๊ฐ ๋๋ค๋๊ฐ ํ๋ ์ํฉ์ด ๋ฐ์ํ๋ฉด ๋ฌธ์ ๊ฐ ์๊น
(level ๋ง๋ค ํ๋ ์ด์ด ์บ๋ฆญํฐ๊ฐ ์๋ ๊ตฌ์กฐ์ผ๋, level1์์ level2 ์ฌ์ ๋ถ๋ฌ์ค๊ณ level1 ์ฌ์ ์์ ๋ ๊ณผ์ ์์ ํ๋ ์ด์ด๊ฐ 2๋ช ์ด ๋๋ ์ํฉ์ด ๋ฐ์ํ๋ค๋๊ฐ,
ํน์ ๊ฒ์ ์์ํ๋ฉด ๋จ๋ ๋ฉ์ธ ๋ฉ๋ด์์ ํ๋ ์ด์ด๊ฐ ์กด์ฌํ์ง ์๋ ์ํฉ์์ ์ฐธ์กฐ ์ค๋ฅ๊ฐ ๋ฌ๋ค๋๊ฐ)
๊ทธ๋ฆฌ๊ณ ๋ง์ฝ ํ๋ฉด ๋ถ์ด์ง๋๊ฑด ์ฒด๋ ฅ 60% ์ฏค์์ ํธ์ถํ๊ณ , ์์ ์ด ๋ฐ๋๋๊ฑด ์ฒด๋ ฅ 40%์ฏค์์ ํธ์ถํ๊ณ ์ถ๋ค๋ฉดย
๋ธ๋ฆฌ๊ฒ์ดํธ ๋๊ฐ๋ฅผ ๊ฐ๊ณ ์์ด์ผ ํ๋๋ฐ ์ด๋ฌ๋ฉด ์ง๊ด์ ์ด์ง๋ ์๊ณ , ๋ถํธํ๊ธฐ๋ง ํจ.
๊ทธ๊ฑธ ๋ฐฉ์งํ๊ธฐ์ํด, PlayerHP์์ฒด๋ฅผ scriptable object๋ก ๋ง๋ค๊ณ ์๋์ฒ๋ผ ๊ตฌ์กฐ๋ฅผ ๋ฐ๊พธ๋ผ๋ ๊ฑฐ์
๋ ์์ธํ ๋ด์ฉ์ ๋ด๊ฐ ๋งํฌ ๊ฑธ์ด๋ ๊ฑธ ์ฝ์ด๋ณด๋ฉด ์ข์ ๋ฏ.
๋ฌผ๋ก ์ด ๋ฐฉ๋ฒ์ด ๋ฌด์กฐ๊ฑด ์ณ๋ค๋ ์ด์ผ๊ธฐ๋ ์๋๋๊น ์ถฉ๋ถํ ๊ณ ๋ฏผํด๋ณด๊ณ ๋ ์ข๋ค ์๊ฐ๋๋ฉด ์ฐ๋ ๊ฑธ ์ถ์ฒํจ.
๋ช๋ง๋ฆฌ๊ฐ ์คํฐ๋ ์ง ๋ชจ๋ฅด๋ ๋ชฌ์คํฐ ์ฒด๋ ฅ์?
๋ชฌ์คํฐ ์ฒด๋ ฅ ๋ฐ๋๋๋ง๋ค ui๋ ์ค๋์ค ์ค์ ์ ๋ฐ๊ฟ์ค๋ค๋ฉด, ์์ ๋ฐฉ์์ ์ฐ๋ฉด ์๋๊ฒ ์ง? ์ ๋ต์ ์์. ์์ ๋ฐฉ์์ด ์ข์ ๊ฒฝ์ฐ๊ฐ ์๊ณ ์๋ ๊ฒฝ์ฐ๊ฐ ์๋๊ฑฐ์ง. - dc App
์ด๋ฐ๋๋ค๋จ๋ฌธ์ ๋์์ธ ํจํด์ด๋๊ฒ ํ์ํจ