Custom teleportation with Vive Focus

fueldown
Settler

Custom teleportation with Vive Focus

Hi,

I am trying to implement a teleportation solution for vive focus in Unity. We develop ArchViz application and not everywhere we have abundant space to roam around. So to make it work in a small space, we needed to implement a teleport system just like in VIVE. 

Now the issue I am facing is the offset we get in head position/rotation if we walk physically. Is there a way to reset the head position from code at runtime? I am able to move the entire WaveVR prefab instance, but can't reset the head pose. I tried setting it in DevicePoseTracker script, but it is getting overridden the very next frame. Please let me know how this can be done.

I can see the demos on viveport such as the museum and the winter archviz who have implemented the reset mechanism, so I know it is possible, just can't figure out how. Any help is appreciated. Thanks!

Vive Staff

Re: Custom teleportation with Vive Focus

I'm not sure how other developers handle this on their contents.

There will be a new API provided for In-game recenter usage on next release. (System Update 3)

 

fueldown
Settler

Re: Custom teleportation with Vive Focus

Hi Tony,

 

When can we expect to get access to the api? I do not currently have a developer ROM, so I will be only able to get it when it comes to consumer ROM.

 

Vive Staff

Re: Custom teleportation with Vive Focus

Suppose on the end of July.

fueldown
Settler

Re: Custom teleportation with Vive Focus

Hi Tony,
We are still waiting for the update that will allow us to recentre the user at runtime. It is the only thing that is stopping us from going into production phase as the teleportation is critical to the functionality of our app.
Currently if you move physically, there is an offset to the head which we can not reset in the code. In the meanwhile if you have any solution/workaround to this, please let me know. This has been really frustrating for us.
Best,
Rohan
Vive Staff

Re: Custom teleportation with Vive Focus

Thanks for inquiry, and I expect the whole packages (including ROM, SDK) will be ready next week.

 

iMMERGENCE
Builder

Re: Custom teleportation with Vive Focus

me i used input utiliy vive on asset store.

https://github.com/ViveSoftware/ViveInputUtility-Unity

ZealousAppex
Settler

Re: Custom teleportation with Vive Focus

I'm attempting to add teleportation using only WaveVR, did you figure out how to achieve this?

This isn't working: target.position = new Vector3(1, 5, 10);

Vive Staff

Re: Custom teleportation with Vive Focus

Hi @ZealousAppex,

 

Is target the parent GameObject of head?

Thanks.

ZealousAppex
Settler

Re: Custom teleportation with Vive Focus

@Tony PH Lin

I create a new game object in Unity and drop the WaverVR prefab and now I can transform the object... BUT how do I move the person to the location? If they walk off of zero and I teleport them, that offset still remains from the parent object.

It would be nice to have samples teleporting and using the controller in the WaveVR.

Capture3.JPG

Vive Staff

Re: Custom teleportation with Vive Focus

There will be a offset value M if you assign the target (X,Y,Z) in parent object.

So it's better to assign (X,Y,Z) -M to parent object.

 

Thanks for your suggestion, and we will plan to provide a sample for teleporting.

 

ZealousAppex
Settler

Re: Custom teleportation with Vive Focus

Lets say I want them to teleport to an object, the following still gives me an offset:

Teleport.position = new Vector3(transform.position.x - WaveVR.position.x, (transform.position.y + person.transform.position.y)- WaveVR.position.y, transform.position.z - WaveVR.position.z);

 

I have boundaries off and attempted to "Recenter" as but let's say I walk to the other side of the house and call: 

Interop.WVR_InAppRecenter(WVR_RecenterType.WVR_RecenterType_YawOnly);

it will not reset set to my current location but rather set orientation. What's the proper way to recenter current location when you have boundaries off? Kinda of like returning to your safe center? For example in the Vive home screen menu, I sometimes travel so far I can no longer get to it or see it. I have to reboot the device to return back in front of the menu from my current location.

Vive Staff

Re: Custom teleportation with Vive Focus

You can try this function call:

 

Interop.WVR_InAppRecenter(WVR_RecenterType.WVR_RecenterType_RotationAndPosition)

to re-center head position & rotation.

Thanks.