gpt4 book ai didi

java - 关于顶点着色器中骨骼动画的困惑

转载 作者:行者123 更新时间:2023-12-01 14:20:06 25 4
gpt4 key购买 nike

我发现有一些非常相似的问题,但这些问题主要与性能有关。如果有人能花时间解释我如何将当前拥有的内容实现到顶点着色器中(对于动画,如标题所述),我将非常感激。

我有一个简单的 .FBX 文件阅读器,它提取以下内容:

顶点坐标(X、Y、Z);

顶点索引;

法线坐标(X、Y、Z);

就骨头而言:

骨骼名称附加到骨骼的顶点的索引;

每个顶点的权重;

骨骼的 4x4 矩阵阵列。 (不知道这是如何布局的,请解释一下!矩阵不是只保留1端的位置吗?)

<小时/>

感谢帮助!

最佳答案

看起来您可能遗漏了一些东西。最值得注意的是骨骼层次结构。

它通常的工作方式是,您有一个根节点,其变换向下传播到下一级“骨骼”,其变换传播,依此类推,直到到达“叶”骨骼或没有子节点的骨骼。该转换链是使用矩阵乘法完成的。

有几种方法可以变换顶点。有时它是通过预先确定的“影响”来完成的,并且通常从 3dsmax 等 3d 应用程序加载。

还有另一种简单明了的方法可以做到这一点。您只需计算从顶点到骨骼节点的距离即可。骨骼变形的影响与这个距离直接相关。

你所说的 4x4 矩阵不仅仅包含位置。它还保存旋转数据。它也有可能保存缩放数据,但这通常不用于蒙皮/骨骼应用程序。

让管弦乐队完美地一起演奏需要对矩阵数学/坐标系统有透彻的了解。我会买一本关于游戏编程 3D 数学主题的书。任何有值(value)的书都会有一整节专门讨论这个主题。

关于java - 关于顶点着色器中骨骼动画的困惑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17686149/

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