본문 바로가기
유니티

유니티) 오브젝트 복제

by Sangchuuu 2023. 4. 28.

 

게임을 만들때 아이템을 획득하거나, 총알을 만들거나 할 때 오브젝트를 복제가 필요하다.

  • 복제를 하기 위해서는 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