์ผ๋ง ์ ์, ์ ํ๋ธ์์ ๊ณจ๋๋ฉํ์ด๋ ๋ถ ์์๋ณด๊ณ ์ ๋ํฐ ์ ๋ฌธํ ํ๋ฆฐ์ด ์ ๋๋ค.
๋ค๋ฆ์ด ์๋๋ผ, ํ์ฌ Start์ Awake์ ์ฐจ์ดํ๊ณ Update์ FixedUpdate์ ์ฐจ์ด์ ๋ํด์ ๊ณต๋ถ ์ค์ธ๋ฐ,
Updateํ๊ณ FixedUpdate ์ฐจ์ด๋ ์ด๋ ์ ๋ ์ ๊ฒ ๊ฐ์๋ฐ,
Startํ๊ณ Awake์ ์ฐจ์ด๋ฅผ ๋์ ํ ๋นก๋๊ฐ๋ฆฌ๋ผ ๊ทธ๋ฐ๊ฐ ์ดํด๊ฐ ์ ๊ฐ์ง ์๋ค์
Awake๋ ์คํฌ๋ฆฝํธ ์์๋ฅผ ๋นํ์ฑํ ํ์ฌ๋ 1ํ ์คํ์ด ๋๊ณ Start ๋ณด๋ค ๋จผ์ ์คํ๋๋ค.
Start๋ ์ ๋ฐ์ดํธ ์ง์ ์ 1ํ ์คํ๋๋, ์คํฌ๋ฆฝํธ๊ฐ ๋นํ์ฑํ ์ํ์ธ ๊ฒฝ์ฐ ์คํ๋์ง ์์ผ๋ฉฐ, ์คํฌ๋ฆฝํธ๊ฐ ํ์ฑํ ์ํ์ฌ์ผ๋ง ํ๋ค.
์ฌ๊ธฐ์ ๋งํ๋ ์คํฌ๋ฆฝํธ์ ํ์ฑํํ๊ณ ๋นํ์ฑํ๊ฐ ๋ญ ๋งํ๋ ๊ฑด์ง ๋์ ํ ๋ชจ๋ฅด๊ฒ ๋ค์
๋์!
์ค๋ช
์ข ํด์ฃผ์ค ๋ถ ๋ถํ๋๋ฆฝ๋๋ค
์ ๋ชจ๋ฅด๊ฒ ๋ค๋ง Start๋ ์ด ์คํฌ๋ฆฝํธ๋ฅผ ์ง๋ ๊ฒ์์ค๋ธ์ ํธ๊ฐ ํ์ฑํ ๋ ๋, Awake๋ ์คํฌ๋ฆฝํธ๊ฐ ์ปดํ์ผ ๋ ๋์
ํ์ฑํ๋ ๋ญ gameObject.SetActive(bool)์ด๊ฒ ๊ณ
๋ต๋ณ ์๊ฐ์ฌํ๋ค ๋งจ์ด์ผ ใ ใ
startํ๊ณ onEnableํ๊ณ ๋ฐ๋์ด์ ๋ด๊บผํ๋ฆผ ๋ฐ 38 ํตํผ๊ฒ์ด ๋ง์ผ๋ ์ฐธ๊ณ ํ์
์คํค๋ํค, ์ ํํฐ์๋น์ค ๊น์ง ๊ฐ์ฌ๊ฐ์ฌ, ์ฐธ๊ณ ํ๊ฒ ์ด
์๋ฅผ ๋ค์ด ์คํฌ๋ฆฝํธ A์ B๊ฐ ์์๋ A์ Awake์์ ๋ณ์ i์ 10์ ๋ฃ๋๋ค๊ณ ์๊ฐํด๋ณด์ . ๊ทธ๋ฆฌ๊ณ B์ Awake์์ A์ ๋ณ์ i์ ์ ๊ทผํด์ ๊ทธ ์ ๋งํผ ํ๋ฆฌํน์ ๋ณต์ ํจ. ์ ๋ํฐ์์์ ํ ์คํธํ ๋๋ ๋ฌธ์ ์์ด ์๋ํ ์ ์์. ๊ทผ๋ฐ ๋น๋ํด๋ณด๋ฉด ํ๋ฆฌํน์ด 0๊ฐ ๋ณต์ฌ๋๋๊ฑฐ์. ์ด์ ๊ฐ ์คํฌ๋ฆฝํธ B์ Awake๊ฐ A๋ณด๋ค ๋จผ์ ํธ์ถ๋์ 0๋ฒ ๋ณต์ ํ๊ธฐ ๋๋ฌธ์.
๊ทธ๋์ Awake์์ i=10์ ํด์ฃผ๊ณ Start์์ A์ i๋ฅผ ์ฐธ์กฐํ๋ฉด ๋ฌด์กฐ๊ฑด 10์ ๊ฐ์ ธ์ฌ ์ ์์
๋ ๋ค ๊ฐ์ฒด๊ฐ ์ฒ์ ์์ฑ๋์์๋ ์์๋๋ก ํธ์ถ๋๋๊ฑด ๋์ผํจ. ์์๋ง ๋ค๋ฆ ๋จผ์ ํด์ผ๋๋๊ฑธ Awake์ ๋ฃ๊ณ ๋์ค์ ํด์ผ๋๋๊ฑธ Start์ ๋ฃ์ผ์
์ฅ๋ฌธ์ ๋ต๋ณ ๊ฐ์ฌํฉ๋๋ค
ํ์ฑ ๋นํ์ฑ ๋ฌธ์ ๋ ์คํฌ๋ฆฝํธ A๊ฐ ๋ค์ ํ๋ฆฌํน์ ๋ณต์ ํ ๋ ํ๋ฆฌํน์ ๋นํ์ฑํ๋ ์ํ๋ก ์ ์ฅํด๋์ผ๋ฉด ๋ณต์ ํ ๊ฐ์ฒด๋ ๋นํ์ฑํ๋์ฑ๋ก ์์ฑ๋จ. ๊ทธ๋ฌ๋ฉด Awake๋ Start๋ ํธ์ถ๋์ง ์์. ๋ฐ๋๋ก ํ๋ฆฌํน์ ํ์ฑํ ํด๋์ฑ๋ก ์ ์ฅํด๋๊ณ ์ด๊ฑธ ๋ณต์ ํ๋ค๋ฉด ํ์ฑํ๋์ฑ๋ก ์์ฑ๋๊ณ Awake๊ฐ ๋ฐ๋์ ํธ์ถ๋จ. ์์ฑํ์๋ง์ SetActive(false) ๋ฃ์ด๋ ์ด๋ฏธ Instantiate ๋์ค์ ํธ์ถ๋๊ฑฐ์.
๋์ ์ด ๊ฒฝ์ฐ ๋ณต์ ์์ฑ -> Awake -> SetActive(false) -> Startํธ์ถX ๊ฐ ๋์ Start๋ ํธ์ถ์๋จ
awake๋ ํด๋น ๊ฐ์ฒด๊ฐ ์์ฑ๋๋ ์ฆ์ ํธ์ถ๋๊ณ start๋ ํด๋น ๊ฐ์ฒด๊ฐ ์์ฑ๋๊ณ ๋ค์ ํ๋ ์์์ start ํธ์ถ๋ ํ์ด๋ฐ์ ํธ์ถ๋จ
๊ฐ์ฌํฉ๋๋ค
์ ๋ํฐ์์ ๊ฒ์์ค๋ธ์ ํธ์ ์คํฌ๋ฆฝํธ ๋ถ์ด๋ฉด ์ฒดํฌํ์๊ฐ ๋์ต๋๋ค. ๊ทธ๊ฑฐ ๋๋ฉด ๋นํ์ฑํ ํค๋ฉด ํ์ฑํ์์. ์คํฌ๋ฆฝํธ๋ก gameobject.setactive(true/false) ๋์ถฉ ์๋ฐ ๋ฉ์๋๊ฐ ์์๊ฑด๋ฐ ์๊ฒ ๋์ผํ ์ญํ ์ ํด์ค๋๋ค.