位掩码,用于控制对象的销毁、保存和在 Inspector 中的可见性。
另请参阅:HideFlags.HideAndDontSave、SA.Object.hideFlags。
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);
}
}
None | 一个普通的可见对象。此为默认值。 |
HideInHierarchy | 该对象不会显示在层级视图中。 |
HideInInspector | 无法在 Inspector 中查看它。 |
DontSaveInEditor | 该对象不保存到 Editor 中的场景。 |
NotEditable | 无法在 Inspector 中编辑该对象。 |
DontSaveInBuild | 构建播放器时不保存该对象。 |
DontUnloadUnusedAsset | Resources.UnloadUnusedAssets 不会卸载该对象。 |
DontSave | 该对象不保存到场景。加载新场景时,也不会销毁它。它是 HideFlags.DontSaveInBuild | HideFlags.DontSaveInEditor | HideFlags.DontUnloadUnusedAsset 的快捷方式。 |
HideAndDontSave | A combination of not shown in the hierarchy, not saved to to scenes and not unloaded by The object will not be unloaded by Resources.UnloadUnusedAssets. |