Posts by NiekBrunninkhuis

    I tried BiFuse (Github / Paper) with promising, but messy results:

    It's a python script that estimates depth in monoscopic 360° panoramas. Of course there are numerous glitches in each photo, and it doesn't combine multiple depthmaps to a single 3D model. I guess those drawbacks could be solved with software.

    I connected the hotspot size to the stage size like this (btw, I prefer scale over width, so the dimensions remain the same):


    It kind of works, but it feels quite hacky.

    Klaus, can you help me out? Is there a logic behind the flying hotspot sizing? And is it possible to elegantly connect hotspot size to stage size?

    Thanks!

    Do you want to make the hotspot width equal to the stagewidth? Just set the width to 100%


    That's exactly what I'd like to do, but setting percentages only works on layers. Right?

    I dug a little deeper into this forum. 10 years ago, Klaus said:

    sorry, but that's not possible yet,
    the size of the (distorted) hotspots is always relative to the pano size,
    the size of the plugin not,


    Is this still the case, Klaus? Can't flying hotspots be sized relative to the stage size?

    Hi,

    I'm trying to set the width of a flying hotspot to the stagewidth:

    While it does set the width of the hotspot, the results are different among various devices (tested on Chrome on Mac, iPad, Pixel smartphone). Do I have to correct for certain device properties? I tried to find a connection to device.pixelratio, but I couldn't find any.

    Figured it out! The following code puts a hotspot on the location the VR controller clicked.

    Hi,
    can you share the final code with us?


    Sure!

    I added this JS function to the page krpano is embedded on:

    Code
    function bearing(hlookat,vlookat,ath,atv) {
    	const phi_1 = vlookat * ( Math.PI / 180 );
    	const phi_2 = atv * ( Math.PI / 180 );
    	const delta_lambda = (ath - hlookat) * ( Math.PI / 180 );
    	const x = Math.cos(phi_1) * Math.sin(phi_2) - Math.sin(phi_1) * Math.cos(phi_2) * Math.cos(delta_lambda);
    	const y = Math.sin(delta_lambda) * Math.cos(phi_2);
    	const theta = Math.atan2(y, x);
    	const bearing = theta * (180/Math.PI);
    	return -bearing;
    }

    ... and accessed the function in krpano this way:

    Cheers

    Take the test with the webm. You can use: https://krpano.com/plugins/videoplayer/#preferredformat


    Thanks! The green line is gone, but unfortunately there's still a misalignment:

    This only happens on Chrome for Android. The alignment on other browsers (Chrome, Firefox and Safari on a Mac, Safari on iOS and the Oculus Browser on an Oculus Go) I tested with is pixel perfect.

    Oh, and important thing - renderer="css3d" or renderer="webgl"?


    WebGL, because it has to work in VR.

    I'm creating an arrow (hotspot[arrow]) that points to a hotspot (hotspot[cross]). Right now, using the code below, it looks like this:

    The arrow should always be pointing to the center of the cross, but it doesn't. I guess I'm over complicating things in my code. So, do you have any suggestions how to approach this?

    Thanks!

    I'm trying to replace this code with the new shorter syntax:

    This is what I thought would be the new syntax, but it doesn't work. Tiles are being displayed too large or too small.

    Code
    <image prealign="0|0|0">
    	<cube url="data/photo1/%s/l%l/%v/l%l_%s_%v_%h.jpg" multires="512,512,1024,2048" />
    </image>

    What am I doing wrong?