2014年12月26日金曜日

【unity C#】Prefab生成時に名前の後ろにつく(clone)を消す方法

UnityでPrefabをInstantiateすると自動的に名前の後ろに(Clone)がつきます。
今回こまったのが他のスクリプトからオブジェクト名を使って指定しているため(Clone)がついていると名前が違うため指定できません。

それではC#での(Clone)を消す方法を紹介します。

using UnityEngine;
using System.Collections;

public class nametest : MonoBehaviour {
public GameObject target1;
void Start()
{
GameObject newTarget1 = (GameObject)Instantiate(target1);
newTarget1.name = target1.name;
}
void Update () {

}
}


あとはInspectorでtarget1にPrefabをセットしたらOKです。
javascriptでの書き方はググればすぐ出てくるのでそちらをどうぞ。


参考サイト
 http://answers.unity3d.com/questions/28114/remove-clone-from-instantiated-gameobjects-name.html