我使用Adobe Air for Android,FLARManager,Away3DLite为Android实现了增强现实应用程序。 该程序在flash上工作正常,但是当我在手机上发布它(HTC Nexus One)或在模拟器上运行时,我的相机不会激活,我只能看到背景颜色和帧率显示。 / p>
我认为问题是我使用过的Camera3D,它是FLARManager的FLARCamera_Away3DLite。
这就是我设置相机的方式
import com.transmote.flar.camera.FLARCamera_Away3DLite;
private var camera3D:FLARCamera_Away3DLite;
this.camera3D = new FLARCamera_Away3DLite(this.flarManager, new Rectangle(0, 0, this.stage.stageWidth, this.stage.stageHeight));
我真的很感激你能从中获得任何建议。
谢谢乔治
答案 0 :(得分:3)
我认为你认为相机类错了。您使用的相机类是“虚拟”3D世界中的相机,它正在拍摄您的3D世界。然后它制作的“电影”进入View类,可以将你的3D世界显示为2d。您的屏幕是2d屏幕,无法显示3D。相机类与视图相结合可将3D场景转换为屏幕上显示的2D图像。
但是,既然你想制作AR应用程序就意味着手机的相机。你不能使用Away 3d相机类。 This tutorial显示如何在闪光灯中使用手机的相机。
您要采取的步骤是获取手机摄像头,然后在屏幕上显示。然后使用FLARtoolkit确定标记的位置。然后将3D模型调整到标记的位置。最后但并非最不重要的是在屏幕上显示3D模型(使用away3d / papervision相机和视图)。所以基本上你在你的Flash应用程序中有2层。 1个背景图层是您的phonecamera的源,另一个图层(在它上面)是来自away3d或papervision的视图。
我认为如果你结合这些教程,你就可以开始申请: