gpt4 book ai didi

java - 如何在 ARCore Sceneform 中为节点创建动画(更改缩放、旋转或位置)?

转载 作者:行者123 更新时间:2023-11-30 05:57:53 24 4
gpt4 key购买 nike

我在 Android Studio 中使用 ARCore Sceneform 库。当节点设置为启用时,我很难找到一种方法来对节点执行缩放动画(例如 Google 用于旋转太阳系中的节点的 Quaternion)。

//On Tap Listener
scannerVisual.setOnTapListener(((hitTestResult, motionEvent) -> {

// NodeAnimator arrow = new NodeAnimator(true);
//arrow.setParent(scanner);

Node arrowVisual = new Node();

//StackOverflow Solution
arrowVisual.setLocalPosition(new Vector3(0.5f, 0.0f, 0.0f));
arrowVisual.setLocalScale(new Vector3(0.03f, 0.03f, 0.06f));
arrowVisual.setRenderable(arrowRenderable);
arrowVisual.setParent(scanner);

// arrowVisual.setLocalRotation(Quaternion.axisAngle(new Vector3(0.0f, 1.0f, 0.0f), 90));
})
);

我有这样的东西。

最佳答案

您需要在设置节点的父节点之前设置节点的局部比例。代码应如下所示:

Anchor anchor = hitResult.createAnchor();
AnchorNode anchorNode = new AnchorNode(anchor);

node.getScaleController().setMinScale(0.5f);
node.getScaleController().setMaxScale(3.0f);

node.setLocalScale(new Vector3(2.25f, 2.25f, 2.25f));
node.setParent(anchorNode);

希望这有帮助。

关于java - 如何在 ARCore Sceneform 中为节点创建动画(更改缩放、旋转或位置)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52853552/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com