【问题标题】:gltf how do you deal with latice references?gltf 你如何处理 latice 引用?
【发布时间】:2021-02-27 06:16:29
【问题描述】:

我正在处理被操纵的人物 gltf:

不贴整个gltf,我会贴出相关节点:

      {
        "children": [
            21,
            1
        ],
        "matrix": [
            1.0,
            0.0,
            0.0,
            0.0,
            0.0,
            0.0,
            -1.0,
            0.0,
            0.0,
            1.0,
            0.0,
            0.0,
            0.0,
            0.0,
            0.0,
            1.0
        ],
        "name": "Z_UP"
    },
    {
        "mesh": 0,
        "skin": 0,
        "name": "Proxy"
    },

    ...

    {
        "translation": [
            0.0,
            0.06650590896606446,
            0.0
        ],
        "rotation": [
            4.2157907720330458e-10,
            0.9999844431877136,
            -0.005583992227911949,
            -7.549667913053783e-8
        ],
        "scale": [
            1.0,
            1.0000001192092896,
            1.0
        ],
        "name": "neck_joint_2"
    },
    {
        "children": [
            2
        ],
        "name": "Armature"
    }

所以节点 0 是节点 1 和节点 21 的父节点。但是节点 1 中的皮肤从节点 2 开始具有关节。即节点 1 中的皮肤是由节点 2 定义的骨架的“父节点”到 21 岁。

那么问题是,节点 0 中的变换是否应该两次应用于皮肤中的节点?

【问题讨论】:

    标签: json animation graphics gltf


    【解决方案1】:

    来自glTF Specifications — Skins...

    客户端实现应仅将骨架根节点的变换应用于蒙皮网格,而忽略蒙皮网格节点的变换。

    所以在这个示例中,节点 1 的继承世界变换不会应用于皮肤的关节/骨骼。换句话说,节点-皮肤关系不会对皮肤的关节应用任何变换。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-09-18
      • 1970-01-01
      • 1970-01-01
      • 2010-10-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多