【问题标题】:How to rotate an SCNNode, after I get the skinner and bones获得蒙皮和骨骼后如何旋转 SCNNode
【发布时间】:2019-07-23 20:24:27
【问题描述】:

我有一个从 Mixamo 服务获得的 DAE (COLLADA) 格式的操纵角色。

我正在尝试以编程方式为角色设置姿势,但没有成功。我编写了一个简短的程序,将角色最初的姿势从 T 姿势(直视前方)更改为转头姿势。如果我能走到这一步,我希望开始改变角色的位置(摆姿势)。

我有两种方法可以做到这一点。首先是让剥皮者找到头骨并将其旋转 45 度。第二个是获取蒙皮器并将动画应用到头骨。

我能够找到剥皮器、骨架和头骨的参考。当我旋转骨骼时,角色头部位置不会改变。然而,调试语句显示骨骼上存在旋转。如何让角色旋转头部?

我已经调查了皮肤https://developer.apple.com/documentation/scenekit/scnskinner的文档

角色在屏幕上,执行时 Xcode 中打印语句的输出显示骨骼的旋转,但头部没有转动。我错过了什么?

有一个 Xcode 项目的链接。
这是一个小例子,其中包括 DAE 和纹理。

https://drive.google.com/open?id=1sXGUzK0zVR0DeRjQ3rjdgf6Yf72peQvk

【问题讨论】:

    标签: swift xcode scenekit skinning


    【解决方案1】:

    我遇到了类似的问题。这些模型不需要剥皮器。你只需要删除所有的动画。在搅拌机中打开 dae 文件,然后删除动画。保存。将其导入您的项目中。再试一次!

    只是为了帮助您了解发生了什么:

    1. 以现有项目为例,将动画持续时间设置为 10 秒或更长的时间。
    2. 调整一些属性(将欧拉角或左上腿设置为某个值)。
    3. 运行您的项目 - 您会看到角度确实发生了变化,但完成后它会重置为原始 T 姿势。

    然后按照我上面的建议删除动画,并在导入模型后再次运行您的项目。

    这次你的模特将摆出新姿势! XD 感谢苹果为我们节省了这么多时间!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-12-16
      • 2015-05-24
      • 2013-07-20
      • 2022-11-21
      • 2012-02-12
      • 2021-01-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多