XRInterfaceExtension
Базовый класс для расширений интерфейса XR (плагинов).
Базовый класс для расширений интерфейса XR (плагинов).
Внешние плагины интерфейса XR должны наследовать от этого класса.
Объявления сверены с C# SDK 1.0.0. Раскройте имя, чтобы увидеть сигнатуры и описание.
Конструкторы1
XRInterfaceExtensionКонструктор
public XRInterfaceExtension();Методы39
AddBlitvoid
public void AddBlit(Rid renderTarget, Rect2 srcRect, Rect2I dstRect, bool useLayer, uint layer, bool applyLensDistortion, Vector2 eyeCenter, double k1, double k2, double upscale, double aspectRatio);Выводит наши результаты рендеринга на экран, опционально применяя искажение линзы. Это можно вызвать только во время обработки _commit_views.
| Имя | Тип | По умолчанию |
|---|---|---|
renderTarget | Rid | — |
srcRect | Rect2 | — |
dstRect | Rect2I | — |
useLayer | bool | — |
layer | uint | — |
applyLensDistortion | bool | — |
eyeCenter | Vector2 | — |
k1 | double | — |
k2 | double | — |
upscale | double | — |
aspectRatio | double | — |
GetColorTextureRid
public Rid GetColorTexture();Возвращает цветовую текстуру, в которую необходимо преобразовать ее (если применимо).
RidGetDepthTextureRid
public Rid GetDepthTexture();Возвращает текстуру глубины, в которую следует выполнить рендеринг (если применимо).
RidGetRenderTargetTextureRid
public Rid GetRenderTargetTexture(Rid renderTarget);Возвращает допустимый Rid для текстуры, в которую следует отрисовать текущий кадр, если это поддерживается интерфейсом.
| Имя | Тип | По умолчанию |
|---|---|---|
renderTarget | Rid | — |
RidGetVelocityTextureRid
public Rid GetVelocityTexture();Возвращает текстуру скорости, в которую нужно рендерить (если применимо).
#######показание_показание
Rid_EndFramevoid
public virtual void _EndFrame();Вызывается, если интерфейс активен и очереди отправлены.
#######get_anchor_devision_is_
_GetAnchorDetectionIsEnabledbool
public virtual bool _GetAnchorDetectionIsEnabled();Возвращает true, если для этого интерфейса включено обнаружение якорей.
bool_GetCameraFeedIdint
public virtual int _GetCameraFeedId();Возвращает идентификатор канала камеры для CameraFeed, зарегистрированного на CameraServer, который должен отображаться в качестве фона на устройстве с поддержкой дополненной реальности (если применимо).
#########камера_оффсеты
int_GetCameraOffsetsReckfell.Collections.Array<Transform3D>
public virtual Reckfell.Collections.Array<Transform3D> _GetCameraOffsets(StringName trackerName);Получает набор перестановок для каждого просмотра для трекера tracker_name. tracker_name должен иметь в виду XRPositionalTracker Верните пустой массив, если этот интерфейс не отвечает за этот трекер.
| Имя | Тип | По умолчанию |
|---|---|---|
trackerName | StringName | — |
Reckfell.Collections.Array<Transform3D>_GetCameraProjectionsReckfell.Collections.Array<Projection>
public virtual Reckfell.Collections.Array<Projection> _GetCameraProjections(StringName trackerName, double aspect, double zNear, double zFar);Получает набор матриц проекций для каждого вида для трекера tracker_name. tracker_name должен иметь в виду XRPositionalTracker Верните пустой массив, если этот интерфейс не отвечает за этот трекер.
| Имя | Тип | По умолчанию |
|---|---|---|
trackerName | StringName | — |
aspect | double | — |
zNear | double | — |
zFar | double | — |
Reckfell.Collections.Array<Projection>_GetCameraTransformTransform3D
public virtual Transform3D _GetCameraTransform();Возвращает Transform3D, который позиционирует XRCamera3D в мире.
#######потенциал
Transform3D_GetCapabilitiesuint
public virtual uint _GetCapabilities();Возвращает возможности этого интерфейса.
uint_GetColorTextureRid
public virtual Rid _GetColorTexture();Возвращает цветовую текстуру, в которую необходимо преобразовать ее (если применимо).
Rid_GetDepthTextureRid
public virtual Rid _GetDepthTexture();Возвращает текстуру глубины, в которую следует выполнить рендеринг (если применимо).
Rid_GetNameStringName
public virtual StringName _GetName();Возвращает имя этого интерфейса.
StringName_GetPlayAreaVector3[]
public virtual Vector3[] _GetPlayArea();Возвращает Vector3[], представляющий границы игровых зон (если применимо).
######## get_play_area_mode
Vector3[]_GetPlayAreaModeXRInterface.PlayAreaMode
public virtual XRInterface.PlayAreaMode _GetPlayAreaMode();Возвращает режим игровой зоны, который настраивает нашу игровую зону.
#######прогноз_показан_
XRInterface.PlayAreaMode_GetProjectionForViewdouble[] · Устарело
public virtual double[] _GetProjectionForView(uint view, double aspect, double zNear, double zFar);Возвращает матрицу проекции для заданного вида в виде double[].
| Имя | Тип | По умолчанию |
|---|---|---|
view | uint | — |
aspect | double | — |
zNear | double | — |
zFar | double | — |
double[]_GetRenderTargetSizeVector2
public virtual Vector2 _GetRenderTargetSize();Возвращает размер нашей цели рендеринга для этого интерфейса, он переопределяет размер Viewport, отмеченного как xr обзорный порт.
#####get_предлагаемые_позиции имена
Vector2_GetSuggestedPoseNamesstring[]
public virtual string[] _GetSuggestedPoseNames(StringName trackerName);Возвращает string[] с именами поз, настроенными этим интерфейсом. Обратите внимание, что конфигурация пользователя может переопределить этот список.
#####get_ugugposed trecker_ имена
| Имя | Тип | По умолчанию |
|---|---|---|
trackerName | StringName | — |
string[]_GetSuggestedTrackerNamesstring[]
public virtual string[] _GetSuggestedTrackerNames();Возвращает string[] с именами трекеров, настроенными этим интерфейсом. Обратите внимание, что конфигурация пользователя может переопределить этот список.
####_get_system_info
string[]_GetSystemInfoReckfell.Collections.Dictionary
public virtual Reckfell.Collections.Dictionary _GetSystemInfo();Возвращает Reckfell.Collections.Dictionary с системной информацией, связанной с этим интерфейсом.
Reckfell.Collections.Dictionary_GetTrackingStatusXRInterface.TrackingStatus
public virtual XRInterface.TrackingStatus _GetTrackingStatus();Возвращает текущий статус отслеживания.
####_get_transform_for_view
XRInterface.TrackingStatus_GetTransformForViewTransform3D · Устарело
public virtual Transform3D _GetTransformForView(uint view, Transform3D camTransform);Возвращает Transform3D для заданного вида.
#####_get_moday_texture
| Имя | Тип | По умолчанию |
|---|---|---|
view | uint | — |
camTransform | Transform3D | — |
Transform3D_GetVelocityTextureRid
public virtual Rid _GetVelocityTexture();Возвращает текстуру скорости, в которую нужно рендерить (если применимо).
#######показание_показание
Rid_GetViewCountuint
public virtual uint _GetViewCount();Возвращает количество представлений, требуемых для этого интерфейса: 1 для моно, 2 для стереоскопического.
######get_vrs_texture
uint_GetVrsTextureRid
public virtual Rid _GetVrsTexture();Rid_GetVrsTextureFormatXRInterface.VrsTextureFormat
public virtual XRInterface.VrsTextureFormat _GetVrsTextureFormat();Возвращает формат текстуры, возвращаемой XRInterfaceExtension._GetVrsTexture.
XRInterface.VrsTextureFormat_Initializebool
public virtual bool _Initialize();Инициализирует интерфейс, возвращает true в случае успеха.
bool_IsInitializedbool
public virtual bool _IsInitialized();Возвращает true, если этот интерфейс был инициализирован.
bool_PostDrawViewportvoid
public virtual void _PostDrawViewport(Rid renderTarget, Rect2 screenRect);Вызывается после завершения логики отрисовки XR Viewport.
| Имя | Тип | По умолчанию |
|---|---|---|
renderTarget | Rid | — |
screenRect | Rect2 | — |
_PreDrawViewportbool
public virtual bool _PreDrawViewport(Rid renderTarget);Вызывается, если это наш основной XRInterfaceExtension перед тем, как мы начнем обрабатывать Viewport для каждого активного XR Viewport, возвращает true, если этот viewport должен быть отрисован. Интерфейс XR может вернуть false, если пользователь снял гарнитуру и мы можем приостановить отрисовку.
| Имя | Тип | По умолчанию |
|---|---|---|
renderTarget | Rid | — |
bool_PreRendervoid
public virtual void _PreRender();Вызывается, если этот XRInterfaceExtension активен до начала рендеринга. Большинство интерфейсов XR синхронизируют отслеживание в этот момент времени.
_Processvoid
public virtual void _Process();Вызывается, если этот XRInterfaceExtension активен до того, как вызывается наш физический и игровой процесс. Большинство интерфейсов XR обновят свои XRPositionalTracker в этот момент времени.
_SetAnchorDetectionIsEnabledvoid
public virtual void _SetAnchorDetectionIsEnabled(bool enabled);Включает обнаружение якорей на этом интерфейсе, если поддерживается.
| Имя | Тип | По умолчанию |
|---|---|---|
enabled | bool | — |
_SetPlayAreaModebool
public virtual bool _SetPlayAreaMode(XRInterface.PlayAreaMode mode);Установите режим игровой зоны для этого интерфейса.
| Имя | Тип | По умолчанию |
|---|---|---|
mode | XRInterface.PlayAreaMode | — |
bool_SupportsPlayAreaModebool
public virtual bool _SupportsPlayAreaMode(XRInterface.PlayAreaMode mode);Возвращает true, если этот интерфейс поддерживает этот режим игровой зоны.
| Имя | Тип | По умолчанию |
|---|---|---|
mode | XRInterface.PlayAreaMode | — |
bool_TriggerHapticPulsevoid
public virtual void _TriggerHapticPulse(string actionName, StringName trackerName, double frequency, double amplitude, double durationSec, double delaySec);Запускает тактильный импульс, отправляемый на указанный трекер.
| Имя | Тип | По умолчанию |
|---|---|---|
actionName | string | — |
trackerName | StringName | — |
frequency | double | — |
amplitude | double | — |
durationSec | double | — |
delaySec | double | — |
_Uninitializevoid
public virtual void _Uninitialize();Разблокировать интерфейс.