This section will help you to port an application from VIVE to WaveVR.
Before directly jumping into the porting step details, we need to address two major differences between VIVE and Mobile: Platform and user behavior.

VIVE is a six degrees of freedom (6DoF) device so position and rotation information on the headset and controller can be used. WaveVR supports 3 and 6 DoF based on tracking devices. For example, HTC Link is a 6 DoF HMD with two 6 DoF controllers. In addition, WaveVR can use combinations of 3DoF and 6DoF. Therefore, before starting to port, you need to take into consideration the user experience as it will be different between the VIVE and WaveVR.

There are four buttons that can be used by developers for the VIVE – Touch, Trigger, Grip and Menu.
There are three buttons can be used by developers for WaveVR (based on HTC Link) – Touch, Trigger and Menu.

Therefore, we need to have a complete button mapping definition before porting.

After importing the SDK, you’ll find conflicts between SteamVR and WaveVR due to the overlapping of SDKs. Therefore, you need to delete all settings or scripts from SteamVR in your project in case Unity can’t recognize the function from openVR.

You need to replace them with WaveVR.
Here’s how to map some of the function:

In preference settings, download the Android SDK and JDK and then delegate them to the preference setting.