在Assimp中获取骨骼动画的变换矩阵

问题描述 投票:0回答:1

我正在学习如何操作一个模型,在 AssimpVisual Studio Express 2019 . 所以我加载一个模型,它有0个动画。我想对它的骨骼(比如手)进行一些变换,并在我导出的obj格式中看到它的效果。现在,为了在obj格式中看到效果,我必须对它的顶点进行改变,所以我必须在骨骼中分层应用变换。但我不明白,如何实现这一切。我看过OGLDev教程38,但无法理解。所以,任何帮助将被感激。

以下是我需要帮助的思路-&gt。

1. 如何将一些变换应用到一个骨骼和它的所有子代(考虑一个简单的人体模型)。

2. 如何获得受特定骨骼影响的顶点的最终位置,因为对于骨骼,我们只有变换矩阵,所以我如何将它们转换为X,Y,Z坐标来告诉顶点位置。

我没有使用OpenGL。

我想在Assimp中使用简单的C++代码来完成所有这些工作。

更多进度和困难细节请参考这里。Assimp中错误的骨骼旋转

visual-c++ mesh skinning assimp skeletal-animation
1个回答
0
投票

.obj格式不支持骨骼动画(或任何形式的动画)。你不能旋转不存在的骨骼。你需要使用支持骨骼动画的模型格式,并使用包含该数据的模型。示例格式包括.fbx、.gltf、.dae(COLLADA)。

© www.soinside.com 2019 - 2024. All rights reserved.