Android vr开发学习之路(一)

  • Post author:
  • Post category:其他




近来因为公司需要而研究了android上面vr开发。目前主要还是vr里面全景视频的播放,以及一些简单的交互。希望大家可以互相学习,共同进步。



开始了解vr相关知识感觉无从下手,先从市场上找了已经投放市场的应用,看看他们的效果。毕竟2016年是vr最火最热的一年。然后找了一些框架来查看使用。



在此过程中也开始接触了opengl ES2.0,  以及与android camera 结合在glsurfaceview的过滤显示,以及android 的矩阵处理。



首先对于相机视觉的设置  ,有android 自带的 Matrix里的setLookAtM 函数以及 OpneGI里面的gluLookAt函数,但是 后者不需要改变结果矩阵,改变的是相机的位置,前者求得的结果矩阵rm需要乘到物体坐标变换矩阵前,实际上是通过改变物体位置来实现相对位移来改变视角。

pitch、yaw、roll 3着之间的关系,可以根据手机方向传感器(目前是被google标注为deprecated,建议通过getOrientation()来获取)来理解,根据方向传感器得到结果是x轴旋转角度、y轴旋转角度、z轴旋转角度。我们根据这3个旋转角度可以Matrix.setIdentity 初始化一个单位矩阵,在使用rotateM进行矩阵旋转设置,通过调用矩阵相乘 得出结果矩阵,通过与当前camera矩阵相乘及当前模型所处位置转化为实际的物体矩阵。

这一块的逻辑处理成功与否关系到最后物体展示的效果好坏,通过相机我们也可以进行缩放的大小设置。



版权声明:本文为sdfa1ye原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。