reckfellENGINE

XROrigin3D

Игровой origin для отслеживаемого XR-рига.

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

XROrigin3D связывает пространство tracking с игровым миром. Камеру, контроллеры и якоря размещайте непосредственно под ним. Для игрового перемещения двигайте origin или тело-родитель; не исправляйте tracking ручным перемещением камеры.

В runtime первый origin в дереве автоматически становится Current. Выбор другого отключает прежний; отключение или выход активного выбирает другой доступный. Detached-объект не считается активным. Current не инициализирует сеанс и не выбирает активную Camera3D. Активный origin публикует GlobalTransform в XRServer.WorldOrigin.

WorldScale общий для XRServer: изменение через любой origin влияет на остальные. Конечные значения ограничены 0.01…1000. Не меняйте локальный Scale рига для этой цели. Для WorldScale=1 стандартная метрическая модель tracking соответствует одной игровой единице на метр.

Выбор origin, масштаб и мировой трансформ проверены без гарнитуры. Стереовывод, интерполяция между потоками и реальный recenter не проверялись. Полный пример движения: локомоция XR.

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

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

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

Создаёт origin рига. Первое добавление в runtime-дерево делает первый origin активным. Добавьте камеру и отслеживаемые Entity непосредственно под ним; создание origin не инициализирует XR.

Свойства2

CurrentСвойство
# Current
C#
public bool Current { get; set; }

Выбирает активный origin среди находящихся в дереве. Первый добавленный становится активным автоматически. Включение выключает остальные; выключение или выход активного выбирает другой доступный. Вне дерева getter возвращает false в runtime, даже после setter true. Не запускает XR-сеанс и не выбирает камеру.

WorldScaleСвойство
# WorldScale
C#
public float WorldScale { get; set; }

Общий XRServer.WorldScale, не отдельный масштаб этого origin. Изменение через неактивный origin также влияет на остальных. Конечные значения ограничиваются 0.01…1000; передавайте положительный конечный масштаб. Это не Entity3D.Scale: локальный scale рига оставляйте единичным.

Методы4

GetWorldScalefloat
# GetWorldScale
C#
public float GetWorldScale();

Читает общий масштаб XRServer как float. Другой origin видит то же значение; WorldScale не равен локальному Scale.

Возвращает float

Общий масштаб XRServer; не Scale Entity.

IsCurrentbool
# IsCurrent
C#
public bool IsCurrent();

true, если этот origin активен и находится в дереве runtime. Режим редактора возвращает сохранённую настройку; это не проверка наличия устройства.

Возвращает bool

true только для активного origin в дереве runtime.

SetCurrentvoid
# SetCurrent
C#
public void SetCurrent(bool enabled);

Выбирает активный origin среди находящихся в дереве. Первый добавленный становится активным автоматически. Включение выключает остальные; выключение или выход активного выбирает другой доступный. Вне дерева getter возвращает false в runtime, даже после setter true. Не запускает XR-сеанс и не выбирает камеру.

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

Сделать этот origin активным; в runtime результат зависит от нахождения в дереве.

SetWorldScalevoid
# SetWorldScale
C#
public void SetWorldScale(float worldScale);

Общий XRServer.WorldScale, не отдельный масштаб этого origin. Изменение через неактивный origin также влияет на остальных. Конечные значения ограничиваются 0.01…1000; передавайте положительный конечный масштаб. Это не Entity3D.Scale: локальный scale рига оставляйте единичным.

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

Положительный конечный общий масштаб; конечные значения ограничиваются 0.01…1000.

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

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

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

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