Prefab

PrefabÀ̶õ ÇÁ·ÎÁ§Æ®ºä¿¡ ÀúÀåµÈ Àç»ç¿ëÀÌ °¡´ÉÇÑ °ÔÀÓ¿ÀºêÁ§Æ®¸¦ ¸»ÇÑ´Ù.
appleÀ̶ó´Â Prefab ¿ÀºêÁ§Æ®¸¦ ¸¸µé¾î 3°³¸¦ º¹Á¦ Çغ¸ÀÚ. ½ÇÇà È­¸éÀº ´ÙÀ½°ú °°´Ù.
ÅؽºÃÄ ¾Ö´Ï¸ÞÀ̼ÇÀÌ µÇ´Â »ç°ú 3°³¸¦ ¿¬¼ÓÀ¸·Î Ãâ·Â ÇÏ¿´´Ù.

¸ÕÀú Prefab¿¡ ¿ÀºêÁ§Æ®¸¦ µî·ÏÇÏ´Â °ÍºÎÅÍ ¾Ë¾Æ º¸ÀÚ.

<   Prefab ¿ÀºêÁ§Æ® µî·Ï  >

1. Project¿¡ Prefabs Æú´õ »ý¼º

2. Hierarchy( Prefab¿¡ »ç¿ëÇÒ )¿¡ ºó ¿ÀºêÁ§Æ®³ª Create Other ¿ÀºêÁ§Æ®¸¦ ¸¸µç´Ù.

3. ½ºÅ©¸³Æ®³ª ÅؽºÃĵî ÄÄÆ÷³ÍÆ®¸¦ Ãß°¡ÇÑ´Ù.(  AppleBox ½ºÅ©¸³Æ® )

4. Project¿¡¼­ Create / PrefabÀ¸·Î Prefab »ý¼º ÈÄ, Àû´çÇÑ À̸§À¸·Î ¼öÁ¤ÇÑ´Ù.(¿©±â¼­´Â apple)
: PrefabÀ¸·Î »ý¼ºÇÑ°Í°ú Á÷Á¢ ¿ÀºêÁ§Æ² ¸¸µç°ÍÀÇ Â÷ÀÌÁ¡À» ¼ÖÁ÷È÷ ¸ð¸£°ÚÀ½

5. HierarchyÀÇ ¿ÀºêÁ§Æ®¸¦ Prefabs Æú´õÀÇ apple PrefabÀ¸·Î µå·¡±× ÇÑ´Ù. ( apple ¿ÀºêÁ§Æ® µå·¡±× )

6. Hierarchy¿¡¼­ ¿ÀºêÁ§Æ®¸¦ »èÁ¦ÇÑ´Ù.( apple ¿ÀºêÁ§Æ® »èÁ¦ )

ºó ¿ÀºêÁ§Æ®¸¦ »ý¼ºÇÑ´Ù. ÀÌ ¿ÀºêÁ§Æ®´Â ¸Å´ÏÁ®¿Í °°Àº ¿ªÇÒÀ» ÇÒ °ÍÀÌ´Ù.
¸Å´ÏÁ® Ŭ·¡½º¸¦ »ý¼ºÇÏ¿©, ¿ÀºêÁ§Æ®¸¦ º¹Á¦ÇÑ´Ù.

<  Prefab ¿ÀºêÁ§Æ® º¹Á¦  >

1. ¸Å´ÏÁ® Ŭ·¡½º¿¡ GameObject Á¤ÀÇ
public GameObject PrefabApple

2. Prefabs¿¡¼­ »ý¼ºÇÑ GameObject¸¦ ½ºÅ©¸³Æ®ÀÇ PrefabApple·Î µå·¡±×ÇÑ´Ù.

Prefab °ÔÀÓ ¿ÀºêÁ§Æ® ÇÒ´çÀü

 

Prefab °ÔÀÓ ¿ÀºêÁ§Æ® ÇÒ´çÈÄ

3. °ÔÀÓ¿ÀºêÁ§Æ® ÀνºÅϽºÈ­(º¹Á¦)
Instantiate(PrefabApple, new Vector3(0, 5, 0), Quaternion.identity)

Instantiate ¸Þ¼Òµå´Â °ÔÀÓ¿ÀºêÁ§Æ®¸¦ À§Ä¡, ȸÀü°ªÀ¸·Î »ý¼º(Clone)ÇÑ´Ù.

 

Àüü ½ºÅ©¸³Æ®´Â ´ÙÀ½°ú °°´Ù.

public class AppleBox : MonoBehaviour {

    public GameObject PrefabApple;

    private float nextTime = 0.0f;

    private float spawnRate = 0.3f;

 

    // Use this for initialization

    void Start () {

        Instantiate(PrefabApple, new Vector3(0, 5, 0), Quaternion.identity);   

        Instantiate(PrefabApple, new Vector3(0, 0, 0), Quaternion.identity);

        Instantiate(PrefabApple, new Vector3(0, -5, 0), Quaternion.identity);   

    }

 

    // Update is called once per frame

    void Update () {

    }

}

 

< ÇÁ·Î±×·¥¿¡¼­ Á÷Á¢ ¸®¼Ò½º ·Îµù >

Inspector ºä¿¡¼­ ÇÁ¸®ÆÕÀ» µî·ÏÇÏÁö ¾Ê°í ÇÁ·Î±×·¥¿¡¼­ Á÷Á¢ ·ÎµùÇÏ´Â ¹æ¹ýµµ ÀÖ´Ù.

GameObject [] mItemPrefab = new GameObject[2];

 

mItemPrefab[0] = (GameObject)Resources.Load("Prefab/Item0");

mItemPrefab[1] = (GameObject)Resources.Load("Prefab/Item1");

Á÷Á¢ ·Îµù ÇÒ·Á´Â ÆÄÀÏÀº Assets/Resources Æú´õ ¾È¿¡ ÀÖ¾î¾ß ÇÑ´Ù.
Item0.prefab, Item1.prefab ÆÄÀÏÀº Assets/Resources/Prefab Æú´õ¿¡ ÀÖ´Ù.
Load( ) ÇÒ ¶§, È®ÀåÀÚ´Â »ý·« °¡´ÉÇϸç, Prefab »Ó¸¸ ¾Æ´Ï¶ó ´Ù¸¥ ¸®¼Ò½ºµµ Á÷Á¢ ·Îµù ÇÒ ¼ö ÀÖ´Ù.

< ¸®¼Ò½º ·Îµù ÈÄ ¹Ù·Î ·»´õ¸µ >

GameObject mUiEnd;  //Ŭ·¡½º ¸â¹ö º¯¼ö
mUiEnd = Instantiate(Resources.Load("Prefab/uiEnd")) as GameObject

ÇÁ¸®ÆÕÀ» ·Îµù ÈÄ, ¹Ù·Î CloneÇÏ¿© È­¸é¿¡ ·»´õ¸µ ÇÑ´Ù.

< Instantiate Scale >

ÇÁ¸®ÆÕ ¿ÀºêÁ§Æ®ÀÇ ÀνºÅϽº¸¦ ½ºÄÉÀϸµÀº ´ÙÀ½°ú °°ÀÌ ÇÑ´Ù.

GameObject obj;

obj = Instantiate(prefab,loc, Quaternion.identity) as GameObject;

obj.transform.localscale = new Vector3( 2, 2, 1);

ÇÁ·ÎÁ§Æ® : webTest.zip