Version: 2020.2
public static bool IsPersistent (Object target);

描述

确定对象是否存储在磁盘中。

通常,预制件、纹理、音频剪辑、动画剪辑、材质等资源均存储在磁盘中。

如果对象位于场景中,则返回 false。通常,它是一个游戏对象或组件, 但它也可能是通过代码创建的一种材质且不是存储在资源中,而是 存储在场景中。

using UnityEditor;
using UnityEngine;

// Tells if an Object is stored on disk or not. public class PersistentInfo : EditorWindow { [MenuItem("Examples/Object on Disk?")] static void CheckPersistent() { bool persistent = EditorUtility.IsPersistent(Selection.activeObject); Debug.Log(Selection.activeObject.name + ": " + (persistent ? "Stored on disk" : "Not on disk")); }

[MenuItem("Examples/Object on Disk?", true)] static bool ValidateCheckPersistent() { return Selection.activeObject != null; } }