Skip to content

Sanchez3/panorama

Repository files navigation

Panorama全景

实现

DeviceMotionAndOribitControls.js

利用 DeviceMotionEventDeviceMotionEvent.rotationRate ,加上 Touch交互。

DeviceOrientAndOribitControls.js

基于 OrbitControls ,加上 DeviceOrientation ,但是目前存在问题万向节死锁(待解决)。

DeviceOrientationControls.js + Photo Sphere Viewer

利用 DeviceOrientationControls.js 完成陀螺仪转动 Photo Sphere Viewer 完成touch交互(但是无法上下交互) demo

方法

技术要点

重力传感器和方向传感器都是派生传感器。重力传感器基于加速度传感器;方向传感器主要基于陀螺仪和磁力计,但主要还是基于陀螺仪。

JS插件:

工具

实测

Canvas渲染,即new THREE.CanvasRenderer(); ,利用 Canvas 2D Api。手机端效果极其不好,iphone6s fps不到10。

WebGL渲染,即new THREE.WebGLRenderer();,利用 GPU渲染的着色器。手机端性能不错,iphone6s fps30-60,无明显卡顿。

CSS3 3D渲染,即new THREE.CSS3DRenderer();,利用 CSS3 3d transform,同样利用GPU加速。手机端效果不错,iphone6s fps60,流畅。

参考

高冷的WebGL

threeVR

3D图形:矩阵、欧拉角、四元数与方位的故事

Web方向传感器的正确使用姿势

Releases

No releases published

Packages

No packages published

Languages