动态动作系统——一种全新的游戏人物动作制作思路

在游戏开发中,以前我们做人物的动作都是直接在3dsmax做好动画然后放到游戏里头,人物该做哪个动作就放哪段动画。但随着游戏越来越复杂,这种制作方法的问题也变得显著:
1.每次制作新游戏都要为人物重新制作一套动作。
2.人物的动作很重复,例如打飞怪物,那只怪物摔来摔去都是重复一两个摔的动作。
3.为了模拟一些物理效果,动画师需要花大量功夫预先在3dsmax制作出这些效果。例如马奔驰时候的上下颤动,还有物体砸到地上弹跳的效果。

近来发展得不错的物理引擎一定程度上解决了这些问题。例如现在游戏里人物死掉躺在地上不会再出现cs那种尸体穿墙的情况。不过这仅仅是解决了物理的问题。人物还是没有什么智能,还是要由游戏设计者一步一步指定他做什么动作。

于是牛津大学里就出现了一个项目,现在已经成为了一个叫euphoria(http://www.naturalmotion.com/euphoria.htm)的动作引擎。从它的演示中可以看到人物会随着环境的变化自动做出反应,而不是再像以前那样播放一段预先做好的动作。例如轻轻给人物一个力,他会退后两步;给他一个巨大的力他会摔倒;一个箱子砸下来他会去看并且闪躲,甚至会被箱子绊倒。
这个引擎的原理在于引擎拥有一套内置的“行为(behaviour)”系统,通过设置一些环境以及一些事件(例如给他一个力,或者用一个物体砸过去),系统会根据这些条件合成各种已经定义好的一些人物动作,并且由物理引擎保证这些动作的合理性。所以游戏制作者免除了很多设计人物动作的工作,就能做出极其生动的人物动作。
更简单的说,就像是一个专门用于人物动作的“人工智能引擎”。
目前这个引擎已经应用在一个著名的游戏——GTA4。

你可能感兴趣的:(动态动作系统——一种全新的游戏人物动作制作思路)