I have managed to narrow down a section of the code that is still quite long but much less than the entire engine we're using. Once I've found the particular part that is conflicting, I'll post it here so that if anyone runs into something like this they may know what the cause is.
Posts by ppano
-
-
Code
Display More// Ensure WebXR is supported if (navigator.xr && navigator.xr.isSessionSupported) { // Check if immersive VR is supported navigator.xr.isSessionSupported('immersive-vr').then((supported) => { if (supported) { // Wait for a user interaction (e.g., button click) to start the session document.getElementById('enterVrButton').addEventListener('click', () => { navigator.xr.requestSession('immersive-vr').then((session) => { console.log('WebXR immersive session started!'); // Now you can initialize your XR experience with the session // For example, set up a WebXR controller or renderer }).catch((error) => { console.error('Failed to start WebXR session:', error); }); }); } else { console.log('Immersive VR is not supported.'); } }); } else { console.log('WebXR is not supported.'); }
Also, running this code it gets to the "WebXR immersive session started" part - I assume the WebVR plugin does something similar internally, so something the initial stuff is causing the page reload :(
-
Hello!
After recently upgrading an older tour to version 1.22, webvr or rather webxr doesn't seem to be working on the Meta Quest headset.
This tour uses a bit of a custom engine (based on krpano of course), so I can't exactly share the whole codebase, but the point is:- webvr, gyro2 and krpano itself are both 1.22, same build
- webvr plugin's onavailable event fires and the iswebvr and iswebxr attributes are all true
- there is a button that we click to call the entervr() function so user interaction is there
- and when that happens, instead of entering vr, there's a black screen for a few moments with the loading indicator, and then the page reloads
- the official krpano examples work just fine
no errors in the console whatsoever
What is the bare minimum code for the webvr plugin to function? Just adding the plugin, setting keep to true and then calling the plugin's entervr() function should work right?
I'm gonna continue to try and figure this out but if anyone got any tips, I'd appreciate that. Thanks.
-
-
Hello!
One of our virtual tours is supposed to have an intro type of html content overlaid in the tour.
It works perfectly with the standalone tour link. However, when the tour is embedded like this, it just doesn't appear. Can anyone tell why is that happening? I checked all the css and whatnot, and couldn't find a reason. It also works if I just create a separate html file with a simple iframe embed.
Also, this is only an issue in Chrome. In FF it seems to be just fine...
-
Dear Klaus!
We ran into an interesting problem here. It seems that after updating to 1.20.9 or 1.20.10, and testing on the iPad, we're having an issue where krpano.image.sphere is evaluating to null on certain xmls. Here's an example xml file:
and so while debugging, out of the three console logs below
The first two return valid values, the last is null. I mean there are obviously a .desktop and a .mobile device-checked attributes in the xml, but this is just a custom attribute the sphere still shouldn't be null, also:
- it works with version 1.20.9 and 1.20.10 on the iPhone
- and works with the iPad too with krpano versions 1.20.7 and belowAny idea what might be causing this?
-
Hi!
Thanks for the tip, like I said we needed nodes as attributes weren't complex enough for our needs. Like I said, deleting the nodes when a new scene is loaded works fine, I was just curious if there was a better solution, but I haven't found one yet
-
Managed to quickly solve this by simply deleting this krpano object in an onremovepano event, but I'm wondering if there's a more elegant solution to this :P
-
Hi!
So I'm trying to store some additional data in my <scene> tags, custom xml nodes, can be anything really.
However, I thought when I'd load a new scene that also has such a node, the contents would be overwritten. Instead, it stays the same.
Anyone has any experience with this? Is there a way to define such custom data within a scene, and get it overwritten when a new scene is loaded?
Thx!
-
Hi!
Any updates on this?
We're just experimenting with using vimeo-hosted videos, and it seems to be working fine actually on Windows, as well as on Mac/Chrome, but not in Safari. On iOS it doesn't seem to be working in any browser though. Is there a workaround and if not, what's the current state of this feature, if I may ask?
Thanks!
-
Sorry, if I wasn't clear. Overlayscrollbars is a 3rd party plugin , not for krpano, just a generic one.
But like I said, we ditched it some time ago in favor of the native scrollbar and still, we have issues in Firefox.
Thanks, I'll look into that example!
-
Hi!
Thanks, but that's not what I'm asking.
See this, click on the hotspot marked '01'. Make sure the window is short enough so that a scrollbar appears to the right of the text.This is not the best example, because I think this was done with the OverlayScrollbar plugin, but the same problem happens with the native scrollbar. On Chrome, you can just use the mousewheel to scroll and it happens naturally. On Firefox, it doesn't work. On Chrome, I'm not using any custom event, just an overflow: auto or overflow: scroll (when using the native scrollbar).
So it's as if on Firefox, krpano is eating the scroll (although granted the pano is not zooming in the background).
Does this make sense to you? :)
-
Hi!
So we have some plugins (layers) with custom html content, some of which needs to be scrollable. We use an eventlistener on the div, and call event.preventDefault() and this allows us to stop the event from going to the viewer and scroll that div as expected. This works fine in Chrome, not in Firefox, however.
Any idea on how to make it work in FF too or an alternate solution that would work across all major browsers?
Thanks!
-
Thank you so much! :)
-
Hi!
So we're having some issues with our custom html content displayed over the tours (as a plugin/layer).
The plugin is set to have a width and height of 100%. So, it should always be fullscreen, well, as large as the area, anyway, but in this case that is set to 100% too. It all works great, on desktop and android, but on some iOS devices when the orientation is changed, the layout gets messed up. I checked, and the actual container div of the layer is not a 100% anymore, as seen in the dev tools.
Is this a known issue? Are we doing something wrong in the embed, or perhaps somewhere else?
Thanks!
-
Ok, thanks for clearing that up! Cheers!
-
Hi!
I know this is an old thread, but I have a related question. Does (should) parenting hotspots work in VR? I'm trying to do that, using the correct syntax (based on what Klaus wrote above nearly 10 years ago), but it still doesn't seem to be working. So perhaps no chance in VR? :)
-
Dear Klaus!
We're trying to develop our own 'followmouse' feature, and we've run into a problem.
Why does the second value result in a much faster movement? The first one is too slow for us, but from 0.05 and upwards it gets too fast too soon
Also, when we apply both horizontal and vertical moveforce, together the resulting movement again seems more than just the combination of the two. So if we move the mouse only along 1 axis, the movement (with the current settings) is very subtle, but if we start moving the cursor in a circular way, it gets way too intense. As if the two attributes are not just working in parallel, but affecting each other or something like that :)
-
So in the latest versions of iOS there's a popup requesting for permission to use 'motion and ' whatever it's called, and if the user allows it, the vr and gyro work great. But what if they tap on cancel, and so disallow it?
Is there a way to catch that? I thought in this case the onavailable events won't fire, but they still do, well, after a reload anyway. So how to properly handle this case?
-
Dear Klaus!
Just discovered a potential bug in 1.20.6 and by the looks of it, 1.20.7. When using capturetouch=false (which we use in all tours because we have extensive html layouts), pinch-zooming on Safari/iOS zooms the whole...page. The tour is embedded fullscreen, so I'm not talking about a conventional website with an embedded tour. But 2D layers, buttons etc get zoomed and panned away too. Basically, as if the panorama and everything on it was a 2D image.
I can confirm that rolling back to 1.20.4 solves this, no problem there. Anyone else having this issue?