项目主页:http://code.google.com/p/droidar/。
设计原理:
系统界面分为三层:GUI控制元素层,AR对象层,Camera层。
三层图像都通过ArActivity::addContentView加入到ArActivity的成员FrameLayout中去。
FrameLayout在用户不做特殊偏移设置的时候,里面的内容是叠加显示的。所以这里的三层可以重叠起来。
为了实现深度的效果,AR对象层提供了GLCamera对象。其实质就是提供Z-axis上的偏移。
系统代码可以划分为三个部分:
视图部分,即前述的三层界面,代码里面称呼为Overlays。

CameraView和普通的Camera app类似,负责打开关闭camera,并将数据写到camera层。
控制部分,控制初始化AR对象层:

模型部分,这部分都是用于显示的对象。

界面的显示流程:
CustomGLSurfaceView
GLRender::onDrawFrame
World::draw
AbstractObj::draw
MeshComponent.setMatrixAndDraw
MeshComponent.draw。
本文详细介绍了如何利用OpenGL和AR技术在应用程序中实现深度视觉效果,包括AR对象层提供的GLCamera对象实现Z轴偏移,以及界面显示流程的详细解析。
1316

被折叠的 条评论
为什么被折叠?



