【问题标题】:Android - How to draw 3D cube on a real scene (no marker, camera is open)Android - 如何在真实场景中绘制 3D 立方体(无标记,相机打开)
【发布时间】:2011-05-11 11:45:28
【问题描述】:

我知道我有一个基本问题,但我想不出在相机打开的情况下如何绘制立方体。我可以使用GLSurfaceView.Renderer单独打开相机或在场景中绘制一个带有背景的立方体,但是,我不知道如何组合这两个代码: s 我的意思是当相机打开时我不知道如何绘制立方体。


我还在为这个问题苦苦挣扎.. 这是我的尝试:

在 MainActivity 中,我将 camera view 称为:

Preview cameraPreview;
setContentView(R.layout.main);
    cameraPreview = new Preview(this);
    ((FrameLayout) findViewById(R.id.preview)).addView(cameraPreview);

我扩展了这个活动并调用 3D 立方体以显示在 相机视图

但是没有成功,

每当我在第二个方法中包含 onPause()onResume() 方法时,应用程序就会崩溃...

有什么建议吗?

【问题讨论】:

    标签: android opengl-es 3d android-camera


    【解决方案1】:

    这就是所谓的增强现实。在您的 xml 中创建一个 Framelayout 并通过其 id 在您的代码中添加 get 。然后将 SurfaceView 和 GlSurfaceView 添加到 FrameLayout。

    【讨论】:

      【解决方案2】:

      其他想法:

      步骤:
      1.使用SurfaceTexture类直接将相机流上传到OpenGL ES纹理
      2. 使用全屏纹理四边形将纹理渲染到屏幕(禁用深度缓冲区写入)
      3. 使用 openGL 在相机图像上绘制其他东西
      所以你要做的:在 GLSurfaceView 中绘制相机和 3d 的东西。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2022-11-10
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-12-25
        • 2015-11-08
        • 1970-01-01
        • 2015-03-30
        相关资源
        最近更新 更多