.. _7 API接口函数一览: 7 API接口函数一览 =============================== 7.1 HMD(头戴显示器)通用函数库 ---------------------------------------------------------- SDK支持下图中红点标记的HMD通用函数,详细用法说明请参考UE4 `官方文档`_ 。 .. _官方文档: https://docs.unrealengine.com/4.26/en-US/BlueprintAPI/Input/HeadMountedDisplay/ .. image:: _static/7.1.1.png 图7.1 SDK已支持通用函数 其中: 1. Reset Orientation and Position节点,仅支持重置正方向的功能,函数节点中的Yaw参数值不起作用。 2. 使用Get HMDWorn State,需要在项目设置PicoXR Settings菜单里,勾选“Enable PSensor"选项。 7.2 HMD(头戴显示器)专用函数库 ---------------------------------------------------------- SDK以蓝图节点的形式提供了相应的API,在事件图表中单击鼠标右键,进入PXR项目,在PXRHMD子项中,即可看到这些API,如下图所示。 .. image:: _static/7.2.0.png 图7.2 HMD专用函数库 **PXR Get Current Orientation** ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以获取头戴当前的姿态,返回值用四元数表示。 **蓝图**: .. image:: _static/7.2.1.png **输入**:无 **输出**:无 **返回值**: - Quat(四元数)类型: - 表示当前头戴姿态 **PXR Get Device Model** ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以获取当前的头戴类型,例如“Pico Neo 3”。 **蓝图**: .. image:: _static/7.2.4.png **输入**:无 **输出**:无 **返回值**: - FString类型: - 当前设备类型 PXR Get Field Of View ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以获取头戴的水平方向FOV和垂直方向FOV。 **蓝图**: .. image:: _static/7.2.5.png **输入**:无 **输出**: float类型: - HFOVIn Degrees:水平方向的FOV,单位为角度 - VFOVIn Degrees:垂直方向的FOV,单位为角度 **返回值**: bool类型: - true:获取成功 - false:获取失败 PXR Does Support Positional Tracking ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以判断头戴是否支持位置追踪,支持位置追踪则为6DOF模式,不支持位置追踪则为3DOF模式。 **蓝图**: .. image:: _static/7.2.6.png **输入**:无 **输出**:无 **返回值**: bool类型: - true:支持位置追踪(6DOF) - false:不支持位置追踪(3DOF) PXR Get Current Display Frequency ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以获取当前屏幕刷新率,目前支持72hz、90hz、120hz三种屏幕刷新率,默认为72hz,90hz、120hz等模式需要在设置中的LAB标签栏下,选择对应模式。 **蓝图**: .. image:: _static/7.2.7.png **输入**:无 **输出**:无 **返回值**: Float类型: - 0:获取刷新率失败 - 72:72hz模式 - 90:90hz模式 - 120:120hz模式 PXR Get HMDWorn State ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以获取当前头戴显示器的状态,包含了穿戴(Worn)、未穿戴(NotWorn)、Unknown(未知)三种状态。需要在项目设置PicoXR Settings菜单里,勾选“Enable PSensor"选项,若未勾选,则会返回Unknown状态。 **蓝图**: .. image:: _static/7.2.8.png **输入**:无 **输出**:无 **返回值**: 枚举类型: - EHMDWornState: - Unknown:Enable PSensor选项没有打开,或者PSensor检测失败。 - Worn:Enable PSensor选项打开,并且头戴显示器的PSensor传感器前方有遮挡。 - NotWorn:Enable PSensor选项打开,并且头戴显示器的PSensor传感器前方没有遮挡。 PXR Reset HMDSensor ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以校准头戴的位置和方向,与Reset Orientation and Position接口的作用类似,将玩家的方向重置为初始正方向,位置重置为初始位置。 **蓝图**: .. image:: _static/7.2.9.png **输入**:无 **输出**:无 **返回值**: bool类型: - true:校准成功 - false:校准失败 PXR Set CPUAndGPULevels ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以设置头戴上 CPU 和 GPU 的时钟频率,CPU 和 GPU 级别可以设置为 1、2、3、4、5五个预设级别。值为 1 会导致 CPU 或 GPU 以最慢的时钟速率运行,这是最节能的。从1-5会使 CPU 或 GPU 时钟速率逐渐加快从而提高性能,但是会产生更多的热量并使电池电量消耗的更快。 **蓝图**: .. image:: _static/7.2.10.png **输入**: int类型: - CPU Level: CPU时钟频率设置,允许设置int型: 1 to 5。 - GPU Level: GPU时钟频率设置,允许设置int型: 1 to 5。 **输出**:无 **返回值**:无 PXR Get IPD ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以获取当前设备的瞳距。 **蓝图**: .. image:: _static/7.2.26.png **输入**:无 **输出**:无 **返回值**: - Float类型: - 当前瞳距 PXR IPDChangedDelegates ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以绑定瞳距改变回调事件,通过绑定回调事件,获取新的瞳距。 **蓝图**: .. image:: _static/7.2.27.png **输入**: - delegate类型: - On Pico XRIPDChanged:绑定瞳距改变回调事件,如下图所示: .. image:: _static/7.2.1.1.1.png - 回调事件参数: - float类型: - Ipd:当前瞳距数值 **输出**:无 **返回值**:无 PXR Get Event Manager ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以获取当前回调事件管理器,通过事件管理器可以为委托绑定回调事件,当前支持绑定手柄连接委托(Device Connect Changed Delegate),IPD变化委托(Ipd Changed Delegate),长按Home键委托(Long Home Pressed Delegate),刷新率变化委托(Refresh Rate Changed Delegate),恢复(Resume Delegate)委托。 **蓝图**: .. image:: _static/7.2.28.png **输入**:无 **输出**:无 **返回值**: 对事件管理器单例的引用。 **各个委托的绑定方法如下:** Device Connect Changed Delegate ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该委托可以绑定手柄连接状态变化事件,并且通过参数获取变化状态,例如Handness为0,State为1,则表示左手柄连接。 **蓝图** .. image:: _static/7.2.1.1.2.png 回调事件参数: - int类型: - Handness:手柄标识: - 0:左手柄 - 1:右手柄 - State连接状态: - 0:断开连接 - 1:建立连接 Ipd Changed Delegate ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该委托可以绑定IPD变化事件,并且通过回调事件参数获取变化后的瞳距数值。 **蓝图** .. image:: _static/7.2.1.1.3.png 回调事件参数: - float类型: - New Ipd:新瞳距 Long Home Pressed Delegate ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该委托可以绑定长按Home键事件。 **蓝图** .. image:: _static/7.2.1.1.4.png Refresh Rate Changed Delegate ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该委托可以绑定刷新率改变事件,并且通过回调事件参数获取变化后的新刷新率。 **蓝图** .. image:: _static/7.2.1.1.5.png 回调事件参数: - float类型: - New Rate:新刷新率 Resume Delegate ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该委托可以绑定恢复事件,例如当按home键从应用返回主界面,再按home返回应用时,将会触发该回调事件。 .. image:: _static/7.2.1.1.5.png PXR Set See Through Background ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以设置使用相机画面做背景。注:当前该接口在Unreal 4.24、4.25版本中不可用,4.26、4.27版本中可用。 **蓝图**: .. image:: _static/7.2.20.png **输入**: bool类型: - true:启用相机画面为背景 - false:关闭相机画面为背景 **输出**:无 **返回值**: int类型: - 0:设置成功 - -1:设置失败 PXR Get Dialog State ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以获取安全区的状态。 **蓝图**: .. image:: _static/7.2.22.png **输入**:无 **输出**:无 **返回值**: 枚举类型: - State(EPicoXRBoundaryState): - GobackDialog:头戴离开安全区时显示,回到安全区内消失 - ToofarDialog:头戴离开安全区超过了3米 - LostDialog:6dof丢失无原因 - LostNoReason:6dof丢失无原因 - LostCamera:摄像头校准参数错误 - LostHighLight:环境过亮 - LostLowLight:环境过暗 - LostLowFeatureCount:环境特征点少 - LostReLocation:正在恢复定位追踪 - LostInitialization:正在初始化 - LostNoCamera:摄像头数据错误 - LostNoIMU:IMU数据错误 - LostIMUJitter:IMU数据抖动 - LostUnknown:未知原因 - NothingDialog:定位追踪关闭时,无Dialog 7.3 Input(输入)相关函数库 --------------------------------------------------------------------------------------- SDK以蓝图节点的形式提供了相应的API,在事件图表中单击鼠标右键,进入PXR项目,在PXRInput子项中,即可看到这些API,如下图所示: .. image:: _static/7.3.1.1.1.1.png 图 7.3 Input相关函数库 PXR Get Controller Device ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以获取当前已连接手柄的类型。 **蓝图** .. image:: _static/7.3.1.1.1.2.png **输入**: 无 **输出**: 枚举类型: - Controller Type(EPicoXRControllerDeviceType): - UnKnown:未知控制器 - Neo3:Pico Neo3控制器 **返回值**:无 PXR Get Controller Power ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以获取当前手柄的电量。 **蓝图** .. image:: _static/7.3.1.1.1.3.png **输入**: 枚举类型: - Controller Type(EPicoXRControllerType): - Pico Neo LeftHand:左手柄 - Pico Neo RightHand:右手柄 **输出**: int类型: - Power:指定手柄的手柄电量(范围:1-5) **返回值**: bool类型: - true:获取成功 - false:获取失败 PXR Get Controller Connection State ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以获取指定手柄的连接状态。 **蓝图** .. image:: _static/7.3.1.1.1.4.png **输入**: - 枚举类型: - Controller Type(EPicoXRControllerType): - Pico Neo LeftHand:左手柄 - Pico Neo RightHand:右手柄 **输出**: bool类型: - true:已连接 - false:未连接 **返回值**: bool类型: - true:获取成功 - false:获取失败 PXR Vibrate Controller ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以控制手柄震动。 **蓝图** .. image:: _static/7.3.1.1.1.5.png **输入**: 枚举类型: - Controller Type(EPicoXRControllerType): - Pico Neo LeftHand:左手柄 - Pico Neo RightHand:右手柄 float类型: - Strength:震动强度(范围:0-1) int类型: - Time:震动时间(单位ms,范围:0-65535) **输出**:无 **返回值**: bool类型: - true:设置成功 - false:设置失败 PXR Get Controller Acceleration ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以获取指定手柄的加速度。 **蓝图** .. image:: _static/7.3.1.1.1.6.png **输入**: - 枚举类型: - Controller Type(EPicoXRControllerType ): - Pico Neo LeftHand:左手柄 - Pico Neo RightHand:右手柄 **输出**: - FVector类型: - Acceleration:手柄加速度(单位:cm/s) **返回值**: - bool类型: - true:获取成功 - false:获取失败 PXR Get Controller Angular Velocity ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以获取指定手柄的角速度。 **蓝图** .. image:: _static/7.3.1.1.1.7.png **输入**: 枚举类型: - Controller Type(EPicoXRControllerType): - Pico Neo LeftHand:左手柄 - Pico Neo RightHand:右手柄 **输出**: FVector类型: - Angular Velocity:手柄角速度(rad/s) **返回值**: - bool类型: - true:获取成功 - false:获取失败 PXR Get Controller Linear Velocity ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以获取指定手柄的线速度。 **蓝图** .. image:: _static/7.3.1.1.1.8.png **输入**: 枚举类型: - Controller Type(EPicoXRControllerType): - Pico Neo LeftHand:左手柄 - Pico Neo RightHand:右手柄 **输出**: - FVector类型: - Linear Velocity:手柄线速度(cm/s) **返回值**: bool类型: - true:获取成功 - false:获取失败 PXR Set Controller Origin Offset ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以设置手柄原点坐标偏移。 **蓝图** .. image:: _static/7.3.1.1.1.9.png **输入**: 枚举类型: - Controller Type(EPicoXRControllerType): - Pico Neo LeftHand:左手柄 - Pico Neo RightHand:右手柄 Vector类型: - Offset:手柄原点坐标偏移量(单位:米) **输出**:无 **返回值**:无 PXR Get Controller Predicted Location and Rotation ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以预测一定时间之后,指定手柄的位置和旋转。 **蓝图** .. image:: _static/7.3.1.1.1.10.png **输入**: - 枚举类型: - Device Hand(EControllerHand): - Left:左手柄 - Right:右手柄 float类型: - Predicted Time:预测时间(范围:0-100ms) **输出**: FVector类型: - Location:根据预测时间计算得出的手柄位置 FRotator类型: - Rotation:根据预测时间计算得出的手柄旋转 **返回值**: 无 PXR Get Controller Enable Homekey ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该节点可以判断手柄是否能接收Home键按键事件。 **蓝图** .. image:: _static/7.3.1.1.1.11.png **输入**: 无 **输出**: 无 **返回值**: bool类型: - true:启用接收Home键事件 - false:已关闭接收home键事件 7.4 Eye Tracking(眼球追踪)相关函数库 --------------------------------------------------------------------------------------- SDK以蓝图节点的形式提供了相应的API,在事件图表中单击鼠标右键,进入PXR项目,在PXRHMD子项中,即可看到这些API,如下图所示。注:在使用Eye Tracking相关API之前,请参考8.2 眼球追踪章节,进行相关设置 .. image:: _static/7.4.1.1.1.1.png 图 7.4 Eye Tracking相关函数库 PXR Get Eye Tracking Data ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 获取眼球追踪的数据(仅Neo3 Pro Eye支持,需在项目设置中勾选”Enable Eye Tracking”)。 **蓝图** .. image:: _static/7.4.1.1.1.2.png **输入**: 无 **输出**: 无 **返回值**: 结构体类型: - FPicoXREyeTrackingData: - int32型:LeftEyePoseStatus:当前左眼的数据状态 - 0:数据不可用 - -1:数据可用 - int32型:RightEyePoseStatus:当前右眼的数据状态 - 0:数据不可用 - -1:数据可用 - int32型:CombinedEyePoseStatus:当前左右眼混合的数据状态 - 0:数据不可用 - -1:数据可用 - FVector类型:CombinedEyeGazePoint:左右眼当前共同注视点的位置值 - FVector类型:CombinedEyeGazeVector:左右眼当前共同的注视方向(即从双眼的中间点到注视点的向量) - float型:LeftEyeOpenness:获取左眼当前的睁闭程度 - 0.0:完全闭眼 - 1.0:完全睁眼 - float型:RightEyeOpenness:获取右眼当前的睁闭程度 - 0.0:完全闭眼 - 1.0:完全睁眼 - FVector类型:LeftEyePositionGuide:左眼当前的位置指引 - FVector类型:RightEyePositionGuide:右眼当前的位置指引 - FVector类型:FoveatedGazeDirection:注视点渲染(FFR的中心点)的视线方向 7.5 Foveation Rendering(注视点渲染)相关函数库 --------------------------------------------------------------------------------------- SDK以蓝图节点的形式提供了相应的API,在事件图表中单击鼠标右键,进入PXR项目,在PXRHMD子项中,即可看到这些API,如下图所示。注:在使用Foveation Rendering相关API之前,请参考8.3注视点渲染章节,进行相关设置 .. image:: _static/7.4.1.1.1.3.png 图 7.5 Foveation Rendering相关函数库 PXR Enable Foveation ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以打开或者关闭注视点渲染。 **蓝图** .. image:: _static/7.4.1.1.1.4.png **输入**: - bool类型: - 勾选:true,打开注视点渲染 - 不勾选:false,关闭注视点渲染 **输出**: 无 **返回值**: 无 PXR Get Foveation Level ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以获取当前注视点渲染(Foveation Rendering)等级。 **蓝图** .. image:: _static/7.4.1.1.1.5.png **输入**: 无 **输出**: - 枚举类型: - Foveation Level(EPicoXRFoveationLevel): - Low - Medium - High - TopHigh **返回值**: - bool类型: - true:获取成功 - false:获取失败 PXR Set Foveation Level ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 打包之后,可以通过蓝图节点动态的修改注视点渲染(Foveation Rendering)的等级(注:打包前,必须勾选“Enable FoveationRendering”开启注视点渲染功能)。 **蓝图** .. image:: _static/7.4.1.1.1.6.png **输入**: 枚举类型: - Foveation Level(EPicoXRFoveationLevel): - Low - Medium - High - TopHigh **输出**: 无 **返回值**: bool类型: - true:设置成功 - false:设置失败 PXR Set Foveation Parameter ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以设置注视点渲染相关参数。除非开发者对“Foveation Rendering”技术有深入的了解,可以使用自定义参数来调整FFR优化细节,否则建议使用PXR Set Foveation Level接口,设置官方预定义Level。 **蓝图**: .. image:: _static/7.2.21.png **输入**: - FVector2D类型: - Foveation Gain Value:X/Y方向Gain值影响像素密度,Gain数值越高,像素密度越低(值的设定范围为0-100) - float类型: - Foveation Area Value: 注视点周围原分辨率范围,值越大中心清晰区域越大(值的设定范围为0-100) - Foveation Minimum Value:最低像素密度值,像素密度大于等于Foveation Minimum Value 。(值的设定范围为0-100) **输出**:无 **返回值**: - bool类型: - true:设置成功 - false:设置失败 7.6 应用版权保护函数库 --------------------------------------------------------------------------------------- Pico Entitlement Verify App Delegate ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以获取版权验证结果Code。 **蓝图** .. image:: _static/7.4.1.1.1.7.png **输入**: - delegate类型: - On Verify App Callback:绑定版权验证回调事件,如下图所示: .. image:: _static/7.4.1.1.1.8.png - 回调事件参数: - int型:验证结果Code: - 0:为失败 - -2:服务不存在 - -3:服务绑定失败 - -4:捕获异常代码 - -5:超时未收到服务返回值 - 10:包名缺失 - 11:APPID缺失 - 13:包名和APPID不匹配 - 20:用户未登录 - 21:用户未购买 - 31:未查询到此应用 - 32:购买SN号与本机SN号不匹配 **输出**: 无 **返回值**: 无 7.7 SplashScreen相关函数库 --------------------------------------------------------------- SDK以蓝图节点的形式提供了相应的API,在事件图表中单击鼠标右键,进入PXR项目,在PXRHMD子项中,即可看到这些API,如下图所示。注:在使用SplashScreen相关API之前,请参考8.7 SplashScreen章节,进行相关设置 .. image:: _static/7.4.1.1.1.9.png 图 7.6 SplashScreen相关函数库 PXR Clear Loading Splash Screens ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 清除SplashScreen当前的属性配置(会设置为不自动显示) **蓝图** .. image:: _static/7.4.1.1.1.10.png **输入**:无 **输出**:无 **返回值**:无 PXR Enable Auto Show Splash Screen ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 设置是否自动显示SplashScreen。 **蓝图** .. image:: _static/7.4.1.1.1.11.png **输入**: - bool类型: - Enable: - 勾选:true,设置自动显示 - 不勾选:false,设置不自动显示 **输出**: 无 **返回值**: 无 PXR Add Splash Screen ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 添加SplashScreen,并设置SplashScreen属性。注:在Unreal 4.26中,通过Setting以及该接口添加Splash存在已知问题,建议在Unreal 4.26及以后版本,使用Unreal提供的标准蓝图接口Add Loading Screen Splash添加Splash,如下图所示: .. image:: _static/7.4.1.1.1.12.png **蓝图** .. image:: _static/7.4.1.1.1.13.png **输入**: - Texture 2D Object引用类型: - Texture:当前添加的SplashScreen中要显示的纹理图片 - FVector类型: - Translation in Meters:SplashScreen中心点的初始平移(以米为单位) - FRotator类型: - Rotation:初始SplashScreen旋转,旋转原点在SplashScreen中心 - FVector2D类型: - Size in Meters:SplashScreen四边形以米为单位的大小 - bool类型: - Clear Before Add:是否在新添加一个SplashScreen之前,先清空所有Splashs **输出**: 无 **返回值**: - bool类型: - true:添加Splash成功 - false:添加Splash失败 7.8 Boundary(安全区)相关函数库 ------------------------------------------------------------------ SDK以蓝图节点的形式提供了相应的API,在事件图表中单击鼠标右键,进入PXR项目,在PXRHMD子项中,即可看到这些API,如下图所示。 .. image:: _static/7.8.1.1.1.png 图 7.7 Boundary相关函数库 PXR Set Boundary Visible ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点设置安全边界网格是否常驻显示。 **蓝图** .. image:: _static/7.8.1.1.2.png **输入**: - bool类型: - New Visible: - 勾选:true,开启安全区常驻显示 - 不勾选:false,关闭安全区常驻显示 **输出**:无 **返回值**:无 PXR Get Boundary Visible ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以获取安全是否常驻显示。 **蓝图** .. image:: _static/7.8.1.1.3.png **输入**: 无 **输出**: 无 **返回值**: - bool类型: - true:安全区常驻显示开启 - false:安全区常驻显示关闭 PXR Get Boundary Dimensions ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以获取自定义安全边界的尺寸。 **蓝图** .. image:: _static/7.8.1.1.4.png **输入**: - 枚举类型: - Boundary Type(EPicoXRBoundaryType): - The Outer Boundary:安全区(即原地快速安全区或自定义安全区) - The Play Area Boundary:自定义安全区边界的最大内接矩形(原地快速安全区无此矩形) **输出**:无 **返回值**: - Vector类型:通过FVector的x值和z值描述一个矩形,x:长边,y:1,z:短边,如果是原地安全区,Vector为(0,0,0) PXR Get Boundary Through Data ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以获取左右摄像机画面(Vulkan不支持)。 **蓝图** .. image:: _static/7.8.1.1.5.png **输入**: - 枚举类型: - Camera Type(EPicoXRCameraType): - Left:左摄像机 - Right:右摄像机 **输出**: - Texture2D Object 引用类型: - Camera Image:获取到的相机画面 **返回值**: - bool类型: - true:获取成功 - false:获取失败 PXR Get Boundary Enabled ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以检测安全边界是否打开。 **蓝图** .. image:: _static/7.8.1.1.6.png **输入**: 无 **输出**: 无 **返回值**: - bool类型: - true:安全边界检测打开 - false:安全边界关闭 PXR Get Boundary Configured ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以判断系统是否存在有效安全边界。 **蓝图** .. image:: _static/7.8.1.1.8.png **输入**: 无 **输出**: 无 **返回值**: - bool类型: - true:存在有效安全边界 - false:不存在有效安全边界 PXR Get Boundary Geometry ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以获取安全区坐标值数组。 **蓝图** .. image:: _static/7.8.1.1.9.png **输入**: - 枚举类型: - Boundary Type(EPicoXRBoundaryType): - The Outer Boundary:安全区(即原地快速安全区或自定义安全区) - The Play Area Boundary:自定义安全区边界的最大内接矩形(原地快速安全区无此矩形) **输出**: 无 **返回值**: - 向量数组类型: - TArray:安全区坐标值数组 PXR Boundary Test Node ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以根据一个被追踪设备(左手、右手、头)当前位置,判断其是否会触发安全边界,如果会触发安全边界,则输出与安全边界发生相交的结果。 **蓝图** .. image:: _static/7.8.1.1.10.png **输入**: - 枚举类型: - Device Type(EPicoXRNodeType): - LeftHand:左手 - RightHand:右手 - Head:头 - 枚举类型: - Boundary Type(EPicoXRBoundaryType): - The Outer Boundary:安全区(即原地快速安全区或自定义安全区) - The Play Area Boundary:自定义安全区边界的最大内接矩形(原地快速安全区无此矩形) **输出**: - bool类型: - Is Triggering:是否触发安全边界 - float类型: - Closest Distance:被追踪设备与安全边界的最近距离 - FVector类型: - Closest Point:所指定安全边界,与被追踪设备原点距离最近的点坐标 - Closest Point Normal:所指定安全边界,与被追踪设备原点距离最近的点的法线 **返回值**: - bool类型: - true:获取成功 - false:获取失败 PXR Boundary Test Point ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以判断一个Unreal坐标系下的点是否会触发安全边界,如果可以触发安全边界,则会输出相交的结果。 **蓝图** .. image:: _static/7.8.1.1.11.png **输入**: - FVector类型: - Point:Unreal坐标系下用于测试的追踪点坐标 - 枚举类型 - Boundary Type(EPicoXRBoundaryType): - The Outer Boundary:安全区(即原地快速安全区或自定义安全区) - The Play Area Boundary:自定义安全区边界的最大内接矩形(原地快速安全区无此矩形) **输出**: - bool类型: - Is Triggering:是否触发安全边界 - float类型: - Closest Distance:追踪点坐标与安全边界的最近距离 - FVector类型: - Closest Point:所指定安全边界,与追踪点坐标距离最近的点坐标 - Closest Point Normal:所指定安全边界,与追踪点坐标距离最近点的法线 **返回值**: - bool类型: - true:获取成功 - false:获取失败 7.9 Large Space(大空间)相关函数库 --------------------------------------------------------------------------------------------- SDK以蓝图节点的形式提供了相应的API,在事件图表中单击鼠标右键,进入PXR项目,在PXRHMD子项以及PXRSystem API子项中,即可看到这些API,如下图所示。 .. image:: _static/7.9.1.1.png 图 7.8 Large Space相关函数库 PXR Set Large Space Enable ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以设置当前应用是否支持大空间。 **蓝图** .. image:: _static/7.9.1.2.png **输入**: - bool类型: - Enable: - 勾选:true,支持大空间 - 不勾选:false,不支持大空间 - int类型: - Ext:扩展预留 **输出**:无 **返回值**:无 PXR Switch Large Space Scene ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以开关大空间,需要在调用接口的蓝图中添加“Pico XR System API”组件,通过绑定回调事件,获取开关的结果。 **蓝图** .. image:: _static/7.9.1.3.png **输入**: - delegate类型: - In Enable Large Space Delegate:绑定开关大空间回调事件,如下图所示: .. image:: _static/7.9.1.4.png - 回调事件参数: - bool类型: - true:成功 - false:失败 - bool类型: - Open: - 勾选:true,打开大空间 - 不勾选:false,关闭大空间 - int型 - Ext:为扩展预留 **输出**: 无 **返回值**: 无 PXR Get Switch Large Space Status ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过绑定回调事件,根据返回的字符串内容判断当前大空间的状态,“0”为未开启,“1”为开启,需要在调用接口的蓝图中添加“Pico XR System API”组件,通过绑定回调事件,获取大空间的状态。 **蓝图** .. image:: _static/7.9.1.5.png **输入**: - delegate类型: - In Enable Large Space Status Delegate:绑定获取大空间状态回调事件,如下图所示: .. image:: _static/7.9.1.6.png - 回调事件参数: - FString类型: - “0”:未开启 - “1”:开启 - int类型 - Ext:为扩展预留 **输出**: 无 **返回值**: 无 PXR Save Large Space Maps ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以保存大空间地图,需要在调用接口的蓝图中添加“Pico XR System API”组件,需要在调用接口的蓝图中添加“Pico XR System API”组件。 **蓝图** .. image:: _static/7.9.1.7.png **输入**: - int类型: - Ext:扩展预留 **输出**:无 **返回值**: - bool类型: - true:保存成功 - false:保存失败 PXR Export Maps ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以导出地图文件,导出的文件在内部储存/maps/export 路径下(该接口会自动生成路径相关文件夹),需要在调用接口的蓝图中添加“Pico XR System API”组件,需要在调用接口的蓝图中添加“Pico XR System API”组件,,通过绑定回调事件,获取导出的结果。 **蓝图** .. image:: _static/7.9.1.8.png **输入**: - delegate类型: - In Export Maps Delegate:绑定导出地图结果回调事件,如下图所示: .. image:: _static/7.9.1.9.png - 回调事件参数: - FString类型: - true:导出成功 - false:导出失败 - int类型: - Ext:扩展预留 **输出**: 无 **返回值**: 无 PXR Import Maps ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以导入地图文件,需要将地图文件拷贝到内部存储/maps/文件夹中,再执行导入方法,需要在调用接口的蓝图中添加“Pico XR System API”组件,通过绑定回调事件,获取导入的结果。 **蓝图** .. image:: _static/7.9.1.10.png **输入**: - delegate类型: - In Import Maps Delegate:绑定地图导入结果回调事件,如下图所示: .. image:: _static/7.9.1.11.png - 回调事件参数: - FString类型: - true:导入成功 - false:导入失败 - int类型: - Ext:扩展预留 **输出**: 无 **返回值**: 无 PXR Get Predicted Main Sensor State ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以获取固定坐标系下设备的姿态数据。 **蓝图** .. image:: _static/7.9.1.12.png **输入**: 无 **输出**: - 结构体类型: - SensorState:FPxrSensorState - int型:status: - 0:pose/globalPose的数据不可用 - 1: pose/globalPose只有姿态数据可用 - 3:pose/globalPose位置和姿态数据都可用 - FQuat类型:poseQuat:头戴的姿态 - FVector类型:poseVector:头戴的位置 - FQuat类型:globalPoseQuat:头戴相对于Boundary的姿态 - FVector类型:globalPoseVector:头戴相对Boundary的位置 - FVector类型:angularVelocity:角速度 - FVector类型:linearVelocity:线性速度 - FVector类型:angularAcceleration:角加速度 - FVector 类型:linearAcceleration:线性角加速度 - int型:poseTimeStampNs:取得上述数据的时间(纳秒) - int类型: - Sensor Frame Index:当前帧对应的Sensor数据的索引 **返回值**: 无 7.10 系统相关接口 -------------------------------------------------------------------- 通过系统相关接口,开发者可以获取、设置系统的一些配置,开发者可根据需要酌情使用(一般情况下无需使用此部分功能)。 **支持设备**: ============================== ==================== 设备 PUI版本 ============================== ==================== Neo 3 Pro/Neo 3 Pro Eye 全版本 ============================== ==================== 在调用系统接口之前,需要在你需要调用系统接口的蓝图中添加“Pico XR System API”组件,系统相关接口均是在该组件内实现。 添加PicoXRSystemAPI组件示例: .. image:: _static/7.10.1.png 图 7.9 Pico XRSystem API组件 SDK以蓝图节点的形式提供了相应的API,在事件图表中单击鼠标右键,进入PXR项目,在PXRSystem API子项中,即可看到这些API,如下图所示: .. image:: _static/7.10.2.png 图 7.10 Pico XRSystem API相关函数库 调用示例: .. image:: _static/7.10.3.png 图 7.11 系统相关接口调用示例 7.10.1 普通接口 ----------------------------------------------------------- PXR Get Device Info ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图接口可以获取设备信息。 **蓝图** .. image:: _static/7.10.4.png **输入**: - 枚举类型: - Info Enum(ESystemInfoEnum): - ELECTRIC_QUANTITY:电量 - PUI_VERSION:PUI版本号 - EQUIPMENT_MODEL:设备型号 - EQUIPMENT_SN:设备SN - CUSTOMER_SN:客户SN - INTERNAL_STORAGE_SPACE_OF_THE_DEVICE:设备存储空间 - DEVICE_BLUETOOTH_STATUS:蓝牙状态 - BLUETOOTH_NAME_CONNECTED:蓝牙连接名称 - BLUETOOTH_MAC_ADDRESS:蓝牙Mac地址 - DEVICE_WIFI_STATUS:WIFI连接状态 - WIFI_NAME_CONNECTED:已连接WIFI名称 - WLAN_MAC_ADDRESS:WLAN的MAC地址 - DEVICE_IP:设备IP - SystemInfoEnum.CHARGING_STATUS:设备是否充电,充电返回2;未充电返回3 **输出**: 无 **返回值**: - FString类型:根据ESystemInfoEnum枚举值类型,返回对应设备信息的字符串,例如info Enum选择EQUIPMENT_SN,则返回设备SN的字符串。 PXR Set Auto Connect Wifi ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该接口可以连接指定WIFI,通过绑定回调事件,获取设置的结果。 **蓝图** .. image:: _static/7.10.5.png **输入**: - FString类型: - Wifi Name:无线名称 - Wifi PSD:Wifi密码 - Int类型: - Ext:扩展预留。 - delegate类型: - Set Auto Connect Wifi Delegate:自动连接Wifi回调事件,如下图所示: .. image:: _static/7.10.6.png - 回调事件参数: - bool类型: - true:连接成功 - false:连接失败 **输出**: 无 **返回值**: 无 PXR Clear Auto Connect Wifi ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 关闭连接指定Wifi功能。 **蓝图** .. image:: _static/7.10.7.png **输入**: - delegate类型: - Clear Auto Connect Wifi Delegate:清除连接指定Wifi回调事件,如下图所示: .. image:: _static/7.10.8.png - 回调事件参数: - bool类型: - true:成功 - false:失败 **输出**: 无 **返回值**: 无 PXR Set Home Key ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以设置Home按键功能,重新定义Home键,会影响系统定义的Home键功能,请开发者酌情使用。通过EventEnum设置Home键单击触发或者双击触发,通过FunctionEnum设置所触发的功能类型,通过绑定回调事件,获取设置的结果。 **蓝图** .. image:: _static/7.10.9.png **输入**: - 枚举类型: - EventEnum( EHomeEventEnum): - HOME_SINGLE_CLICK ("Single Click"):单击Home键。 - HOME_DOUBLE_CLICK ("Double Click"):双击Home键。 - FunctionEnum(EHomeFunctionEnum): - VALUE_HOME_GO_TO_SETTING ("Open Setting"):打开设置 - VALUE_HOME_RECENTER ( "Recenter"):校准 - VALUE_HOME_DISABLE ("Disable"):禁用Home键 - VALUE_HOME_GO_TO_HOME ("Open Launcher"):打开Launcher - delegate类型: - Set Home Key Delegate:绑定HomeKey回调事件,如下图所示: .. image:: _static/7.10.10.png - 回调事件参数: - bool类型: - true:成功 - false:失败 **输出**: 无 **返回值**: 无 PXR Home Key All ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以设置Home按键功能扩展。通过EventEnum设置Home键单击触发或者双击触发,TimeSetup设置双击或长按事件的按键间隔时间,通过FunctionEnum设置所触发的功能类型,通过绑定回调事件,获取设置的结果。 **蓝图** PXR Set Home Key All蓝图节点如下图所示: .. image:: _static/7.10.11.png **输入**: - 枚举类型: - EventEnum( EHomeEventEnum): - HOME_SINGLE_CLICK ("Single Click"):单击Home键 - HOME_DOUBLE_CLICK ("Double Click"):双击Home - FunctionEnum(EHomeFunctionEnum): - VALUE_HOME_GO_TO_SETTING ("Open Setting"):打开设置。 - VALUE_HOME_RECENTER ( "Recenter"):校准 - VALUE_HOME_DISABLE ("Disable"):禁用Home键 - VALUE_HOME_GO_TO_HOME ("Open Launcher"):打开Launcher - int类型: - TimeSetup:只有双击和长按事件有事件才设置按键间隔时间,短按传0即可 - FString类型: - Package:当Function为打开指定APP时,传入指定包名 - ClassName:当Function为打开指定APP时,传入指定类名 - delegate类型: - SetHomeKeyAllDelegate: 绑定HomeKeyAll回调事件,如下图所示: .. image:: _static/7.10.12.png - 回调事件参数: - bool类型: - true:成功 - false:失败 **输出**: 无 **返回值**: 无 PXR Disable Power Key ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以设置Power按键,通过绑定回调事件,获取设置的结果。 **蓝图** .. image:: _static/7.10.13.png **输入**: - Bool类型: - isSingleTap:是否为单击 - 勾选:true,为单击触发 - 不勾选:false,为双击触发 - Enable:按键使用状态 - 勾选:true,为启用PowerKey - 不勾选:false,为禁用PowerKey - delegate类型: - Disable Power Key Delegate:绑定DisablePower回调事件,如下图所示: .. image:: _static/7.10.14.png - 回调事件参数: - int类型: - 0:成功 - 1:失败 **输出**: 无 **返回值**: 无 PXR Set Screen Off Delay ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以设置屏幕关闭延迟时间长度。 **蓝图** .. image:: _static/7.10.15.png **输入**: - 枚举类型: - TimeEnum(ESleepDelayTimeEnum): - FIFTEEN:15秒 - THIRTY:30秒 - SIXTY:1分钟 - THREE_HUNDRED:5分钟 - SIX_HUNDRED:10分钟 - ONE_THOUSAND_AND_EIGHT_HUNDRED:30分钟 - NEVER:永不 **输出**:无 **返回值**: 无 PXR Set Sleep Delay ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以设置系统休眠时间长度,通过绑定回调事件,获取设置的结果。 **蓝图** .. image:: _static/7.10.16.png **输入**: - 枚举类型: - TimeEnum(ESleepDelayTimeEnum): - FIFTEEN:15秒 - THIRTY:30秒 - SIXTY:1分钟 - THREE_HUNDRED:5分钟 - SIX_HUNDRED:10分钟 - ONE_THOUSAND_AND_EIGHT_HUNDRED:30分钟 - NEVER:永不 - delegate类型: - SetScreenOffDelayDelegate: 设置睡眠延迟回调事件,如下图所示: .. image:: _static/7.10.17.png - 回调事件参数: - int类型: - 0:成功 - 1:失败 - 10:设置的时间过大 **输出**: 无 **返回值**: 无 PXR Switch System Function ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以设置常用系统开关。 **蓝图** .. image:: _static/7.10.18.png **输入**: - 枚举类型: - SystemFunction(ESystemFunctionSwitchEnum): - SFS_USB ("USB Debug"):USB调试开关 - SFS_AUTOSLEEP ("Auto Sleep"):自动休眠开关 - SFS_SCREENON_CHARGING ("ScreenOn Charging"):亮屏充电开关 - SFS_OTG_CHARGING ("OTG Charging"):OTG充电开关 - SFS_RETURN_MENU_IN_2DMODE ("Show Back Menu in 2D mode"):2D界面下返回图标显示开关 - SFS_COMBINATION_KEY ("Combination Key"):组合键开关 - SFS_CALIBRATION_WITH_POWER_ON ("Calibration wiht power on"):开机校准开关 - SFS_SYSTEM_UPDATE ("System Update"):系统升级开关 - SFS_CAST_SERVICE ("Cast Service"):手机投屏开关,行业解决方案开关打开时,该属性不生效 - SFS_EYE_PROTECTION ("Eye Protection"):护眼模式开关 - SFS_SECURITY_ZONE_PERMANENTLY ("Security Zone Permanently"):6Dof安全区永久关闭开关 - SFS_Auto_Calibration ("Auto Calibration"):自动校准开关 - SFS_USB_BOOT ("USB Boot"):USB插入启动开关 - SwitchEnum(ESwitchEnum): - S_ON("On"):打开 - S_OFF ("Off") :关闭 - Int类型: - Ext为扩展预留 **输出**: 无 **返回值**: 无 PXR Set Usb Configuration Option ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以设置USB连接模式(MTP、充电),MTP模型下可以传输媒体文件,充电模式下,不可传输文件,只可充电。 **蓝图** .. image:: _static/7.10.19.png **输入**: - 枚举类型: - Usb Config Mode Enum(EUSBConfigModeEnum): - MTP:媒体传输协议模式 - CHARGE:充电模式 - Int类型: - Ext:扩展预留 **输出**: 无 **返回值**: 无 PXR Acquire Wake Lock ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以请求WakeLock,使系统不会进入睡眠状态。仅支持G2 4K **蓝图** .. image:: _static/7.10.20.png **输入**: 无 **输出**: 无 **返回值**: 无 PXR Release Wake Lock ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以释放WakeLock接口,使系统可以进入睡眠状态。仅支持G2 4K。 **蓝图** .. image:: _static/7.10.21.png **输入**: 无 **输出**: 无 **返回值**: 无 PXR Write Config File to Data Local ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以向Data/local/tmp下写配置文件,通过绑定回调事件,获取设置的结果。注:该接口仅企业版头戴可用。 **蓝图** .. image:: _static/7.10.22.png **输入**: - FString类型: - Path:写配置文件的路径 - Content:写配置文件的内容 - delegate类型: - In Write Config Delegate:绑定写配置文件回调事件,如下图所示: .. image:: _static/7.10.23.png - 回调事件参数: - bool型: - true:成功 - false:失败 **输出**: 无 **返回值**: 无 PXR Reset All Key to Default ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 使用该蓝图节点可以恢复默认按键配置,通过绑定回调事件,获取设置的结果。 **蓝图** .. image:: _static/7.10.24.png **输入**: - delegate类型: - In Reset All Key Delegate:绑定重设所有按键回调事件,如下图所示: .. image:: _static/7.10.25.png - 回调事件参数: - bool类型: - true:成功 - false:失败 **输出**: 无 **返回值**: 无 PXR Enable Enter Key ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以取消屏蔽头盔确认键,调用该接口后,头盔确认键将重新启用。 **蓝图** .. image:: _static/7.10.26.png **输入**: 无 **输出**: 无 **返回值**: 无 PXR Disable Enter Key ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以屏蔽头盔确认键,调用该接口后,头盔确认键将停用。 **蓝图** .. image:: _static/7.10.27.png **输入**: 无 **输出**: 无 **返回值**: 无 PXR Disable Volume Key ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以屏蔽头盔音量键,调用该接口后,头盔音量键将停用。 **蓝图** .. image:: _static/7.10.28.png **输入**: 无 **输出**: 无 **返回值**: 无 PXR Enable Volume Key ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以取消屏蔽头盔音量键,调用该接口后,头盔确认键将启用。 **蓝图** .. image:: _static/7.10.29.png **输入**: 无 **输出**: 无 **返回值**: 无 PXR Disable Back Key ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以屏蔽头盔返回键,调用该接口后,头盔返回键将停用。 **蓝图** .. image:: _static/7.10.30.png **输入**: 无 **输出**: 无 **返回值**: 无 PXR Enable Back Key ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以取消屏蔽头盔返回键,调用该接口后,头盔返回键将启用。 **蓝图** .. image:: _static/7.10.32.png **输入**: 无 **输出**: 无 **返回值**: 无 PXR Get Device SN ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以获取头戴的SN号。 **蓝图** .. image:: _static/7.10.33.png **输入**: 无 **输出**: 无 **返回值**: - FString类型: - SN号字符串 PXR Get Current Brightness ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以获取头戴当前的亮度值。 **蓝图** .. image:: _static/7.10.34.png **输入**: 无 **输出**: 无 **返回值**: - int类型: - 当前亮度的数值(范围:0-255) PXR Set Brightness ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以设置头戴当前的亮度值。注:首次调用会提示系统设置权限请求。 **蓝图** .. image:: _static/7.10.35.png **输入**: - int类型: - Brightness:亮度的数值(范围:0-255) **输出**: 无 **返回值**: 无 PXR Get Current Volume ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以获取头戴的当前音量。 **蓝图** .. image:: _static/7.10.36.png **输入**: 无 **输出**: - int类型: - 当前音量的数值(范围:1-15) **返回值**: 无 PXR Get Max Volume ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以获取头戴的最大音量。 **蓝图** .. image:: _static/7.10.37.png **输入**: 无 **输出**: 无 **返回值**: - int类型: - 当前音量的最大值 PXR Set Volume ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以设置头戴的音量。 **蓝图** .. image:: _static/7.10.38.png **输入**: - int类型: - Volume:音量的数值(范围:1-15) **输出**: 无 **返回值**: 无 PXR Volume Up ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以增大头戴的音量。 **蓝图** .. image:: _static/7.10.39.png **输入**: 无 **输出**: 无 **返回值**: 无 PXR Volume Down ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以减小头戴的音量。 **蓝图** .. image:: _static/7.10.40.png **输入**: 无 **输出**: 无 **返回值**: 无 PXR Kill Background Apps with White List ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点,可以清除后台应用,传入的白名单不会被清除。 **蓝图** .. image:: _static/7.10.41.png **输入**: - 字符串数组类型(TArray): - PackageNames:白名单应用包名字符串的数组 - int类型: - Ext:扩展预留 **输出**: 无 **返回值**: 无 7.10.2 受保护接口 ------------------------------------------------------------------ 注意:以下接口为受保护接口,调用以下接口前,需要在项目设置->插件->PicoXR中勾选“Use Pico Advance Interface”选项。勾选了该选项候,App将无法上架Pico Store,如果您的应用需要通过Pico Store分发,请勿勾选“Use Pico Advance Interface”选项和使用以下接口。 PXR Set Device Action ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点,可以控制设备关机重启,通过绑定回调事件,获取设置的结果。 **蓝图** .. image:: _static/7.10.43.png **输入**: - 枚举类型: - Device Control Enum(EDeviceControlEnum): - DEVICE_CONTROL_REBOOT ("Device Reboot"):设备重启 - DEVICE_CONTROL_SHUTDOWN ("Device ShutDown"):设备关闭 - delegate类型: - Set Device Action Delegate:注册设备控制回调事件,如下图所示: .. image:: _static/7.10.44.png - 回调事件参数: - int类型: - 0:成功 - 1:失败 **输出**: 无 **返回值**: 无 PXR App Manager ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图节点可以静默安装或卸载应用,通过绑定回调事件,获取设置的结果。 **蓝图** .. image:: _static/7.10.45.png **输入**: - 枚举类型: - Package Control Enum(EPackageControlEnum): - PACKAGE_SILENCE_INSTALL ("Install Package"):应用安装 - PACKAGE_SILENCE_UNINSTALL ("Uninstall Package"):应用卸载 - FString类型: - Path:静默安装的安装包路径或静默卸载时的应用包名 - int类型: - Ext:扩展预留 - delegate类型 - App Manager Delegate:注册静默安装或卸载回调事件,如下图所示: .. image:: _static/7.10.46.png - 回调事件参数: - int类型: - 0:成功 - 1:失败 **输出**: 无 **返回值**: 无 PXR Screen On ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图接口可以控制设备亮屏。 **蓝图** .. image:: _static/7.10.47.png **输入**: 无 **输出**: 无 **返回值**: 无 PXR Screen Off ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通过该蓝图接口可以控制设备灭屏。注:首次调用该接口会提示电源管理权限请求。 **蓝图** .. image:: _static/7.10.48.png **输入**: 无 **输出**: 无 **返回值**: 无