1. 通过 public Object prefab 来实例化
测试
using UnityEngine;
using System.Collections;
using CodeStage.AdvancedFPSCounter;
public class Test : MonoBehaviour {
public Object prefab;
private GameObject go;
// Use this for initialization
void Start () {
go = GameObject.Instantiate(prefab) as GameObject;
}
void OnGUI()
{
if (GUILayout.Button("xxxxxxxxx"))
{
GameObject.Destroy(go);
go = null;
Resources.UnloadUnusedAssets();
System.GC.Collect();
}
}
void OnDestroy()
{
Resources.UnloadUnusedAssets();
System.GC.Collect();
}
}
结论:
当删除点击按钮,删除go的时候,内存没有任何变化。
当删除点击按钮,删除go的时候,接着删除挂上Test.cs的go的时候,内存有变化。
当删除点击按钮,删除go的时候,同时把prefab = null,内存有变化。
理解&