当前位置: 华文问答 > 游戏

不使用游戏引擎,如何开发游戏?

2014-04-15游戏

首先澄清引擎这个概念。

@kubisoft

提到引擎只会带来更出色的画面、更细腻的动画,是不全面的。这么说的话只是说到了「渲染引擎」而已。一个游戏,还有物理引擎、AI引擎等很重要的几个引擎。而所谓的引擎,很大的程度上,是一个」专注于某个功能的模块「。软件中有很多的模块,为什么只有渲染、物理等才被成为引擎,跟汽车的引擎一样,因为这个模块可能比较核心,在所有的组件中功能更有决定性,所以才被叫做引擎。有人可能会说,现在的游戏,决定性的是游戏的内容、逻辑,那为什么没有逻辑引擎这个说法。这个的关键之处在于,逻辑不能成为一个很通用的模块。所以,才没有逻辑引擎这个说法。

另外,严格的说来,引擎和解决方案是两个概念,对unity3d来说,即使官方也用engine的字眼,但是,如果硬要用引擎(engine)和解决方案(solution)来区分,那么其实unity3d更是一个solution,而不是engine。因为它本身包含了很多的engine(渲染、物理、AI、audio等),在这些engine的周围,又集成了一个团度协作需要的各种工具(动画、材质、物理、场景编辑器,以及打包发布工具等等)。相对而言,ogre更偏重是一个纯粹的engine:它只负责渲染。另外一个很好的案例是现在的cocos2d-x,原先它只是一个engine,后来它开始出编辑器了,那么慢慢就演变成一个完整的解决方案(现在显然还没有到这个级别)。

然后回到题目,回答是:直接写。甚至现在还有很多的公司还是直接写。基于OpenGL或者Direct3D,自己写场景的解析器,自己写渲染器。为了跟美术和策划合作,至少还得写一个场景编辑器,后来发现老是手工改材质配置非常繁琐或者是容易出错,就需要再写个材质编辑器。后来又发现缺个啥,再写个什么。如果完完整整都写下来,那么写出来的这些个工具,就成了一套完整的3d引擎了。现实中,有的游戏很小,根本不需要那么多的工具。有些公司很小,没有那么多的协作,或者各个力量都很牛,打开个文本编辑点东西不是什么问题,那么也就没有那么多的工具。因为最终目的是出游戏内容,而不是周边工具。

而游戏引擎,只是有人发现了这是个市场,所以专门针对内容开发团队做了相应的产品:保证他们可以协同,保证他们可以用不是很技术的方式产生高质量的内容,保证他们,如广告中所说」让开发团队只需要专注于内容的开发「。但是因为3d游戏引擎最好的卖点就是渲染,所以会比较注重渲染这一块的技术。