Forum Replies Created
-
AuthorPosts
-
Thomas Fabini
CustomerHi Alexander,
thank you very much for your reply and for looking into this.
Sure thing, 4.6 first, no rush. It’s not as urgent as it is important in perspective – being able to build webxr apk’s for the oculus headsets or other platforms. I consider it a huge advantage having offline apps available to publish or sideload beside the online apps.
I was looking into PWAs lately (for which you added increased support in 4.6) these seem to be well supported for apk building. There are examples with three.js scenes build into apk and running in VR on the Quest 2. Even Meta has guides for building apk’s for the Quest from PWAs.
One thing i must admit, the concept of PWAs is quite new to me, i can’t really wrap my head around about the online / offline aspect of things… does an apk still need to maintain the sync to the https hosting it was build from or is it completely offline and independent?
The process of building android apps with Cordova proved to be more difficult than the process involved building from PWAs. If they can work offline i don’t really care for the wrapper but the final result.
Good luck with the 4.6 release!
Thomas Fabini
CustomerAs far as I understand, Cordova serves over https since version 10. So your answer is no.
Far as I read it’s much closer to the fact that WebXR api isn’t supported, some plugins developed, abandoned…
This feature is far too important to cast it off with a much to simple answer.
I’d like to hear the devs opinion on this.Thomas Fabini
CustomerPlease correct me if i’m wrong – but since it’s the camera control object which needs to keep sync, not the camera itself, wouldn’t any VR event like ‘HMD moved’ suffice to update the control object and reset the offset which occured when the user moved?
Thomas Fabini
CustomerThe trick is to perform rotation at the camera’s position point.
I almost expected some matrix math voodoo for offsetting the transformation center… glad you didn’t :)
Thank you very much for sharing this solution, i really haven’t thought about parenting the camera control object to an offset empty for the offset rotation…In my setup with the continuous rotation this could be harder to achieve since it would mean parenting and unparenting each frame / each simulation tick or maybe at least at each rotation start and end.
But i still wonder if it’s not possible to change the coding for the camera control object so that it keeps always sync with the headset position in space when walking. I mean, wouldn’t that be the expected logic?
Thomas Fabini
CustomerBut it’s quite possible to make it work as needed.
https://v3d.net/qefIf i understand the problem correctly it’s basically a cyclic dependency in their relationship.
I admire the problem, the answer still eludes me.Ah nice one! That really seems to work…
Do you mind helping me out on this one?-
This reply was modified 11 months, 3 weeks ago by
Thomas Fabini.
Thomas Fabini
CustomerActually, it’s not a bug.
…and that is the comment i was rather afraid of. ;)
That’s why i wondered if it is to be considered a bug.It’s hard to wrap my head around the relationship between the headset and the camera control object: It is like a child relation when walking physically but a parent relation when pushing the camera control object around with the stick.
Does the headset offset the camera inside the camera control object when walking physically?
Thomas Fabini
Customerwe’ll look into this!
Thank you very much Yuri! – no need for a bug report, then?
Thomas Fabini
CustomerThat’s the comment i was hoping for… :D
So in your opinion it’s rather a bug, then?
Dunno if it can be fixed, but i’ll kindly ask Alex and Yuri if they can take a look at this.
Thanks for your feedback kdv!Thomas Fabini
CustomerNo not before. After entering VR, but physically making a few steps with the headset on, or in the browser dragging the headset in the webxr plugin interface a few meters away.
In the example above it is (desktop) chrome with the webxr plugin for the controls.1. Enter VR
2. Move (either physically with the headset on, or move (drag) the headset in the webxr plugin interface so it’s offset)
3. Rotate with the right stick (either physically on the controller with headset on, or in the webxr plugin interface)Thomas Fabini
CustomerStart in https://v3d.net/qef VR mode with the headset offset 3m to the right (virtual_reality_1_VR_offset_3m_right.jpg).
Rotate the view 90 degrees to the right (virtual_reality_2_VR_rotation_90deg_right.jpg).
Rotate the view 180 degrees to the right (virtual_reality_3_VR_rotation_180deg_right.jpg).In https://v3d.net/ec5 it seems to be just the same. Offset the headset by 3m left on the green, rotate 180, you’ll end up on the right side of the pathway on the green.
It happens only if you physically move the headset away from the point it was initialized when entering VR. Movements with the stick, where the camera control object coordinates get updated, are not affected.
In my setup it is even more obvious since I am using continuous rotation. The farther you walk away from the starting point, the worse it gets. You start rotating in larger and larger circles.
I assume, when walking in VR, without using the stick, the camera control object position doesn’t get updated. So it’s last (known) position in 3D space is used for the rotation.
Ok, it’s arguably why you would need rotation when you are walking and not just sitting in VR (and for that, can turn physically 360deg)… but in my experience, anything that can go wrong possibly will, where clients or users are concerned. Its usually just a matter of time ;)
Attachments:
You must be logged in to view attached files.Thomas Fabini
CustomerReworked VR controls. Can walk on inclined surfaces and stairs. Added rotation like in the home room.
Hi kdv,
cool setup btw. :)
I’ve recently hit a problem with the rotation in my controller setup:
It seems that the rotation center for the camera control object is local as long as the user stays in on place.
When walking (physically) with the headset on, the rotation center gets offset to the point of initialization. Although your approach is a bit different and you are using change local rotation, it seems to occur in your app as well…
In a browser with a webxr plugin enabled it seems the rotation gets offset after moving the camera (instead of moving with the controllers axes).Is this the expected behavior? A technical limitation? Or rather a bug?
Anyways, always happy for some feedback that could shed some light on this.
-
This reply was modified 11 months, 3 weeks ago by
Thomas Fabini.
2023-12-12 at 8:29 am in reply to: VR Reticle Ray can’t be turned of when restarting XR Session #69108Thomas Fabini
CustomerHi kdv, a late but very welcome reply
I always used the hide puzzle with the reticles, completely unaware they could actually be removed. I’ll try that with the current VR project on 4.5.1.
Thank you very much for pointing that out…Thomas Fabini
CustomerI couldn’t figure out how to address the Quest’s left and right analog sticks separately. This seems to address both controllers at the same time
Hi bigcatrik,
you should be able to address the thumb sticks’ axes separately by checking the controllers handedness (left, right) first. Numbers for the axes seem to be the same, while the handedness is not. I’ve attached an example from my project (right stick is used for walking and moving sideways while the left stick rotates the view).
Attachments:
You must be logged in to view attached files.2023-07-27 at 8:28 am in reply to: VR Reticle Ray can’t be turned of when restarting XR Session #65629Thomas Fabini
CustomerI did further testing, comparing the behavior under pre3, pre4 and the final 4.4.0 release.
Basically the reticles won’t be turned off when returning from standby. Sometimes they stay turned off if you return shortly, e.g. less than 5 seconds, but they still are shown if you go into standby for more than 10 seconds.I assumed they were fixed in pre4 since they didn’t show, but that was probably just because testing with short standby periods. I really tried to pinpoint the exact circumstances, but I really can’t, it always is slightly different. The behavior described above is all I could somewhat safely reproduce.
With the first tests I also had the impression that pre4 rendered an average of 2-5 fps faster than the final release, but after today’s tests I’m not really sure. Were there any significant changes between pre4 and final release which could affect performance?
Btw., after installing 4.4.0 I had the problem ending up with a 0 byte v3d.js library when updating apps. Might be related to the license, while it still showed as valid (green), the problem went away only after re-entering the key. Just wanted to point this one out.
Thanks,
Thomas-
This reply was modified 1 year, 6 months ago by
Thomas Fabini.
-
This reply was modified 1 year, 6 months ago by
Thomas Fabini.
2023-07-25 at 1:17 pm in reply to: VR Reticle Ray can’t be turned of when restarting XR Session #65510Thomas Fabini
CustomerHi Alexander,
I’ve tested 4.4.0 pre3 and pre4 – which left me with the impression that you fixed some more glitches under the hood:
in pre3 I had some occasional returning of the reticles (not when leaving VR, just when taking off the headset, which sent it to standby, and then putting it back on).
In pre4 I tested recently and wasn’t able to find any situation where the reticles would return, once turned off with puzzles.I will get back with more info as soon as I’m able to test the 4.4.0 release.
Anyways – thank you very much for the fixes! -
This reply was modified 11 months, 3 weeks ago by
-
AuthorPosts