[关闭]
@gnat-xj 2015-11-17T02:37:44.000000Z 字数 1709 阅读 3837

全景漫游(已经备份)

three.js panorama


via Three.js



1. WebGL + HTML5 + THREE.js

WebGL & HTML5
webgl + html5

Three.js
<code>three.js</code>

Pros:

Cons:

2. Three.js 流程

camera, {objects(mesh = geometry + material)} => scene
=> renderer => container(html-elment)

01YYrMaASOzm.small未知大小

3. Demo (panorama / equirectangular)

demo
panorama.png
source img
panorama-source-small.jpg
source code

  1. var camera, scene, renderer;
  2. var container, mesh;
  3. container = document.getElementById( 'container' );
  4. camera = new THREE.PerspectiveCamera( 75, window.innerWidth / window.innerHeight, 1, 1100 );
  5. camera.target = new THREE.Vector3( 0, 0, 0 );
  6. scene = new THREE.Scene();
  7. var geometry = new THREE.SphereGeometry( 500, 60, 40 );
  8. geometry.applyMatrix( new THREE.Matrix4().makeScale( -1, 1, 1 ) );
  9. var material = new THREE.MeshBasicMaterial( {
  10. map: THREE.ImageUtils.loadTexture( 'textures/2294472375_24a3b8ef46_o.jpg' )
  11. } );
  12. mesh = new THREE.Mesh( geometry, material );
  13. scene.add( mesh );
  14. renderer = new THREE.WebGLRenderer();
  15. renderer.setPixelRatio( window.devicePixelRatio );
  16. renderer.setSize( window.innerWidth, window.innerHeight );
  17. container.appendChild( renderer.domElement );

图片的另一种方式:
p{x,y,z}, n{x,y,z}: positive direction, negative direction of {X,Y,Z}-axis
X-axis
px & nx
Y-axis
py & ny
Z-axis
pz & nz

载入其他数据:3ds Max,Maya,Blender,CAD,点云、octree,etc => JSON

4. 江苏大学 StreetView

JSU.png

有的 & 没有的

数据:src/data/scenes.json

  1. [{
  2. "title": "校大门",
  3. "location": [119.525273, 32.199919],
  4. "type": "sphere",
  5. "src": "data/ujs/2f8bc20ba2395ad2c03f7d9576fb4cdc24936b34.jpg",
  6. "thumbs": "data/ujs/2f8bc20ba2395ad2c03f7d9576fb4cdc24936b34.thumb.jpg"
  7. },
  8. ...
  9. ]

5. 怎么改,讨论可行性

6. Frontend


》完《


  1. log: $1. Sat Jan 10 18:50:18 CST 2015; $2. Sat Jan 31 16:18:34 CST 2015;
添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注