Up to date

This page is up to date for Godot 4.2. If you still find outdated information, please open an issue.

MobileVRInterface

继承: XRInterface < RefCounted < Object

通用移动 VR 实现。

描述

这是一个通用的移动 VR 实现,你需要提供有关所用手机和 HMD 的详细信息。它不依赖于任何现有框架。这是我们拥有的最基本的接口。为了获得最佳效果,你需要一部带有陀螺仪和加速度计的手机。

请注意,即使没有位置跟踪,相机也会假定头戴设备处于 1.85 米的高度。可以通过设置 eye_height 来更改该设置。

可以按如下方式初始化该接口:

var interface = XRServer.find_interface("Native mobile")
if interface and interface.initialize():
    get_viewport().xr = true

属性

float

display_to_lens

4.0

float

display_width

14.5

float

eye_height

1.85

float

iod

6.0

float

k1

0.215

float

k2

0.215

float

oversample

1.5

PlayAreaMode

xr_play_area_mode

1 (overrides XRInterface)


属性说明

float display_to_lens = 4.0

  • void set_display_to_lens ( float value )

  • float get_display_to_lens ( )

显示器与设备内部镜片之间的距离,单位为厘米。


float display_width = 14.5

  • void set_display_width ( float value )

  • float get_display_width ( )

显示器的宽度,单位为厘米。


float eye_height = 1.85

  • void set_eye_height ( float value )

  • float get_eye_height ( )

相机相对于地面所处的高度(即相对于 XROrigin3D 节点)。


float iod = 6.0

眼间距离,也称为瞳孔间距离。左眼和右眼瞳孔之间的距离。


float k1 = 0.215

k1 镜头因子是定义所使用镜头强度的两个常量之一,并直接影响镜头失真效果。


float k2 = 0.215

k2 镜头因子,见 k1。


float oversample = 1.5

  • void set_oversample ( float value )

  • float get_oversample ( )

过采样设置。由于镜头失真,我们必须以比屏幕自然分辨率更高的质量渲染我们的缓冲区。介于 1.5 和 2.0 之间的值通常可以提供良好的结果,但会牺牲性能。