5 Hardware product development guide

This chapter will introduce the use method of SDK on Pico hardware products, and the developers should only choose to view the corresponding contents according to demands.

5.1 Pico G2/G2 4K

5.1.1 User manual

Please follow the following steps to use Pico G2 controllers:

  1. Add the MotionController component to the default Pawn class in the game to make it have the same level as the Camera component:

_images/5.1.png

Figure 5.1 MotionController component addition

This component is not affected by the Hand property, for example, if the left and right hands need to be changed, please go to the system setup to modify it:

_images/5.2.png

Figure 5.2 Disable Low Latency Update checking

Once packaged and installed, the component will will follow the position/orientation of the Pico controller.

  1. Add a model to MotionController:

Please add the model under the Visualization sub-item of MotionController detail panel (the display can be achieved after checking “Show Plugin Content”):

_images/5.3.png

Figure 5.3 Add Pico controller model

It should be noted that in our plug-in directory, we package the controller with key animation into an Actor, and to reuse it, please attach it to the Pawn or Character in your level.

5.1.2 Input instructions

The keys used by Pico G2 controllers are as follows:

G2 controller key

Input binding

Blueprint node

_images/5.1.1.png _images/5.2.1.png _images/5.3.1.png
_images/5.1.2.png _images/5.2.2.png _images/5.3.2.png
_images/5.1.3.png _images/5.2.3.png _images/5.3.3.png
_images/5.1.4.png _images/5.2.4.png _images/5.3.4.png
_images/5.1.5.png _images/5.2.5.png _images/5.3.5.png
_images/5.1.6.png _images/5.2.6.png _images/5.3.6.png

The axis input of the G2 controller only contains the touchpad, and the schematic diagram of the touchpad is as follows:

_images/5.4.png

Figure 5.4 Schematic diagram of the G2 controller

The corresponding input values can be obtained through the following nodes:

_images/5.5.png

Figure 5.5 How to get the touchpad axis value

5.2 Pico Neo/Neo 2

5.2.1 User manual

  1. Add two MotionController components to the default Pawn class in the game (named as MotionController_Left and MotionController_Right respectively), and make them have the same level as the Camera component:

_images/5.6.png

Figure 5.6 Add MotionController component

  1. Select MotionController_Left. Find the Hand property under its detail panel and modify it into Left. Thus the component will move following the main controller:

_images/5.7.png

Figure 5.7 Hand property setting

  1. Similarly the Hand property of MotionController_Right should be set as Right.

4. Add a model to MotionController: please add the model under the Visualization sub-item of MotionController detail panel (the display can also be achieved after checking “Show Plugin Content”):

_images/5.8.png

Figure 5.8 Add the controller model

It should be noted that Pico SDK package the controller with key animation into an Actor, to reuse it, please attach it to the Pawn or Character in your level.

5.2.2 Input instructions

The corresponding events driven by blueprint nodes for keys used by Neo 2 controller are as follow:

_images/5.2.2.1.png _images/5.2.2.2.png _images/5.2.2.3.png _images/5.2.2.4.png _images/5.2.2.5.png _images/5.2.2.6.png _images/5.2.2.7.png _images/5.2.2.8.png

The axis input of the Pico Neo 2 controller is divided into a touchpad and a trigger, and the schematic diagram of the touchpad is as follows:

_images/5.9.png

Figure 5.9 Schematic diagram of Pico Neo 2 controller touchpad

The axis input of the Pico Neo controller is divided into a touchpad and a trigger, and the schematic diagram of the touchpad is as follows:

_images/5.10.png

Figure 5.10 Touchpad-related blueprint nodes1

_images/5.11.png

Figure 5.11 Touchpad-related blueprint nodes2

The input range of the trigger is 0-1, and the trigger input values of the main and auxiliary (Left and Right) controllers can be Get through the following blueprint nodes:

_images/5.12.png

Figure 5.12 Trigger-related blueprint nodes

5.2.3 Related blueprint nodes

RFor the Pico Neo controller, we provide several APIs in the form of blueprint nodes. Right click on the event graph and expanding Pico Neo->Controller, and these APIs can be seen:

_images/5.13.png

Figure 5.13 API of Pico Neo controller

The detailed use methods of these APIs are as follows:

_images/5.2.3.1.png _images/5.2.3.2.png _images/5.2.3.3.png _images/5.2.3.4.png _images/5.2.3.5.png _images/5.2.3.6.png _images/5.2.3.7.png _images/5.2.3.8.png _images/5.2.3.9.png _images/5.2.3.10.png _images/5.2.3.11.png _images/5.2.3.12.png _images/5.2.3.13.png _images/5.2.3.14.png _images/5.2.3.15.png _images/5.2.3.16.png _images/5.2.3.17.png _images/5.2.3.18.png _images/5.2.3.19.png _images/5.2.3.20.png _images/5.2.3.21.png

5.2.4 Security boundary

Security boundary of Pico Neo 2 is realized by SDK. Please refer to Chapter 6.2 to see the open interfaces.

5.2.5 Close the Pico Neo/Neo 2 6Dof function

The default project type of the SDK is head 6Dof tracking and hand 6Dof tracking. For devices with 6Dof, such as Pico Neo and Neo 2, if 6Dof needs to be enabled, please execute the following operations:

Open the menu Edit->Project Settings…, find the Plugins sub-item, and check the following two options as needed:

_images/5.14.png

Figure 5.14 Pico Neo/Neo 2 6DoF options

5.3 Pico all-in-one key

The following table refers to the correspondence between the keys on the all-in-one machine and the key values in Unreal Engine.

HMD Key

UE input key

Confirm Key

_images/5.21.1.png

Home Key

Android standard HOME (occupied by the system)

Volume Up Key

Android standard VOLUME_UP

Volume Down Key

Android standard VOLUME_DOWN

Return key

Android standard BACK(Note: Pico GoblinHMD does not have this button)