游戏引擎
一,概述
引擎是游戏的核心, 同时也是最影响游戏开发的东西。
通常来说,业余制作不需要过多地考虑游戏的执行速度,故一般以易用及资源丰富的引擎为主。
目前游戏已经全面进入3D为主的时代,故眼下占据人们视线的引擎也多为3D引擎。本文列举其中的一些。
题外话:游戏的3D化一方面为游戏的工业化提供了有利的契机——资源的可重用性大幅上升以及更强的模块化——也为个人开发带来了更多的便利。
3,3D Gamestudio
这是目前比较流行的个人3D游戏引擎之一。
笔者没有用过,故不便发表评论。
这里是一位3DGS的用户的BLOG,在上面有许多3DGS的相关介绍及教程:
http://www.flashbinbin.com/default.asp?cateID=6
4,Blitz3D
笔者用得最多的3D引擎。
这是一家法国公司开发的基于DX7.0的3D引擎,虽然时至今日它的性能和特性已经无法和DX9的游戏相比较了,但因为这个引擎只需要你懂得Basic语言就可以使用,在结构上也很清晰简单,故有着相当厚实的用户基础。在它的社区里有着相当数量的资源可以使用,麻雀虽小,但五脏俱全,从图形界面到物理引擎整合,只要熟悉了,用这个引擎仍然可以制作接近甚至达到商业水平的游戏。
除却3D,这个引擎在2D的基本功能上也很完整。用Blitz3D所开发的一款RPG的场景截图:
www.beyondvirtual.com_gallery_ingame_assorted_mapping.jpg
5,Beyond Virtual
新兴的3D引擎…………因为笔者掏钱买了一份拷贝,所以就在这里说一下了。
这个引擎是由美国的一家公司所开发并在今年初发布的一款个人引擎(也有商业版本)。开发商一直在以个人开发为目标改进这款引擎。
从法线贴图、像素光照、物理引擎 、HDR及Stencil Shadow,这个引擎的特性已经基本达到了商业级别。
与一般的引擎设计思想有所区别,个人版的BV是用一种类似Game Factory的方式来操作的。虽然需要使用AngelScript(类型C的脚本语言)进行大量的编程,但引擎的结构让用户可以大大提高资源的重用性。在BV当中,用户需要为每个个体(从NPC到环境物体)编写行为,但这种编程工作不需要重复进行,比如:你在做这个游戏的时候设计了一辆完全可操作的汽车,在做另一个游戏的时候,你只需要把这辆车直接放进你的场景,它便可以正常地运转起来。
开发商目前仍然在为引擎增加新的特性(CG语言),新的物体模板等等。有理由相信BV会在将来成为个人制作的一个强劲工具。
在官方网站http://www.beyondvirtual.com上有BV的starter kit,是一个免费的试用版本,除了无法导出游戏以外,其他的功能都可以正常使用。我会考虑在将来做一些教程及文档的汉化工作。
用BeyondVirtual完成的游戏截图
www.beyondvirtual.com_gallery_ingame_assorted_mapping.jpg
6,Truevision 3D
TV3D是独立开发者非常熟悉的一个基于DX8的3D引擎的名字。
虽然这款引擎的新版本迟迟没有推出,但它的易用性和高效率让众多用户仍然没有办法弃其而去。
这款引擎除了支持VC之外,对VB的支持更是完整。
目前国内使用TV3D比较有名的小组是FS Software Studio,在那里也可以找到许多TV3D相关的教程等资源。
由FS Studio所开发的 梦幻战争II 截图
7,风魂+
由云风在N年前所制作的一款基于VC的2D引擎。因为笔者曾经使用过,故在此一提。
参见
XreaL:最先进的开源游戏引擎:XreaL项目是基于Quake 3 Arena修改版引擎的非商业多人射击游戏,目标是在渲染技术上能与当今的商业游戏一较高下,开发者声称它是当前最先进的开源游戏引擎。
现在很多Flash开发者都挺喜欢PaperVision3D的Flash扩展,也有很多Demo。不知道有没有开发者关注一个开源的3D Flash Engine项目叫做Sandy,我今天抽空看了一眼,感觉类库和文档都很齐全,尤其是还有分别对应AS1/2和AS3的版本,另外还加入了3dmax的 ase脚本文件渲染支持。用最快的速度试用了一下,感觉还好,唯一觉的渲染性能方面略有一些迟缓,不知道是我机器不行,还是没有做性能调教。有兴趣的朋友可以去试试:
SpriteCraft: Freeware 2D game engine