#Create a Multi Resolution Panorama viewer in R3F

14 messages · Page 1 of 1 (latest)

torpid socket
#

We need a expert R3F developer that can create a Multi Resolution Panorama viewer solution.
The main goal is to be able to load and view high resolution panorama images.
The best approach would be loading tile sets generated for example from krpano makepano tool (https://krpano.com/docu/tools/#makepano) using a LOD strategy to be able to zoom in(out with the camera, loading the correct levels of tiles.

pallid bolt
#

I’d come across this previously. A react wrapper around this would be trivial

torpid socket
#

I would need it to be a isolated component that i can use like <Canvas> <PanoramaMulti url={"panorama.tiles/"} /> </Canvas>
without creating a new camera, because i'm using orbit controls already.

pallid bolt
#

The "library" is a bit of a mess but can be easily re-written in TSX. Maybe a couple hours work. Ill look into it tonight

pallid bolt
#

The issue with OrbitControls is that, for PerspectiveCamera it modifies the camera position instead of camera.zoom so the camera ends up out of bounds of the Pano. If you parent the pano to the camera, then you might be able to find the "zoom" based off the distance from the original position (you will need to disable panning). But this seems hacky

The true solution is to create and use custom controls, like the lib currently does. OP, if youre intrested in working with me on this, DMs are open

Anyone else intrested in this, feel free to go ahead and take this up and use the above!!

torpid socket
#

Yes I'm interested in having this.
Here goes a example image panorama tiled with the correct folder structure I need (converted with krpano tool)
https://we.tl/t-uXSiRXHeQN

#

I'm using Orbit Controls from Drei, I wish it to be the most untouched it can, if it needs a custom implementation, well then I need to make sure it works in the drei ecosystem.
The more isolated the componet is, the better, so I would wish for it to not be attached to the camera

#

Ah, and this would need to work in webXR, so I think using some approach like camera distance would be better?

#

@normal thorn fyi.

normal thorn
#

Saw that one. Got a similar problem, too 😅

@pallid bolt is the best in such areas.

pallid bolt
#

As far as controls, it’ll pretty much be Orbit controls but only 3dof by disabling panning. We can figure out zoom after

I’m not sure how the zoom interaction will work in WebXR. Let’s discuss this in detail privately