这个问题实际上与皮肤有关。 假设我们有一个顶点组(骨骼)作为浮动缓冲区的模型,我们将它传递给着色器。有没有办法部分旋转顶点组? 缓冲区是x,y,z,u,v,n1,n2,n3,boneid,rotfactor。 (rotfactor是一个浮点数,表示我们要应用于此顶点的%旋转量)。因此,如果使用角度= 45的旋转矩阵旋转组,是否有任何方法可以旋转每个顶点45 * rotfactor? 感谢。
答案 0 :(得分: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
。