动态动作系统——一种全新的游戏人物动作制作思路
2012-09-02 16:06
253 查看
http://blog.csdn.net/zwywilliam/article/details/2392598
在游戏开发中,以前我们做人物的动作都是直接在3dsmax做好动画然后放到游戏里头,人物该做哪个动作就放哪段动画。但随着游戏越来越复杂,这种制作方法的问题也变得显著:
1.每次制作新游戏都要为人物重新制作一套动作。
2.人物的动作很重复,例如打飞怪物,那只怪物摔来摔去都是重复一两个摔的动作。
3.为了模拟一些物理效果,动画师需要花大量功夫预先在3dsmax制作出这些效果。例如马奔驰时候的上下颤动,还有物体砸到地上弹跳的效果。
近来发展得不错的物理引擎一定程度上解决了这些问题。例如现在游戏里人物死掉躺在地上不会再出现cs那种尸体穿墙的情况。不过这仅仅是解决了物理的问题。人物还是没有什么智能,还是要由游戏设计者一步一步指定他做什么动作。
于是牛津大学里就出现了一个项目,现在已经成为了一个叫euphoria(http://www.naturalmotion.com/euphoria.htm)的动作引擎。从它的演示中可以看到人物会随着环境的变化自动做出反应,而不是再像以前那样播放一段预先做好的动作。例如轻轻给人物一个力,他会退后两步;给他一个巨大的力他会摔倒;一个箱子砸下来他会去看并且闪躲,甚至会被箱子绊倒。
这个引擎的原理在于引擎拥有一套内置的“行为(behaviour)”系统,通过设置一些环境以及一些事件(例如给他一个力,或者用一个物体砸过去),系统会根据这些条件合成各种已经定义好的一些人物动作,并且由物理引擎保证这些动作的合理性。所以游戏制作者免除了很多设计人物动作的工作,就能做出极其生动的人物动作。
更简单的说,就像是一个专门用于人物动作的“人工智能引擎”。
目前这个引擎已经应用在一个著名的游戏——GTA4。
在游戏开发中,以前我们做人物的动作都是直接在3dsmax做好动画然后放到游戏里头,人物该做哪个动作就放哪段动画。但随着游戏越来越复杂,这种制作方法的问题也变得显著:
1.每次制作新游戏都要为人物重新制作一套动作。
2.人物的动作很重复,例如打飞怪物,那只怪物摔来摔去都是重复一两个摔的动作。
3.为了模拟一些物理效果,动画师需要花大量功夫预先在3dsmax制作出这些效果。例如马奔驰时候的上下颤动,还有物体砸到地上弹跳的效果。
近来发展得不错的物理引擎一定程度上解决了这些问题。例如现在游戏里人物死掉躺在地上不会再出现cs那种尸体穿墙的情况。不过这仅仅是解决了物理的问题。人物还是没有什么智能,还是要由游戏设计者一步一步指定他做什么动作。
于是牛津大学里就出现了一个项目,现在已经成为了一个叫euphoria(http://www.naturalmotion.com/euphoria.htm)的动作引擎。从它的演示中可以看到人物会随着环境的变化自动做出反应,而不是再像以前那样播放一段预先做好的动作。例如轻轻给人物一个力,他会退后两步;给他一个巨大的力他会摔倒;一个箱子砸下来他会去看并且闪躲,甚至会被箱子绊倒。
这个引擎的原理在于引擎拥有一套内置的“行为(behaviour)”系统,通过设置一些环境以及一些事件(例如给他一个力,或者用一个物体砸过去),系统会根据这些条件合成各种已经定义好的一些人物动作,并且由物理引擎保证这些动作的合理性。所以游戏制作者免除了很多设计人物动作的工作,就能做出极其生动的人物动作。
更简单的说,就像是一个专门用于人物动作的“人工智能引擎”。
目前这个引擎已经应用在一个著名的游戏——GTA4。
相关文章推荐
- 动态动作系统——一种全新的游戏人物动作制作思路
- 游戏系统开发笔记(一)——立项、分工和制作基础
- 开发rpg制作游戏用的角色人物素材图片,《石器时代》,共20张图片
- 一起谈.NET技术,ASP.NET MVC 2生成动态表单的一种最简单的思路
- cocos2d-x 如何制作一个类马里奥的横版平台动作游戏续 2
- 用Construct 2制作游戏时的图层和人物设置
- ASP.NET动态网站开发培训-22.论文管理系统(二、制作论文标题页面)
- DirectX3D游戏制作之---3D场景的渲染及人物动画的显示
- Unreal Open Day 2017 参会总结——ACT(动作)游戏制作经验分享
- 游戏任务系统设计思路
- 使用PHP制作新闻系统的思路
- 制作 macOS Sierra 正式版U盘USB启动安装盘方法教程 (全新安装 Mac 系统)
- MOBA游戏草丛系统的个人思路
- 安卓系统是谷歌公司制作的一种面向手机以及部分电脑的操作系统。
- 【Windows 7系统中全新的游戏管理器】
- 一种可用于系统动态显示关于信息的方法
- 基于骨骼动画的生物拼接和人物动作系统设计
- ASP.NET动态网站开发培训-23.论文管理系统(三、制作论文内容页面)
- C++如何调用DLL呢,有两种,一种是静态,另外一种是动态,即通过调用windowsAPI 来加载和卸载DLL,具体思路:
- 一种终端应用动态适配智能终端屏幕的方法及系统