반응형

1. 시험환경

    · 윈도우

    · 유니티(Unity) 6.2

 

2. 목적

    · Prefab Object를 생성하는 방법을 알아보자.

    · 시간 경과에 따라 Prefab이 나타나고 사라지는 구성을 만들어 보자.

 

3. 적용

    ① 신규 프로젝트를 생성한다.

        - Template: Universal 3D

        - Project name: chap09_prefabSpawnDestroy

        - Location: C:\workspace-unity

 

    ② "Hierarchy 창" → "마우스 우클릭 팝업 메뉴" → "3D Object" → "Sphere" 객체를 생성한다.

        - Object 이름: Enemy

 

    ③ "Project 창" → "Create" → "Material" 생성 후 색상을 빨간색으로 설정한다.

 

    ④ Material을 Enemy 객체에 임포트 시킨다.

 

    ⑤ Enemy 객체를 Assets/Prefabs 폴더로 드래그&드롭 하여 Prefab 객체로 만든 후 삭제한다.

 

    ⑥ "Hierarchy 창" → "마우스 우클릭 팝업 메뉴" → "Create Empty"를 생성한다.

        - 이름 : EnemySpawner


 

    ⑦ 시간에 따라 Object가 생성 및 삭제되는 스크립트를 작성한다.

        - 경로: Assets/Scripts/

        - 파일명: EnemySpawner.cs

  using UnityEngine;

  public class EnemySpawner : MonoBehaviour
  {
      public GameObject enemyPrefab;
      public float spawnInterval = 3f;
      public float destroyDelay = 5f;

      private float timer;

      void Update()
      {
          timer += Time.deltaTime;

          if (timer >= spawnInterval)
          {
              SpawnEnemy();
              timer = 0f;
          }
      }

      void SpawnEnemy()
      {
          Vector3 spawnPosition = new Vector3(Random.Range(-5f, 5f), 0.5f, Random.Range(-5f, 5f));
          GameObject enemy = Instantiate(enemyPrefab, spawnPosition, Quaternion.identity);
          Destroy(enemy, destroyDelay);
      }
  }

 

    ⑧ EnemySpawner 객체에 스크립트 파일을 임포트 시킨다.

 

    ⑨ Prefab을 Enemy Prefab 변수에 초기화 한다.

 

4. 결과

    · "Play" 버튼을 실행하면 Prefab 객체가 나타났다가 사라지는 모습을 확인할 수 있다.

 

반응형

+ Recent posts