【问题标题】:How to scale 3D object vertically (along y-axis) in Swift?如何在 Swift 中垂直(沿 y 轴)缩放 3D 对象?
【发布时间】:2018-12-22 02:32:57
【问题描述】:

我用 ARKit 创建了一扇门,我想创建一个比例动画。我的目标是仅沿 y 轴缩放它(将门拉长)。 我希望门在 1 秒内增长。

我的方法是简单地缩放它,但我只有一些选项可以让我沿所有 3 个轴缩放整个对象。

接下来我尝试了node.scale = SCNVector3(0, 2, 0),效果不错,但它没有很好的动画效果。当我创建一个SCNAction() 并将代码作为具有持续时间的块运行时,它仍然只是改变大小而没有任何平滑动画。

【问题讨论】:

    标签: ios swift scaling arkit scnnode


    【解决方案1】:

    您需要使用SCNTransaction。动画节点缩放的最简单方法是这样的:

    SCNTransaction.begin()
    SCNTransaction.animationDuration = 3
    node.scale = SCNVector3(0, 2, 0)
    SCNTransaction.commit() 
    

    您可能还需要修改节点的pivot 属性以正确定位动画。

    【讨论】:

      猜你喜欢
      • 2013-08-13
      • 2018-05-15
      • 1970-01-01
      • 2017-01-15
      • 2023-03-15
      • 2017-08-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多