0

这个问题实际上是关于剥皮的。假设我们有一个带有顶点组(骨骼)作为浮动缓冲区的模型,我们将它传递给着色器。有没有办法部分旋转顶点组?缓冲区是 x,y,z,u,v,n1,n2,n3,boneid,rotfactor 。(rotfactor 是一个浮点数,表示我们要应用于此顶点的旋转百分比)。因此,如果使用角度 = 45 的旋转矩阵旋转组,有没有办法将每个顶点旋转 45 * rotfactor?谢谢。

4

1 回答 1

0

这非常详细地描述了您正在尝试做的事情:

http://www.opengl.org/wiki/Skeletal_Animation

注意这一行:

uniform mat4 Bone[10];  //Array of bones that you compute (animate) on the CPU and you upload to the shader

正如它所暗示的,您需要为每个骨骼计算一个矩阵。您将在 CPU 端的应用程序代码中执行此操作,即不在着色器中。然后,您会将这些矩阵传递给统一变量Bone

于 2012-11-12T19:03:54.510 回答