使用 Gear VR 触控板

设置 Gear VR 运动控制器触控板

Windows
MacOS
Linux
Prerequisite Topics

This page assumes you have prior knowledge of the following topics. Please read them before proceeding.

HTGVRMCTouchpad_Here_Image.png

Gear VR 运动控制器(MC)触控板精确度极高,可用它进行各种高精度互动。使用触控板与虚拟世界互动的方式数不胜数,如在一系列菜单选项中滚动,或在地图上精确标出您所在的位置,等等。以下指南将说明如何通过触摸 Gear VR 运动控制器触控板来获取并显示当前位置。

在此指南中,我们使用的是已拥有 VR 摄像机、且已添加运动控制器支持的 Pawn。如未拥有此设置,请查看此页面顶部 先决条件 列表中列出的文档。

步骤

你可以在下方找到如何设置GearVR运动控制器触屏,以显示用户触摸位置。

  1. 首先打开玩家 Pawn 蓝图,然后从 Component 标签添加两个新的 Text Render 组件,命名为 X_PositionY_Position。如下图所示,将两者设为 Motion Controller 组件的子项。

    HTGVRMCTouchpad_00.png

  2. 点击 Text 组件,然后在 Details 面板中用以下 X 轴和 Y 轴文本的数值对下方的属性进行设置。

    点击查看全图。注意:这只显示了 Y_Position 属性。请查看下表中的 X_Position 属性。

    属性名称

    数值

    Location X Text

    X = 20, Y = 0, Z = 0

    Location Y Text

    X = 20, Y = 0, Z = 5

    Rotation X & Y

    X = 20, Y = 0, Z = -180

    Horizontal Alignment X & Y

    Center

    Vertical Alignment X & Y

    Text Center

    World Size X & Y

    5

  3. 编译蓝图逻辑前,我们首先需要创建两个变量,以便在触控板上保存并显示 X 和 Y 轴的输入位置。前往 Variables 部分,添加名为 XPositionTextYPositionText 的两个新 Text 变量

    HTGVRMCTouchpad_02.png

  4. 为实现按下触控板即显示当前位置的功能,首先需要获取并保存当前触摸输入的 X 和 Y 轴值。然后使用 Set Text 节点即可通过添加到 Gear VR 运动控制器的 Text Render 组件显示信息。在蓝图中进行此操作,首先要将以下节点和变量添加到事件图表。

    点击查看全图。

    节点/变量名

    MotionController(R)Thumbstick X

    N/A

    ToText(Float)

    N/A

    SET_ XPosition_Text(Float)

    N/A

    Set Text

    N/A

    X_Positiont

    N/A

    XPositionText

    N/A

    Append

    A Input:X:

    ToText(string)

    N/A

  5. 接下来我们需要使用附加到运动控制器的文本对显示输入位置的逻辑进行编译。进行此操作首先需要获得 MotionController (R)Thumbstick X 的 轴值,并将其保存在 XPositionText 变量中。拥有此信息后,我们即可使用 X_Postion 文本显示此值。完成后,蓝图应与下图相似。

    Copy Node Graph

    点击图片复制蓝图节点。

  6. 拥有 X 轴输入值后,我们便可使用相同的逻辑获取 Y 轴的输入值,只需要将 MotionController(R)Thumbstick 和变量改为使用 Y 轴。完成后,整个蓝图应与下图相似。

    Copy Node Graph

    点击图片复制蓝图节点。

最终结果

蓝图编译并保存后,将项目部署到智能手机,然后拿起 Gear VR 头戴显示器和运动控制器。现在触碰触控板时,当前触摸的位置便会显示数字更新,如下方视频所示。

UE4 项目下载

可使用以下链接下载用于创建此例的 UE4 项目。

Select Skin
Light
Dark

Welcome to the new Unreal Engine 4 Documentation site!

We're working on lots of new features including a feedback system so you can tell us how we are doing. It's not quite ready for use in the wild yet, so head over to the Documentation Feedback forum to tell us about this page or call out any issues you are encountering in the meantime.

We'll be sure to let you know when the new system is up and running.

Post Feedback