WebVR: Can hotspots be made to "float" in front of pano image, so they appear to be in front of the background?

  • Thank-you for making it so easy to modify existing tours for VR use with WebVR.
    I used this tour http://www.maxwellhouse.org.uk/ and with minor adjustments I very quckly got it 90% working.
    The revised tour (in development) is here http://www.maxwellhouse.org.uk/indexVR.html (after a few weeks the basic tour will probably have been upgraded and this link removed)
    Note: to access VR, open the menu bottom left and press the "mask" icon.
    The tour has pop-out portraits using hotspots, and text help using showtext().It looks like the hotspots float in front of the background a little. Is it possible (or could it be added) to have a "stereo eye offset" so this can be adjusted, so some hotsots are closer than others? I think this would give the flat panorama a little more of a VR feel.
    Thanks
    James

    Edited once, last by james (September 10, 2018 at 4:35 PM).

  • Klaus,
    Excellent! Depth is indeed what I was trying to describe! I believe by making small changes to each hotspot "depth" that will give subliminal clues making panoramas with many hotspots appear to have a 3D feel. The tour above has many rooms each with 10-20 hotspots, to many to experiment with the correct depth so I wondered if there was a known relationship, e.g. a suqare law or log(10), then I can quickly add depth based on my observation of the scene?
    So, in the panoramas above 1000 seems to feel OK for a wall 5m away, if there was a hotspot on a table at 0.5m (10x closer) that could be 500 or 100 depending on the depth relationship. Could you estimate the relationship please. With this information I can quickly add depth information based on a rule rather than trial and error.
    Finally,, showtext() doesn't work in VR, is there any way to show text other than defining an image hotspot?
    Thanks
    James

  • Hi,

    to many to experiment with the correct depth so I wondered if there was a known relationship


    The depth is a 'linear' distance, e.g. a value twice as large is twice as far away.

    At the moment the unit itself is arbitrary, that means there is no physical representation, but I'm already working on a setting to customize that, e.g. then you could say 1unit = 1cm. But that will be only relevant for VR viewing using a proper VR headset and a browser providing the WebVR API and with it a physical reference.

    Btw - there is also another way to 'place' hotspots: by using depth=0 the hotspot will move the to camera/viewer-center/origin and from there the hotspot could be freely moved around in 3d space by the tx/ty/tz settings (same unit as depth).

    Additionally there is also the 'worldscale' setting of the WebVR plugin - this will scale the stereo-separation
    https://krpano.com/plugins/webvr/#worldscale


    howtext() doesn't work in VR, is there any way to show text other than defining an image hotspot?


    A textfield hotspot with the setting flying=1.0 (or a value slightly smaller than 1.0 for a nice parallax effect) could be used for this.

    Best regards,
    Klaus

  • Thank-you Klaus. Your suggestions are appreciated and have helped a great deal to fine-tune the addition of VR to this tour.
    I have one remaning issue I cannot understand. I am using webVR plug-in as delivred, and am trying to use it "out of the box" so I have changed NO settings in the delivered webvr.xml, and as few settings as possible in the tour. With your linear rule I changed the depth of hotspots to get a good feel for the scene so instead of the hotspots appearing to be in a 'circle' they are now in a "square " to mimic the walls of the room to subliminally make the panorama walls feel square.
    The effect works with the viewers head NOT MOVING but when they move the illusion is lost. So I did some experiments. I have set close hotspot depth=1000. far hotspot depth=2500.
    With no head movement the right and left eyes see the correct parallax error against the backgroudn panorama. This confirms that depth is working as I woudl expect. This is the inter-pupil distance at work.
    However when the viewer moves their head there is a second parameter, a parallax error because the eyes are in front of the rotation of the neck. We all know about this from setting up our Nodal Mounts to remove this srror but here the error is needed to fool the user.

    When the head moves I would expect hotspots further away to have less parallax or movement than hotspots closer but the opposite is true. See this eample, which I have slightly exagerated

    Go into this room in the tour (sorry, I used a cookie to get you into the correct room quickly). Also note this will not work on a desktop, you will require a headset.


    http://www.maxwellhouse.org.uk/indexVR.html?c…scene_STAIRWELL (to enter VR, open the menu in the bottom left and click on the "Mask" icon)
    You are looking down a stairwell, follow the staircase (to the left) with its gallery of famous scientists until #12 and #13 (Arago and Somerville) in the corner at the second landing, above the right hand marble piller.
    With a tablet the hotspot icons get smaller in the corner (effect exagerated) which is wiat we want.
    With the headset the 3D is correct, the corner hotspot is smaller AND APPEARS to be further from the viewer, and closer to the background pano, good!
    However move your head and the hotspot in the corner moves MORE than the closer ones nearby, For the correct "illusion" it should move less.
    I have tried various settings and cannot find the one that effects this behaviour, but knowing krpano I feel it must be there!
    For the record I am using google cardboard and another mobile phone viewer VRBOX, although for testing I find it quicker to just look at a mobile phone with the IPD set for my eyes. I have miopic vision I can focus withour dioptic correction).
    If the resolution of this is not obvious I will produce a stripped down tour to demonstrate the problem, the example tour above is rather complex for a 3rd party to comment on should the answer not be obvious.
    Thank-you
    James

    Edited 2 times, last by james (September 13, 2018 at 11:29 AM).

  • Sorry, the depth issue is fixed!
    I was vieweing the images with the miopic naked eye but had the viewer set up with some distortion in the VR headset menu (about 0.5 units). For viewing without correction lenses in the VR glasses this should be set to zero!
    What I was seeing was not a feature of the krpano view but I correction feature of webVR viewing which should have been switched OFF!

    So what I learned here:
    1. Although the pano is flat webVR can be made to subliminally add depth to a tour
    2. With limited control, pop-out hotspots were activated as normal and then deactivated automatically after 6 seconds, a basic functionality over desktop adn tablets, but works well enough for headsets.
    3. showtext() isn't "compatable", producing one label (for two eyes). When VR is enabled I override the normal tour style to push the label into a unused corner (not centered), this means that the label is legable, even if only in "one eye", it STOPS it straddling both eyes and being unreadable.
    4. Primative text manipulation was added to remove wordy labels not suitable for webVR. As labels already have a BBcode BOLD heading then any text after the BBcode is removed. This makes the VR tour "lighter" in text, but it is a "different" kind of experience.

    5. the hotspot[].depth feature is used to subtly pass on a message about spacial perception by modifying the depth away from 1000 in a linear relationship, so for a squareroom 1000 would be the walls and 1400 the extreme corners. The stereo effect and diminishing size of the hotspots both re-enforce the panoramas perfpectives giving good subliminal clues.
    It is likely the test code (links above) will be released in a few weeks so the finished result, the birthplace of James Clark Maxwell can be found as a pano-tour with VR support

    Thanks Klaus
    P.S. Never Heard of Clerk Maxwell? Einstein summed it up very well. Einstein when asked said his work wsa not based on Newton, He said Clerk-Mazwell stood on the shoulders of Newton, and he on the shoulders of James Clerk-Maxwell.

    Edited once, last by james (September 13, 2018 at 8:42 PM).

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!