Version 3.3.0.1

Odin has a dedicated attribute overview with examples

AssetsOnlyAttribute class

Namespace: Sirenix.OdinInspector
Assembly: Sirenix.OdinInspector.Attributes
[AttributeUsage(AttributeTargets.Assembly | AttributeTargets.Module | AttributeTargets.Class | AttributeTargets.Struct | AttributeTargets.Enum | AttributeTargets.Constructor | AttributeTargets.Method | AttributeTargets.Property | AttributeTargets.Field | AttributeTargets.Event | AttributeTargets.Interface | AttributeTargets.Parameter | AttributeTargets.Delegate | AttributeTargets.ReturnValue | AttributeTargets.GenericParameter | AttributeTargets.All, AllowMultiple = false, Inherited = true)]
[Conditional("UNITY_EDITOR")]
public sealed class AssetsOnlyAttribute : Attribute, _Attribute

AssetsOnly is used on object properties, and restricts the property to project assets, and not scene objects.

Use this when you want to ensure an object is from the project, and not from the scene.

Inheritance
  • System.Object
  • System.Attribute
  • AssetsOnlyAttribute
Example

The following example shows a component with a game object property, that must be a prefab from the project, and not a scene object.

public MyComponent : MonoBehaviour
{
	[AssetsOnly]
	public GameObject MyPrefab;
}

Constructors

AssetsOnlyAttribute()
public AssetsOnlyAttribute()