docs.unity3d.com
Search Results for

    Show / Hide Table of Contents

    Class XRReferenceImageLibraryExtensions

    Extension methods for the XRReferenceImageLibrary.

    Inheritance
    object
    XRReferenceImageLibraryExtensions
    Inherited Members
    object.Equals(object)
    object.Equals(object, object)
    object.GetHashCode()
    object.GetType()
    object.MemberwiseClone()
    object.ReferenceEquals(object, object)
    object.ToString()
    Namespace: UnityEditor.XR.ARSubsystems
    Assembly: Unity.XR.ARSubsystems.Editor.dll
    Syntax
    public static class XRReferenceImageLibraryExtensions
    Remarks

    At runtime, XRReferenceImageLibrarys are immutable. These Editor-only extension methods let you build and manipulate image libraries in Editor scripts.

    Methods

    Add(XRReferenceImageLibrary)

    Creates an empty XRReferenceImage and adds it to the library. The new reference image is inserted at the end of the list of reference images.

    Declaration
    public static void Add(this XRReferenceImageLibrary library)
    Parameters
    Type Name Description
    XRReferenceImageLibrary library

    The XRReferenceImageLibrary being extended.

    Exceptions
    Type Condition
    ArgumentNullException

    Thrown if library is null.

    ClearDataStore(XRReferenceImageLibrary)

    Clears the binary data store.

    Declaration
    public static void ClearDataStore(this XRReferenceImageLibrary library)
    Parameters
    Type Name Description
    XRReferenceImageLibrary library

    The XRReferenceImageLibrary being extended.

    Remarks

    Provider-specific binary data can be associated with each XRReferenceImageLibrary (see SetDataForKey(XRReferenceImageLibrary, string, byte[])). This is used to store arbitrarily large blocks of binary data required at runtime -- usually some form of processed image data. This data is regenerated during Player Build, and may be safely discarded otherwise. Use this method to clear the data store to avoid large files in your project.

    RemoveAt(XRReferenceImageLibrary, int)

    Removes the XRReferenceImage at index.

    Declaration
    public static void RemoveAt(this XRReferenceImageLibrary library, int index)
    Parameters
    Type Name Description
    XRReferenceImageLibrary library

    The XRReferenceImageLibrary being extended.

    int index

    The index in the list of images to remove.

    Exceptions
    Type Condition
    ArgumentNullException

    Thrown if library is null.

    IndexOutOfRangeException

    Thrown if index is not between 0 and library.count - 1.

    SetDataForKey(XRReferenceImageLibrary, string, byte[])

    Associate binary data with a string key.

    Declaration
    public static void SetDataForKey(this XRReferenceImageLibrary library, string key, byte[] data)
    Parameters
    Type Name Description
    XRReferenceImageLibrary library

    The XRReferenceImageLibrary being extended.

    string key

    The key which can be used to later retrieve data.

    byte[] data

    The data to associate with key.

    Remarks

    Providers use this to associate provider-specific data with the library. During Player Build (in an IPreprocessBuildWithReport.OnPreprocessBuild callback), the data store is first cleared. Each enabled provider then has an opportunity to add one or more entries for itself.

    Providers can use this to store a serialized version of the image library specific to that provider. Retrieve data with dataStore.

    Exceptions
    Type Condition
    ArgumentNullException

    Thrown if key is null.

    SetName(XRReferenceImageLibrary, int, string)

    Sets the XRReferenceImage.name value on the XRReferenceImage at index. This value is read-only in the Player; it can only be modified in the Editor.

    Declaration
    public static void SetName(this XRReferenceImageLibrary library, int index, string name)
    Parameters
    Type Name Description
    XRReferenceImageLibrary library

    The XRReferenceImageLibrary being extended.

    int index

    The index of the reference image within the library to modify.

    string name
    Exceptions
    Type Condition
    ArgumentNullException

    Thrown if library is null.

    IndexOutOfRangeException

    Thrown if index is not between 0 and library.count - 1.

    SetSize(XRReferenceImageLibrary, int, Vector2)

    Sets the XRReferenceImage.size value on the XRReferenceImage at index. This value is read-only in the Player; it can only be modified in the Editor.

    Declaration
    public static void SetSize(this XRReferenceImageLibrary library, int index, Vector2 size)
    Parameters
    Type Name Description
    XRReferenceImageLibrary library

    The XRReferenceImageLibrary being extended.

    int index

    The index of the reference image within the library to modify.

    Vector2 size
    Exceptions
    Type Condition
    ArgumentNullException

    Thrown if library is null.

    IndexOutOfRangeException

    Thrown if index is not between 0 and library.count - 1.

    SetSpecifySize(XRReferenceImageLibrary, int, bool)

    Sets the XRReferenceImage.specifySize value on the XRReferenceImage at index. This value is read-only in the Player; it can only be modified in the Editor.

    Declaration
    public static void SetSpecifySize(this XRReferenceImageLibrary library, int index, bool specifySize)
    Parameters
    Type Name Description
    XRReferenceImageLibrary library

    The XRReferenceImageLibrary being extended.

    int index

    The index of the reference image within the library to modify.

    bool specifySize

    Whether XRReferenceImage.size is specified.

    Exceptions
    Type Condition
    ArgumentNullException

    Thrown if library is null.

    IndexOutOfRangeException

    Thrown if index is not between 0 and library.count - 1.

    SetTexture(XRReferenceImageLibrary, int, Texture2D, bool)

    Set the texture on the reference image.

    Declaration
    public static void SetTexture(this XRReferenceImageLibrary library, int index, Texture2D texture, bool keepTexture)
    Parameters
    Type Name Description
    XRReferenceImageLibrary library

    The XRReferenceImageLibrary being extended.

    int index

    The reference image index to modify.

    Texture2D texture

    The texture to set.

    bool keepTexture

    Whether to store a strong reference to the texture. If true, the texture will be available in the Player. Otherwise, XRReferenceImage.texture will be set to null.

    Exceptions
    Type Condition
    ArgumentNullException

    Thrown if library is null.

    IndexOutOfRangeException

    Thrown if index is not between 0 and library.count - 1.

    In This Article
    Back to top
    Copyright © 2024 Unity Technologies — Trademarks and terms of use
    • Legal
    • Privacy Policy
    • Cookie Policy
    • Do Not Sell or Share My Personal Information
    • Your Privacy Choices (Cookie Settings)