Class XRReferenceImageLibrary
A reference image library is a collection of images to search for in the physical environment when image tracking is enabled.
Implements
Inherited Members
Namespace: UnityEngine .XR.ARSubsystems
Assembly: Unity.XR.ARSubsystems.dll
Syntax
[CreateAssetMenu(fileName = "ReferenceImageLibrary", menuName = "XR/Reference Image Library", order = 1001)]
public class XRReferenceImageLibrary : ScriptableObject, IReferenceImageLibrary, ISerializationCallbackReceiver, IEnumerable<XRReferenceImage>, IEnumerable
Remarks
Image libraries are immutable at runtime. To create and manipulate
an image library via Editor scripts, see the extension methods in
UnityEditor.XR.ARSubsystems.XRReferenceImageLibraryExtensions.
If you need to mutate the library at runtime, see Mutable
Properties
this[int]
Get an image by index.
Declaration
public XRReferenceImage this[int index] { get; }
Parameters
Type | Name | Description |
---|---|---|
int | index | The index of the image in the library. Must be between 0 and count - 1. |
Property Value
Type | Description |
---|---|
XRReference |
The XRReference |
Exceptions
Type | Condition |
---|---|
Index |
Thrown if |
count
The number of images in the library.
Declaration
public int count { get; }
Property Value
Type | Description |
---|---|
int |
dataStore
(Read Only) Binary data associated with a string key.
Declaration
public IReadOnlyDictionary<string, byte[]> dataStore { get; }
Property Value
Type | Description |
---|---|
IRead |
Remarks
This is used by providers to associate provider-specific data with the library. During Player Build (in an
IPreprocess
Providers can use this to store a serialized version of the image library specific to that provider. Set data with UnityEditor.XR.ARSubsystems.XRReferenceImageLibraryExtensions.SetDataForKey.
guid
A GUID
associated with this reference library.
The GUID is used to uniquely identify this library at runtime.
Declaration
public Guid guid { get; }
Property Value
Type | Description |
---|---|
Guid |
Methods
GetEnumerator()
Gets an enumerator which can be used to iterate over the reference images in this library.
Declaration
public List<XRReferenceImage>.Enumerator GetEnumerator()
Returns
Type | Description |
---|---|
List<XRReference |
Returns an enumerator which can be used to iterate over the reference images in the library. |
Examples
This examples iterates over the reference images contained in the library.
XRReferenceImageLibrary imageLibrary = ...
foreach (var referenceImage in imageLibrary)
{
Debug.LogFormat("Image guid: {0}", referenceImage.guid);
}
indexOf(XRReferenceImage)
Get the index of referenceImage
in the image library.
Declaration
public int indexOf(XRReferenceImage referenceImage)
Parameters
Type | Name | Description |
---|---|---|
XRReference |
referenceImage | The XRReference |
Returns
Type | Description |
---|---|
int | The zero-based index of the |