单骨(矩阵调色板)动画与零件的简单旋转/平移

时间:2011-04-30 19:48:46

标签: android opengl-es

首先,我使用的是OpenGL ES 1.1而不是2.0,主要是因为我花了不少时间学习1.0 / 1.1并且对它很满意。

我花时间学习使用矩阵调色板进行动画制作,在项目上切换后,我提出了一个问题。

最初我使用2和3骨骼动画,因为我需要为某些顶点组加权。现在......在我正在研究的新项目中,我将动画更多机械动作,因此不需要超过1个骨骼或重量。我还想使用矩阵调色板,其顶点加权100%到单个骨骼...但我想知道这是否会导致性能下降。相反,我可以将网格分成更小的部分,并在元素绘制调用之间进行简单的平移和旋转。当然,我担心的是表现。

1 个答案:

答案 0 :(得分:1)

TL; DR版本:尝试两种方式,看看哪种方式表现更好。

实际上,使用调色板进行单骨动画是可以轻松完成的,并且根据不同骨骼的数量,以及您在其上执行的设备上的驱动程序开销,可能会表现得更好。

值得注意的是,在单骨骼模型中可以忽略权重,并且生成的每顶点代码通常应该与单个变换相当,以模糊指向调色板的方向。

当然,这取决于GL实施以优化加权。另一方面,骨骼数量越多,没有调色板就必须生成更多的绘制调用,并且对CPU /驱动程序代码征税越多。

所以在广泛的层面上,我会说调色板在每个顶点的工作量稍微多一点,但每个骨骼的工作量要少得多。引爆点取决于平台,因为这两种成本都会有很大差异。