Java ARCore模型尺寸

Java ARCore模型尺寸,java,android,google-api,frame,arcore,Java,Android,Google Api,Frame,Arcore,我想把一个3D模型放到一个ARCore框架中,但是当我要放置模型时,它的尺寸太大了,不会出现在屏幕的中央。我不想轻触放置,应用程序会自动放置模型 Anchor newMarkAnchor = session.createAnchor(frame.getCamera().getPose().compose(Pose.makeTranslation(0, 0, -0.5f)).extractTranslation()); AnchorNode addedAnchorN

我想把一个3D模型放到一个ARCore框架中,但是当我要放置模型时,它的尺寸太大了,不会出现在屏幕的中央。我不想轻触放置,应用程序会自动放置模型

Anchor newMarkAnchor = session.createAnchor(frame.getCamera().getPose().compose(Pose.makeTranslation(0, 0, -0.5f)).extractTranslation());
                AnchorNode addedAnchorNode = new AnchorNode(newMarkAnchor);
                ModelRenderable.builder().setSource(getApplicationContext(), R.raw.imac).build().thenAccept(modelRenderable -> renderable = modelRenderable).exceptionally(throwable -> {Log.i("asdasdasd", "errore: "+throwable.getLocalizedMessage());
                    return null;
                });
                addedAnchorNode.setRenderable(renderable);
                addedAnchorNode.setParent(arSceneView.getScene());

使用3D软件检查模型的尺寸,在ARCore中,虚拟世界中的1个单位相当于真实世界中的1米


看起来您正在使用Sceneform,对吗?您可以通过
setWorldScale(Vector3)
setLocalScale(Vector3)

轻松缩放节点,这些都已使用setWorldScale(Vector3)尝试过,但不起作用。是的,我正在使用sceneform。有没有让对象显示在屏幕中央的解决方案?对象显示在哪里?我建议将你的两个目标分开:首先将你的物体放在世界原点(0,0,0),一旦大小和位置合理,就把它放在相机前面。但是你想让它跟在摄像机后面并且总是在屏幕中央吗?如果是这样,则需要调整其在每个帧上的位置。