AR技术可以通过H5实现吗?不通过APP

原创
2016-06-07 08:42:53 3441浏览

回复内容:

可以,分两块
1. 摄像头输入以及视觉分析,通过 inspirit/jsfeat · GitHub
2. WebGL 三维渲染、模型动画,通过 mrdoob/three.js · GitHub

局限性是手机上的浏览器不支持摄像头,还得再等等。

微信 js-sdk 能拿到单张照片,但无法得到连续的摄像头视频,这意味着无法实现真正的实时 AR。

感兴趣的可以关注 黑客与画家 - 知乎专栏 看看亮风台他们的AR平台,虽然技术都是十几年前的拿过来做成了API,不过人家还是花了点功夫的。(我没用过,不知道效果如何ㄟ( ▔, ▔ )ㄏ Oculus + Node.js + Three.js 打造VR世界 |VR第一资讯 VR013

在尝试一个晚上的开发环境搭建后,我放弃了开发原生应用的想法。一是没有属于自己的电脑(如果Raspberry Pi II不算的话)——没有Windows、没有GNU/Linux,二是公司配的电脑是Mac OS。对于嵌入式开发和游戏开发来说,Mac OS简直是手机中的Windows Phone——坑爹的LLVM、GCC(Mac OS )、OpenGL、OGLPlus、C++11。并且官方对Mac OS和Linux的SDK的支持已经落后了好几个世纪。

说到底,还是Web的开发环境到底还是比较容易搭建的。这个repo的最后效果图如下所示:

效果:

  1. WASD控制前进、后退等等。
  2. 旋转头部 = 真实的世界。
  3. 附加效果: 看久了头晕。

现在,让我们开始构建吧。

Node Oculus Services

这里,我们所要做的事情便是将传感器返回来的四元数(Quaternions)与欧拉角(Euler angles)以API的形式返回到前端。

安装Node NMD

Node.js上有一个Oculus的插件名为node-hmd,hmd即面向头戴式显示器。它就是Oculus SDK的Node接口,虽说年代已经有些久远了,但是似乎是可以用的——官方针对 Mac OS和Linux的SDK也已经很久没有更新了。

在GNU/Linux系统下,你需要安装下面的这些东西的

freeglut3-dev
mesa-common-dev
libudev-dev
libxext-dev
libxinerama-dev
libxrandr-dev
libxxf86vm-dev
有demo,但是还有局限,欢迎一起研究 推荐three.js
声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。