본문 바로가기

Programming/Unity3D

[앨] 4.MakeTest

이번에는 오브젝트를 생성하는 방법을 설명하겠습니다.

어떤 오브젝트를 어떠한 이벤트로 인해서 생성 시키고 소멸시키는 방법입니다.

보통 게임에서 어떠한 모션이나 행동에 의해서 이펙트나 총알이 생성되고 소멸되고함을 볼수있는데 그러한 것들에 이용할수있겠다.

먼저 지면과 생성할 오브젝트를 만들어주자.

그리고 나서 생성한 오브젝트를 Hierarchy에서 드래그하여 프로젝트 창에 넣어주자.

그리고나서 Hierarchy창에 있는 오브젝트를 지워도되고 안지워도 된다.

안지울꺼면 해당 오브젝트에 Collider와 Mesh Renderer를 체크해지 하면된다.

지우면 해당 오브젝트가 생성될 좌표에 Create Empty를 생성해주면된다.

오늘 할 방법은 지우지 않은체 Collider와 Renderer를 해지해주고 난 다음 하겠슴당.

일단 오브젝트를 project 창으로 이동시켜주고나서 스크립을 만들어 보겠습니다.

앞에서 한듯 Input.GetKey를 이용하여 Space Bar를 누르면 작동하게 하였습니다.

public GameObject  파일명;     을 생성하면

위와같이 Source창이 하나 추가되는데 Project에 옮겨놨던 오브젝트를 드래그해서 넣어주면 되겠습니다.

이오브젝트는 생성할 오브젝트입니다.

Space 키를 입력받으면

Instantiate()함수를 통해 인스턴스 오브젝트를 생성할수있습니다.
여기서 중요한점은 이 오브젝트를 GameObject로 강제 캐스팅해야만 합니다.

함수를 살펴보면 Instantiate(생성할 오브젝트 Name,생성될 오브젝트의 좌표값,생성될 오브젝트의 회전축) 입니다.

Ins.name = "1818";은 생성되고나서 생성된 오브젝트의 임시 이름 입니다.

Destroy( ins,1.0f);는 생성후 파괴할 오브젝트 이름과 몇초뒤에 파괴할것인가를 나타내는 것입니다.

영상을 보시면 오른쪽 Hierarchy창에 오브젝트들이 생성됐다가 소멸되는걸 보실수 있을 것입니다.

 

'Programming > Unity3D' 카테고리의 다른 글

[앨] 5. 간단한 탱크게임 만들기  (0) 2015.01.19
[앨]유니티 단축키  (0) 2015.01.16
[앨] 3.MoveTest  (0) 2015.01.15
[앨] 2.BreakTest  (0) 2015.01.14
[앨] 1.CollisionTest  (0) 2015.01.13