GameObject 동적으로 삭제 하기
유니티에서 게임실행중에 GameObject 를 제거해야 할때가 있다.
예를 들면 총알이 몬스터에 맞았을 경우 총알을 제거해 줘야 한다.
또 몬스터의 HP가 0보다 작아지면 몬스터 또한 제거해 줘야 한다.
Destroy (Object obj, t : float time= 0.0F) 함수를 이용하면 쉽게 제거할 수 있다.
obj 는 삭제할 대상 오브젝트 이며, time 은 Destroy 함수 호출후 몇초후에 삭제할지 결정한다.
// 게임 오브젝트를 제거한다.
Destroy (gameObject);
// 게임오브젝트로부터 현재 스크립트를 제거 한다.
Destroy (this);
// 게임오브젝트로부터 강체를 제거합니다.
Destroy (rigidbody);
// 오브젝트 로드 후 5초 안에 게임오브젝트를 죽입니다.Kills the game object in 5 seconds after loading the object
Destroy (gameObject, 5);
// 사용자가 Ctrl키를 누를때, 스크립트를 제거 할것입니다.
// 게임오브젝트의 FooScript라는 이름의
function Update () {
if (Input.GetButton ("Fire1") && GetComponent (FooScript))
Destroy (GetComponent (FooScript));
}
참고
http://www.devkorea.co.kr/reference/Documentation/ScriptReference/Object.Destroy.html
'Unity > Tips 13.05.06' 카테고리의 다른 글
[ 유니티(Unity 3D) 팁 ] StreamReader 객체 사용후 파일 입출력 안되는 문제 해결법 (0) | 2013.05.19 |
---|---|
[ 유니티(Unity 3D) 팁 ] 파일 사이즈 체크 하기 (0) | 2013.05.19 |
[ 유니티(Unity 3D) 팁 ] List 사용법 (0) | 2013.05.19 |
[ 유니티(Unity 3D) 팁 ] 커스텀 클래스 멤버를 인스펙터에 노출 시키기 (0) | 2013.05.19 |
[ 유니티(Unity 3D) 팁 ] GameObject 동적으로 생성 하기 (0) | 2013.05.19 |