【问题标题】:Scenekit Grouped AnimationsScenekit 分组动画
【发布时间】:2015-02-27 20:34:27
【问题描述】:

我正在尝试从一个包含一些动画的 DAE 文件中提取动画。我想将动画分成几组,以便在时间轴中播放特定的动画。

我使用 WWDC 中的“剥皮”幻灯片作为参考,但它都在 Objective-c 中,我认为在尝试快速执行此操作时,翻译中丢失了一些东西。

我在场景中加载了我的角色,但是当我运行此代码时,动画没有运行。怎么回事?

 for animationID in animationsIDs {
            if let animation = sceneSource.entryWithIdentifier(animationID, withClass: CAAnimation.self) as? CAAnimation {
                var maxDuration = max(maxDuration, animation.duration);
                longAnimations.append(animation)
            }

        let longAnimationsGroup = CAAnimationGroup()
        longAnimationsGroup.animations = longAnimations
        longAnimationsGroup.duration = maxDuration


        let idleAnimationGroup :CAAnimationGroup = longAnimationsGroup.copy() as CAAnimationGroup
        idleAnimationGroup.timeOffset = 0.0
      _idleAnimationGroup.animations = [idleAnimationGroup]
        _idleAnimationGroup.duration = 1.0
        _idleAnimationGroup.repeatCount = FLT_MAX
        _idleAnimationGroup.autoreverses = true


        SCNTransaction.begin()

        self._character.addAnimation(_idleAnimationGroup, forKey: "animation")

        SCNTransaction.commit()

【问题讨论】:

    标签: ios animation scenekit


    【解决方案1】:
    1. 您的for 循环似乎缺少右括号。目前,您正在为每个 animationID 添加(并因此覆盖)带有键 "animation" 的动画

    2. _idleAnimationGroup 是如何以及在何处创建的?

    【讨论】:

      猜你喜欢
      • 2015-08-30
      • 1970-01-01
      • 2012-08-21
      • 2016-08-04
      • 2020-07-28
      • 1970-01-01
      • 2016-04-27
      • 2016-04-01
      • 2015-07-15
      相关资源
      最近更新 更多