我目前正在为Android使用ARCore。我们的用例是在ARCore中加载更大的模型,该模型的大小与两层以上的建筑物相同。这个大型模型将扩展到建筑物的多个楼层。
当我们加载大型模型时,默认情况下会将其缩放为较小的尺寸,并且我们无法缩小以映射/匹配不同楼层的模型。 当我们尝试设置node.getScaleController()。setMaxScale(50f);时模型会放大并隐藏在特定点。
AnchorNode anchorNode = new AnchorNode(anchor);
TransformableNode node = new TransformableNode(fragment.getTransformationSystem());
node.getScaleController().setMinScale(0.01f);
node.getScaleController().setMaxScale(50f);
node.getScaleController().setSensitivity(0.1f);
node.setParent(anchorNode);
node.setRenderable(renderable);
node.select();
fragment.getArSceneView().getScene().addChild(anchorNode);
我们找到了一个与我们的用例相似的youtube链接,不幸的是,它在ARKit中并使用了.scn格式的模型。 https://www.youtube.com/watch?v=FG5SztPF2uY
有人可以建议这在Arcore中是否可行。 共享一些代码片段以扩展此更大的模型将非常有帮助。
注意:我们的模型采用.obj格式,并转换为.sfa和.sfb,以便在ARCore中使用。
答案 0 :(得分:0)
设置好您正在使用的最大和最小比例值后希望
public void setLocalScale(Vector3比例尺) 设置此节点相对于其父节点(局部空间)的比例。如果isTopLevel()为true,则与setWorldScale(Vector3)相同。