/// <summary> /// 获取生成预制体对象 /// </summary> /// <param name="sign">对象池标记</param> /// <returns></returns> public GameObject Get(out UnityObjectPoolSign sign) { GameObject go = Get(); sign = go.GetComponent <UnityObjectPoolSign> (); return(go); }
/// <summary> /// 销毁对象委托 /// </summary> private void OnDestroyGO(GameObject go) { //如果为true表示这是已经销毁的GameObject if (go == null || go.Equals(null)) { return; } if (onDestroyObj != null) { onDestroyObj.Invoke(go); } UnityObjectPoolSign sign = go.GetComponent <UnityObjectPoolSign> (); //如果没有标记表示这不是对象池创建的对象 如果是 调用销毁对象 if (sign != null) { sign.DestroySignObject(); } }