reckfellENGINE

OpenXRSpatialComponentPersistenceList

Данные spatial snapshot: OpenXRSpatialComponentPersistenceList.

На этой странице
class OpenXRSpatialComponentPersistenceListReckfellSharpНаследует OpenXRSpatialComponentData

Контейнер native component data для QuerySnapshot, не tracker, игровая Entity или готовая геометрия. В массиве запроса первым должен идти OpenXRSpatialQueryResultData; индексы остальных компонентов относятся к тем же строкам. Проверяйте поддержку компонента, успешный query и state строки до чтения значений.

SetCapacity выделяет память, но не делает её данными устройства. GetCapacity у query-result показывает длину выделенного массива; она может быть ненулевой без единого запроса. При ошибке/незавершённом запросе не используйте прежнее содержимое. Финальные output counts между двумя проходами отдельно публично не доступны; изменение количества результатов в runtime здесь не проверено.

Buffer getters требуют тот же живой snapshot. Скопируйте нужные массивы/строки до FreeSpatialSnapshot или конца borrowed capability callback. Не освобождайте snapshot повторно; свои контейнеры держите живыми на время использования. Raw poses не являются готовыми GlobalTransform и не применяют WorldOrigin/reference frame/WorldScale автоматически.

Raw XrSpatialPersistenceStateEXT как ulong, без отдельного C# enum в текущем SDK. Требует успешно заполненной persistence строки; не приводите к EntityTrackingState/ResultStatus. Это состояние persistence metadata, а не bool успешности операции. Ошибка index даёт MAX_ENUM sentinel.

Рабочая интеграция. На Windows XR-off выполнены 11 проверок metadata/capacity/virtual dispatch без чтения незаполненной памяти. Реальный snapshot, buffer values, pose/UUID/marker decoding, шлем и export не проверены. Движок не менялся.

Объявления сверены с C# SDK 1.0.0. Раскройте имя, чтобы увидеть сигнатуры и описание.

Конструкторы1

OpenXRSpatialComponentPersistenceListКонструктор
# OpenXRSpatialComponentPersistenceList
C#
public OpenXRSpatialComponentPersistenceList();

Создаёт принадлежащий вызывающему RefCounted контейнер query data с пустыми буферами. Не выполняет QuerySnapshot и не получает данные устройства. Выделение через SetCapacity не заполняет строки. Удерживайте свои контейнеры до окончания native запроса; provider-owned ресурсы не освобождайте.

Методы2

GetPersistentStateulong
# GetPersistentState
C#
public ulong GetPersistentState(long index);

Raw XrSpatialPersistenceStateEXT как ulong, без отдельного C# enum в текущем SDK. Требует успешно заполненной persistence строки; не приводите к EntityTrackingState/ResultStatus. Это состояние persistence metadata, а не bool успешности операции. Ошибка index даёт MAX_ENUM sentinel.

Параметры
ИмяТипПо умолчанию
indexlong—
index

Нулевой index заполненной строки того же успешного snapshot query, не entity ID. Совпадает с index в OpenXRSpatialQueryResultData; одной выделенной capacity недостаточно.

Возвращает ulong

Raw XrSpatialPersistenceStateEXT как ulong, без отдельного C# enum в текущем SDK. Требует успешно заполненной persistence строки; не приводите к EntityTrackingState/ResultStatus. Это состояние persistence metadata, а не bool успешности операции. Ошибка index даёт MAX_ENUM sentinel.

GetPersistentUuidstring
# GetPersistentUuid
C#
public string GetPersistentUuid(long index);

UUID заполненной persistence строки: 32 hex символа без дефисов в нижнем регистре; нулевые bytes дают пустую строку. Используйте для сопоставления содержимого между обнаружениями в поддержанном scope. Getter ничего не сохраняет и не восстанавливает; пустое значение после ошибки index не доказывает успешное удаление.

Параметры
ИмяТипПо умолчанию
indexlong—
index

Нулевой index заполненной строки того же успешного snapshot query, не entity ID. Совпадает с index в OpenXRSpatialQueryResultData; одной выделенной capacity недостаточно.

Возвращает string

UUID заполненной persistence строки: 32 hex символа без дефисов в нижнем регистре; нулевые bytes дают пустую строку. Используйте для сопоставления содержимого между обнаружениями в поддержанном scope. Getter ничего не сохраняет и не восстанавливает; пустое значение после ошибки index не доказывает успешное удаление.

Документация Reckfell EngineНаверх ↑
БЫСТРЫЙ ПЕРЕХОДНачало работыEntity и иерархияC# & .NET 10Сцены и префабы
Руководства и полный API Reckfell K
reckfellENGINE
RECKFELL ACCOUNT

Вход в аккаунт

Войдите в аккаунт Reckfell.

Один аккаунт для всей платформы Reckfell.