mirror of
https://github.com/godotengine/godot-docs-l10n.git
synced 2026-01-04 10:09:56 +03:00
251 lines
15 KiB
ReStructuredText
251 lines
15 KiB
ReStructuredText
:github_url: hide
|
||
|
||
.. _class_MobileVRInterface:
|
||
|
||
MobileVRInterface
|
||
=================
|
||
|
||
**Наследует:** :ref:`XRInterface<class_XRInterface>` **<** :ref:`RefCounted<class_RefCounted>` **<** :ref:`Object<class_Object>`
|
||
|
||
Стандартная реализация мобильной виртуальной реальности.
|
||
|
||
.. rst-class:: classref-introduction-group
|
||
|
||
Описание
|
||
----------------
|
||
|
||
Это общая реализация мобильной VR, где вам нужно предоставить данные о телефоне и используемом HMD. Она не опирается на какой-либо существующий фреймворк. Это самый базовый интерфейс, который у нас есть. Для наилучшего эффекта вам нужен мобильный телефон с гироскопом и акселерометром.
|
||
|
||
Обратите внимание, что даже если нет позиционного отслеживания, камера будет считать, что гарнитура находится на высоте 1,85 метра. Вы можете изменить это, установив :ref:`eye_height<class_MobileVRInterface_property_eye_height>`.
|
||
|
||
Инициализировать этот интерфейс можно следующим образом:
|
||
|
||
::
|
||
|
||
var interface = XRServer.find_interface("Native mobile")
|
||
if interface and interface.initialize():
|
||
get_viewport().use_xr = true
|
||
|
||
\ **Примечание:** Для Android должны быть включены :ref:`ProjectSettings.input_devices/sensors/enable_accelerometer<class_ProjectSettings_property_input_devices/sensors/enable_accelerometer>`, :ref:`ProjectSettings.input_devices/sensors/enable_gravity<class_ProjectSettings_property_input_devices/sensors/enable_gravity>`, :ref:`ProjectSettings.input_devices/sensors/enable_gyroscope<class_ProjectSettings_property_input_devices/sensors/enable_gyroscope>` и :ref:`ProjectSettings.input_devices/sensors/enable_magnetometer<class_ProjectSettings_property_input_devices/sensors/enable_magnetometer>`.
|
||
|
||
.. rst-class:: classref-reftable-group
|
||
|
||
Свойства
|
||
----------------
|
||
|
||
.. table::
|
||
:widths: auto
|
||
|
||
+----------------------------------------------------+--------------------------------------------------------------------------+------------------------------------------------------------------------------------+
|
||
| :ref:`float<class_float>` | :ref:`display_to_lens<class_MobileVRInterface_property_display_to_lens>` | ``4.0`` |
|
||
+----------------------------------------------------+--------------------------------------------------------------------------+------------------------------------------------------------------------------------+
|
||
| :ref:`float<class_float>` | :ref:`display_width<class_MobileVRInterface_property_display_width>` | ``14.5`` |
|
||
+----------------------------------------------------+--------------------------------------------------------------------------+------------------------------------------------------------------------------------+
|
||
| :ref:`float<class_float>` | :ref:`eye_height<class_MobileVRInterface_property_eye_height>` | ``1.85`` |
|
||
+----------------------------------------------------+--------------------------------------------------------------------------+------------------------------------------------------------------------------------+
|
||
| :ref:`float<class_float>` | :ref:`iod<class_MobileVRInterface_property_iod>` | ``6.0`` |
|
||
+----------------------------------------------------+--------------------------------------------------------------------------+------------------------------------------------------------------------------------+
|
||
| :ref:`float<class_float>` | :ref:`k1<class_MobileVRInterface_property_k1>` | ``0.215`` |
|
||
+----------------------------------------------------+--------------------------------------------------------------------------+------------------------------------------------------------------------------------+
|
||
| :ref:`float<class_float>` | :ref:`k2<class_MobileVRInterface_property_k2>` | ``0.215`` |
|
||
+----------------------------------------------------+--------------------------------------------------------------------------+------------------------------------------------------------------------------------+
|
||
| :ref:`Rect2<class_Rect2>` | :ref:`offset_rect<class_MobileVRInterface_property_offset_rect>` | ``Rect2(0, 0, 1, 1)`` |
|
||
+----------------------------------------------------+--------------------------------------------------------------------------+------------------------------------------------------------------------------------+
|
||
| :ref:`float<class_float>` | :ref:`oversample<class_MobileVRInterface_property_oversample>` | ``1.5`` |
|
||
+----------------------------------------------------+--------------------------------------------------------------------------+------------------------------------------------------------------------------------+
|
||
| :ref:`float<class_float>` | :ref:`vrs_min_radius<class_MobileVRInterface_property_vrs_min_radius>` | ``20.0`` |
|
||
+----------------------------------------------------+--------------------------------------------------------------------------+------------------------------------------------------------------------------------+
|
||
| :ref:`float<class_float>` | :ref:`vrs_strength<class_MobileVRInterface_property_vrs_strength>` | ``1.0`` |
|
||
+----------------------------------------------------+--------------------------------------------------------------------------+------------------------------------------------------------------------------------+
|
||
| :ref:`PlayAreaMode<enum_XRInterface_PlayAreaMode>` | xr_play_area_mode | ``1`` (overrides :ref:`XRInterface<class_XRInterface_property_xr_play_area_mode>`) |
|
||
+----------------------------------------------------+--------------------------------------------------------------------------+------------------------------------------------------------------------------------+
|
||
|
||
.. rst-class:: classref-section-separator
|
||
|
||
----
|
||
|
||
.. rst-class:: classref-descriptions-group
|
||
|
||
Описания свойств
|
||
--------------------------------
|
||
|
||
.. _class_MobileVRInterface_property_display_to_lens:
|
||
|
||
.. rst-class:: classref-property
|
||
|
||
:ref:`float<class_float>` **display_to_lens** = ``4.0`` :ref:`🔗<class_MobileVRInterface_property_display_to_lens>`
|
||
|
||
.. rst-class:: classref-property-setget
|
||
|
||
- |void| **set_display_to_lens**\ (\ value\: :ref:`float<class_float>`\ )
|
||
- :ref:`float<class_float>` **get_display_to_lens**\ (\ )
|
||
|
||
Расстояние между дисплеем и линзами внутри устройства в сантиметрах.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_MobileVRInterface_property_display_width:
|
||
|
||
.. rst-class:: classref-property
|
||
|
||
:ref:`float<class_float>` **display_width** = ``14.5`` :ref:`🔗<class_MobileVRInterface_property_display_width>`
|
||
|
||
.. rst-class:: classref-property-setget
|
||
|
||
- |void| **set_display_width**\ (\ value\: :ref:`float<class_float>`\ )
|
||
- :ref:`float<class_float>` **get_display_width**\ (\ )
|
||
|
||
Ширина дисплея в сантиметрах.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_MobileVRInterface_property_eye_height:
|
||
|
||
.. rst-class:: classref-property
|
||
|
||
:ref:`float<class_float>` **eye_height** = ``1.85`` :ref:`🔗<class_MobileVRInterface_property_eye_height>`
|
||
|
||
.. rst-class:: classref-property-setget
|
||
|
||
- |void| **set_eye_height**\ (\ value\: :ref:`float<class_float>`\ )
|
||
- :ref:`float<class_float>` **get_eye_height**\ (\ )
|
||
|
||
Высота, на которой расположена камера по отношению к земле (т. е. узел :ref:`XROrigin3D<class_XROrigin3D>`).
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_MobileVRInterface_property_iod:
|
||
|
||
.. rst-class:: classref-property
|
||
|
||
:ref:`float<class_float>` **iod** = ``6.0`` :ref:`🔗<class_MobileVRInterface_property_iod>`
|
||
|
||
.. rst-class:: classref-property-setget
|
||
|
||
- |void| **set_iod**\ (\ value\: :ref:`float<class_float>`\ )
|
||
- :ref:`float<class_float>` **get_iod**\ (\ )
|
||
|
||
Межзрачковое расстояние, также известное как межзрачковое расстояние. Расстояние между зрачками левого и правого глаза.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_MobileVRInterface_property_k1:
|
||
|
||
.. rst-class:: classref-property
|
||
|
||
:ref:`float<class_float>` **k1** = ``0.215`` :ref:`🔗<class_MobileVRInterface_property_k1>`
|
||
|
||
.. rst-class:: classref-property-setget
|
||
|
||
- |void| **set_k1**\ (\ value\: :ref:`float<class_float>`\ )
|
||
- :ref:`float<class_float>` **get_k1**\ (\ )
|
||
|
||
Коэффициент линзы k1 — одна из двух констант, определяющих силу используемой линзы и напрямую влияющих на эффект искажения линзы.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_MobileVRInterface_property_k2:
|
||
|
||
.. rst-class:: classref-property
|
||
|
||
:ref:`float<class_float>` **k2** = ``0.215`` :ref:`🔗<class_MobileVRInterface_property_k2>`
|
||
|
||
.. rst-class:: classref-property-setget
|
||
|
||
- |void| **set_k2**\ (\ value\: :ref:`float<class_float>`\ )
|
||
- :ref:`float<class_float>` **get_k2**\ (\ )
|
||
|
||
Коэффициент линзы k2, см. k1.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_MobileVRInterface_property_offset_rect:
|
||
|
||
.. rst-class:: classref-property
|
||
|
||
:ref:`Rect2<class_Rect2>` **offset_rect** = ``Rect2(0, 0, 1, 1)`` :ref:`🔗<class_MobileVRInterface_property_offset_rect>`
|
||
|
||
.. rst-class:: classref-property-setget
|
||
|
||
- |void| **set_offset_rect**\ (\ value\: :ref:`Rect2<class_Rect2>`\ )
|
||
- :ref:`Rect2<class_Rect2>` **get_offset_rect**\ (\ )
|
||
|
||
Установите смещение прямоугольника относительно области, которая визуализируется. Длина 1 представляет всю область визуализации на этой оси.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_MobileVRInterface_property_oversample:
|
||
|
||
.. rst-class:: classref-property
|
||
|
||
:ref:`float<class_float>` **oversample** = ``1.5`` :ref:`🔗<class_MobileVRInterface_property_oversample>`
|
||
|
||
.. rst-class:: classref-property-setget
|
||
|
||
- |void| **set_oversample**\ (\ value\: :ref:`float<class_float>`\ )
|
||
- :ref:`float<class_float>` **get_oversample**\ (\ )
|
||
|
||
Настройка передискретизации. Из-за искажения объектива нам приходится визуализировать наши буферы с более высоким разрешением, чем может изначально обработать экран. Значение между 1,5 и 2,0 часто дает хорошие результаты, но за счет производительности.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_MobileVRInterface_property_vrs_min_radius:
|
||
|
||
.. rst-class:: classref-property
|
||
|
||
:ref:`float<class_float>` **vrs_min_radius** = ``20.0`` :ref:`🔗<class_MobileVRInterface_property_vrs_min_radius>`
|
||
|
||
.. rst-class:: classref-property-setget
|
||
|
||
- |void| **set_vrs_min_radius**\ (\ value\: :ref:`float<class_float>`\ )
|
||
- :ref:`float<class_float>` **get_vrs_min_radius**\ (\ )
|
||
|
||
Минимальный радиус вокруг точки фокусировки, где гарантируется полное качество, если VRS используется как процент от размера экрана.
|
||
|
||
\ **Примечание:** Только для Mobile и Forward+ рендереров. Требуется, чтобы :ref:`Viewport.vrs_mode<class_Viewport_property_vrs_mode>` был установлен на :ref:`Viewport.VRS_XR<class_Viewport_constant_VRS_XR>`.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_MobileVRInterface_property_vrs_strength:
|
||
|
||
.. rst-class:: classref-property
|
||
|
||
:ref:`float<class_float>` **vrs_strength** = ``1.0`` :ref:`🔗<class_MobileVRInterface_property_vrs_strength>`
|
||
|
||
.. rst-class:: classref-property-setget
|
||
|
||
- |void| **set_vrs_strength**\ (\ value\: :ref:`float<class_float>`\ )
|
||
- :ref:`float<class_float>` **get_vrs_strength**\ (\ )
|
||
|
||
Сила, используемая для расчета карты плотности VRS. Чем больше это значение, тем заметнее VRS. Это повышает производительность за счет качества.
|
||
|
||
\ **Примечание:** Только для Mobile и Forward+ рендереров. Требуется, чтобы :ref:`Viewport.vrs_mode<class_Viewport_property_vrs_mode>` был установлен на :ref:`Viewport.VRS_XR<class_Viewport_constant_VRS_XR>`.
|
||
|
||
.. |virtual| replace:: :abbr:`virtual (Этот метод обычно должен быть переопределен пользователем, чтобы иметь какой-либо эффект.)`
|
||
.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)`
|
||
.. |const| replace:: :abbr:`const (Этот метод не имеет побочных эффектов. Он не изменяет ни одну из переменных-членов экземпляра.)`
|
||
.. |vararg| replace:: :abbr:`vararg (Этот метод принимает любое количество аргументов после описанных здесь.)`
|
||
.. |constructor| replace:: :abbr:`constructor (Этот метод используется для создания типа.)`
|
||
.. |static| replace:: :abbr:`static (Этот метод не нуждается в вызове экземпляра, поэтому его можно вызвать напрямую, используя имя класса.)`
|
||
.. |operator| replace:: :abbr:`operator (Этот метод описывает допустимый оператор для использования с этим типом в качестве левого операнда.)`
|
||
.. |bitfield| replace:: :abbr:`BitField (Это значение является целым числом, составленным как битовая маска следующих флагов.)`
|
||
.. |void| replace:: :abbr:`void (Нет возвращаемого значения.)`
|