Обычно ARCore и Sceneform настроены на обнаружение «плоскостей», а затем на прикрепление к этим плоскостям привязанных и визуализируемых объектов.
Ваше приложение звучит так, как будто у него не будет плоскостей, поэтому вы можете найтимногие механизмы, документация и примеры ARCore не будут такими полезными для вас, как вы, возможно, захотите.
Однако, если у вас есть точка, можно прикрепить объект привязки и визуализации к точкеправильные координаты.
Следующий код из этого обсуждения https://github.com/google-ar/arcore-android-sdk/issues/110, позволяет вам разместить объект перед камерой, например:
mAnchors.add(session.createAnchor(
frame.getCamera().getPose()
.compose(Pose.makeTranslation(0, 0, -1f))
.extractTranslation()))
Если выВ эксперименте вы обнаружите, что вы можете настроить координаты x, yaz в методе Pose.makeTranslation для размещения объектов там, где они вам нужны.
Вам не нужно использовать камеру, как указано выше, еслиу вас есть поза, вы можете добавить визуализируемый объект - см. пример ниже:
Frame frame = arFragment.getArSceneView().getArFrame();
myAnchor = session.createAnchor(myPose.extractTranslation());
myAnchorNode = new AnchorNode(myAnchor);
myAnchorNode.setRenderable(myRenderable);
myAnchorNode.setParent(arFragment.getArSceneView().getScene());