게임을 만들때 아이템을 획득하거나, 총알을 만들거나 할 때 오브젝트를 복제가 필요하다.
- 복제를 하기 위해서는 Instantiate()메서드를 사용한다.
ex) 나는 아래의 두가지를 사용해서 구현을 하였다.
- public static Object Instatntiate(Object original);
단순히 복제 - public static Objecct Instantiate(Object Original, transform parents);
parents의 자식객체로 복제
우선 첫번째로 총을 발사할때 총알을 복제하는 부분에서는
Instantiate(Object original)을 사용하였다.
이렇게 사용하면 단순히 오브젝트를 복제만 한다.

따라서 Hierarchy창에서 어떠한 상속관계없이 Bullet이 생성되는 것을 확인 할 수 있다.

만약 여기서 Instantiate(Object original, transform parents);를 사용한다면
총알이 Gun오브젝트의 자식오브젝트로 복제되어,
Gun의 모든 행동을 같이 상속받아 플레이어가 움직일때 총알도 같이 움직인다.
반대로 총기는 획득을 하면 플레이어가 획득하여 움직일때 플레이어와 함께 움직여야해서,
Instantiate(Object original, transform parents);를 사용하여
플레이어의 자식오브젝트로 만들어 주도록 하였다.


'유니티' 카테고리의 다른 글
유니티) 체력바 구현하기 (0) | 2023.04.28 |
---|---|
유니티) 스프라이트 시트 (0) | 2023.04.28 |
유니티) 2D 런게임 무한배경 구현하기 (0) | 2023.04.28 |
GetAxis() 메서드 (0) | 2023.04.27 |
유니티) 충돌 이벤트 (0) | 2023.04.27 |