The GameObject is not shown in the Hierarchy, not saved to Scenes, and not unloaded by Resources.UnloadUnusedAssets.
这通常用于由脚本创建并且完全由脚本控制的 GameObject。
using UnityEngine; using System.Collections;
public class ExampleClass : MonoBehaviour { // Creates a Material that is explicitly created & destroyed by the component. // Resources.UnloadUnusedAssets will not unload it, and it will not be editable by the Inspector. private Material ownedMaterial; void OnEnable() { ownedMaterial = new Material(Shader.Find("Diffuse")); ownedMaterial.hideFlags = HideFlags.HideAndDontSave; GetComponent<Renderer>().sharedMaterial = ownedMaterial; }
// Objects created as hide and don't save must be explicitly destroyed by the owner of the object. void OnDisable() { DestroyImmediate(ownedMaterial); } }