首页 > 解决方案 > 在 ARcore 移动应用程序中显示 .png 或 .jpeg 图像?

问题描述

我必须显示 2d 图像并且不想将 3d 对象与 .obj 文件一起使用。它甚至可能吗?怎么做?

标签: javaaugmented-realityarcoresceneformandroid-augmented-reality

解决方案


在您的情况下,您可以使用三种强大的方法来创建 Sceneform 的Renderable

  • 第一种方法是创建一个分配给它plane primitive.jpg.png纹理。

    ModelRenderable plane = ShapeFactory.makeCube(
                                         new Vector3(5.0f, 5.0f, 0.0f), // size
                                         new Vector3(0.0f, 0.0f, 0.0f), // center
                                         material);
    
  • 第二种方法是创建一个ViewRenderablefrom 标准Android Widgets

    ViewRenderable.builder()
        .setView(this, R.layout.test_view)
        .build()
        .thenAccept(renderable -> testViewRenderable = renderable);
    
  • 第三种方法是导入用 3d 创作工具(Maya、3dsMax、Cinema4D 等)制作的平面。

    ModelRenderable.builder()
        .setSource(this, RenderableSource.builder().setSource(
            this,
            Uri.parse(ASSET),
            RenderableSource.SourceType.OBJ)
            .setScale(2.0f)
            .setRecenterMode(RenderableSource.RecenterMode.ROOT)
            .build())
        .setRegistryId(ASSET)
        .build()
    

推荐阅读