什么是好的网格动画技术?

时间:2011-09-10 18:12:55

标签: c++ animation mesh

我想创建一个2D游戏,将怪物构建为自定义顶点网格和纹理贴图。我想使用这个网格来提供平滑的矢量动画。我正在使用opengl es 2.0。

现在我最好的想法是编写一个简单的编辑器,我可以通过改变每个顶点的位置并指定关键帧插值技术(线性,二次曲面等)来创建网格并制作基于关键帧的动画。上)。

我对骨骼动画(以及基于骨骼的皮肤)也有一些了解,但我不确定我是否能够为我的怪物提供一个好的骷髅。

我不确定这是一个好方法。你能为这样的网格动画建议一些更好的想法和/或编辑器库吗?

PS:我现在正在使用C ++,所以c ++库是最受欢迎的

1 个答案:

答案 0 :(得分:2)

你说这是一个2D游戏,所以我假设你的角色是平面多边形,你应用了纹理贴图。如果不是这样,请在您的问题中添加更多详细信息。

就C ++部分而言,我认为用于3D混合形状动画的相同原理可以应用于这种情况。对于每个角色,您将拥有一个可能的“变形目标”或姿势列表,每个变形都是具有相同顶点数的不同多边形形状。角色的AI将决定何时从一个变为另一个,以及过渡需要多长时间。因此,在任何给定的时间点,你的角色可以处于固定状态,匹配你的一个变形目标,或者它可以处于两个姿势之间的过渡状态。第一种情况没有问题,第二种情况是通过逐个插入两个多边形的顶点来处理到一个变形的多边形。您可以从线性插值开始,看看是否足够,我怀疑您可能希望至少将一个缓动函数应用于转换的开始和结束,可能是smoothstep函数。

就创作这些字符而言,您是否考虑过使用Blender?您可以在此包中完全设计和测试角色,然后将网格导出为可以轻松导入游戏的.obj文件。