如何修改prefab實體化出來物件的引數
gameObject.GetComponent<>(). 物件
只能修改prefab里面的引數。我想要修改clone體的引數值 而不是不修改prefab的引數值。
該如何解決
uj5u.com熱心網友回復:
你初始化出來的放在物件池 pool 里 也就是個<key,GameObject> 每個物件有key或者id根據key獲取 GB 設定引數
uj5u.com熱心網友回復:
var scr = Instantiate(prefab);
scr.transform.parent = p.transform;
scr.transform.localPosition = Vector3.zero;
scr.transform.localScale = Vector3.one;
var collider = scr.btnFish.gameObject.GetOrAddComponent<BoxCollider2D>();
collider.size = scr.rectTrans.sizeDelta;
collider.offset = scr.rectTrans.sizeDelta / 2 - scr.rectTrans.pivot * scr.rectTrans.sizeDelta;
collider.gameObject.layer = ConstVar.layerButton;
uj5u.com熱心網友回復:
底層:public class Object
{
。。。
public static Object Instantiate(Object original);
。。。
}
Instantiate這個方法有個回傳值,就是你生成的物體。
GameObject obj = Instantiate(prefab);
你修改obj就行了。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/12425.html
標籤:Unity3D
上一篇:求助帖 Unity2017使用Vuforia做AR 打包時遇到的報錯
下一篇:小車速度不正確
