mattdesl / mattdesl/google-panorama-equirectangular

New tiles system in GSV & threejs update

Open
#10 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
JavaScript
Stars
188
Forks
28
PR merge metrics
No merged PRs in 30d

Description

Hi, thanks for this helper!

Apparently the new panorama tiles system use much more tiles and higher quality so the getTileData send wrong value and the panorama show up only 1/4 of the full image.

Example at `let location = [48.8296942, 2.2615041]`

Quick fix before exploring more the problem on a larger panorama sets.
```
//getPanoramaTiles
var data = getTileData(zoom, opt.tiles)
data.rows*=2
data.columns*=2
```
```
gl.bindTexture(gl.TEXTURE_2D, handle)
gl.texImage2D(gl.TEXTURE_2D, 0, gl.RGBA, 8192, 4096,0, gl.RGBA, gl.UNSIGNED_BYTE, null)
```

also to make the gpu example work for the current threejs ( v117 )
```
renderer.initTexture(tex)
let gl = renderer.getContext()
let handle = renderer.properties.get(tex).__webglTexture
```

Contributor guide

No contributing guide indexed for this repository

Research direction

Start at getPanoramaTiles and getTileData, then inspect the GPU example's texture initialization and WebGL context access. Reproduce the Paris location case and compare the tile dimensions with the panorama output. Done means the full panorama renders with the newer tile system and the GPU example works with three.js v117.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript, threejs
Domain
computer-graphics, frontend
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.