Destroy ์ธ์๋ก ์ค๋ธ์ ํธ ์๊ธฐ ์์ ย ๋๊ฒจ์ค ๋
private Object obj์ ์ธํ๊ณ Start()์์ obj=GetComponent<Object>();๋ย obj=GetComponent<GameObject>(); ํ๋ฉด ์คํฌ๋ฆฝํธ ๊ฐ์ง๊ณ ์๋ ์ค๋ธ์ ํธ ์์์ด์ง๋๋ฐย
public Object obj ์ ์ธํ๊ณ inspector์ ํญ๋ชฉ๋ฌ๊ฑฐ์ ๊ทธ ์ค๋ธ์ ํธ ๋ฃ์ด์ Destroy(obj)ํ๋ฉด ๋ ์ํ๋๋๋ก ๋จ
๊ทผ๋ฐ ๋ญ rigidbody ๊ฐ์๊ฑด Rigidbody rb ์ ์ธํ๊ณ start์์ rb=GetComponent<Rigidbody>(); ํ๋ฉด ์๊ธฐ rigidbody ์จ๋จน์ ์ ์์๋๋ฐ ๋ญ๊ฐ ๋ค๋ฅธ๊ฑฐ์?
์ปดํฌ๋ํธ์ ๋ํ ์ดํด๋ฅผ ๋ค์ ํ์ ์ผํ ๊ฒ ๊ฐ์๋ฐ ๊ฒ์์ค๋ธ์ ํธ๋ ์ปดํฌ๋ํธ๋ฅผ ๋ด๋ ๊ทธ๋ฆ์ด๊ธฐ ๋๋ฌธ์ ์ปดํฌ๋ํธ๋ฅผ ๋ถ๋ฅด๋ getcomponent<>();ํจ์๋ก๋ ํธ์ถ์ด ์๋์ฃ
Destroy(gameobject)์ด๋ ๊ฒ ์ฐ๋ฉด ์ปดํฌ๋ํธ๊ฐ ๋ถ์ด์๋ ๊ฒ์์ค๋ธ์ ํธ๊ฐ ์ฌ๋ผ์ง Destroy(this.gameobject);์ด๋ ๊ฒ ์จ๋ ๋จ this๋ ์๋ต๊ฐ๋ฅํ ๋ถ๋ถ์ด๋ผ์.
๋ค์ ์ ๋ฆฌํ์๋ฉด Gameobject๋ ๋ค๋ฅธ ์ปดํฌ๋ํธ๋ฅผ ๋ด๋ ๊ทธ๋ฆ์ด๊ธฐ๋๋ฌธ์ ์ปดํฌ๋ํธ๊ฐ ์๋
Gameobject๋ฅผ ์ ์ธํด์ ์ฐ๊ณ ์ถ์ผ๋ฉด Gameobject go = this.Gameobject; ๋ผ๊ณ ์ฐ๋ฉด ์์ผ๋ก go๋ฅผ ์ปดํฌ๋ํธ๊ฐ ๋ถ์ด์๋ ๊ฒ์์ค๋ธ์ ํธ๋ก ์ธ ์ ์์