使用SceneForm Arcore Android将文本添加到3D模型

时间:2018-12-14 00:47:07

标签: android augmented-reality texture-mapping arcore sceneform

我正在尝试使用arcore和sceneform构建应用程序。为此,我想将文本添加到3d模型中。文本应出现在模型中的特定位置。使用场景形式可以吗?

任何人都可以对如何进行操作提出建议吗?

1 个答案:

答案 0 :(得分:1)

可以使用ViewRenderable添加文本,该文本在1.7.0版的细丝版本中起作用,在某些较低版本中崩溃

Reference

Node tigerTitleNode = new Node();
      tigerTitleNode.setParent(model);
      tigerTitleNode.setEnabled(false);
      tigerTitleNode.setLocalPosition(new Vector3(0.0f, 1.0f, 0.0f));
      ViewRenderable.builder()
              .setView(this, R.layout.tiger_card_view)
              .build()
              .thenAccept(
                      (renderable) -> {
                          tigerTitleNode.setRenderable(renderable);
                          tigerTitleNode.setEnabled(true);
                      })
              .exceptionally(
                      (throwable) -> {
                          throw new AssertionError("Could not load card view.", throwable);
                      }
              );
    });

tiger_card_view.xml

<TextView xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_weight="1"
    android:background="@drawable/rounded_bg"
    android:gravity="center"
    android:orientation="vertical"
    android:padding="6dp"
    android:text="Tiger"
    android:textAlignment="center" />