» 您尚未登录:请 登录 | 注册 | 标签 | 帮助 | 小黑屋 |


发新话题
打印

[实力男和装B男都可进]好好的问一个问题,游戏引擎到底指的是什么?

wiki上面的解释:

游戏引擎是电脑游戏或者一些互交式实时图像应用程序的核心组件。大部分都支持多种操作平台,如Linux、Mac OS X、微软Windows。游戏引擎包含以下组件:渲染引擎(即“渲染器”,又含2D渲染和3D渲染)、物理引擎、碰撞检测、音效、脚本引擎、电脑动画、游戏人工智能、网络引擎以及场景管理。


概况

诸如虚幻3引擎、Doom3引擎、CryENGINE2、RenderWare、Gamebryo, Virtools以及Source引擎提供一套可视开发工具,为了简化开发,这些工具通常整合到集成开发环境中。 游戏引擎也被称为 “游戏中间层” ,这是由于引擎开发商提供一套凌驾于硬件层于用户界面之间的可以重用的全功能封装,为引擎使用者减少独立开发费用,开发周期时间。使得使用者在竞争日益激烈的电脑游戏产业中赢得利益。

引擎作为一个中间层,他能够将同一个游戏表现在不同的游戏平台之上,诸如:个人电脑、PlayStation、PlayStation 2、PlayStation 3、Xbox、Xbox 360、Wii和任天堂游戏机。一些游戏引擎通常被设计为部分组件可以替换或增加新组件,从而增强引擎的表现能力。当然这样的引擎也会更昂贵。可用于增加功能的组件有用于物理计算的Havok,处理声音的FMOD,加快渲染速度的SpeedTree等。 一些引擎直接设计为组件分离,用户根据需要自己组装引擎组件比如RenderWare引擎。但这样的设计给引擎的开发带来了更高的难度,因为设计者要更多考虑各组件之间的协调问题。

游戏引擎还经常用在其他需要互动的领域,比如商业产品介绍,建筑效果预览,模拟训练等。

有些游戏引擎只含有渲染器。其他必要的游戏组件需要使用者自行开发,或者集成其他引擎中的现有组件。这样的通常叫做“图像引擎”、“渲染引擎”或“3D引擎”。 但很多全功能的引擎亦简称为“3D引擎”,比如RealmForge、Ogre、Power Render、Crystal Space以及Genesis3D。

硬件抽象

3D引擎的渲染系统通常建立在一套高级图像API之上,诸如Direct3D或OpenGL,这些API封装了GPU和显卡的部分功能。级别低一点的如DirectX、SDL和OpenAL也经常使用,他们提供对其他硬件设备的独立支持,诸如输入设备(鼠标、键盘、控制杆)、网卡、声卡。在硬件加速图形卡出现以前,开发者使用软件渲染。现在软件渲染依然被广泛用于非及时图像的渲染,或者是用户的硬件设备不支持硬件渲染。

中间层

一些引擎开发者以开发整个游戏引擎而著称,他们试图开发一个具有所有游戏元素的引擎,包括图像,声音,物理,人工智能。比如Gamebryo和RenderWare就是这样的引擎。

也有一些开发者只专注于开发引擎的某一部分,但他们取得的成就往往比全功能引擎还高。 SpeedTree就是一个很好的例子,他适用于大规模植被的渲染,被使用在Playstation 3、Xbox 360,微软开发的一些RPG,以及上古卷轴4:遗忘。

一些引擎提供完整的源代码,其他的只提供一个经过封装的API接口,使用者用过调用DLL文件来使用这个引擎。还有一些引擎将引擎于源代码分离,前者被免费授权使用,而后者则需要高额的费用来购买。

MMOG 中间层

MMORPG的中间层比单机版游戏的中间层更为复杂,但网络游戏的发展促进了这类引擎的开发。一些比较知名的引擎有:

    * Gamebryo
    * HeroEngine
    * BigWorld Technology
    * Kaneva Game Platform
    * Multiverse Network
    * Monumental Technology Suite
    * Project Darkstar
    * RealmCrafter

开发者

游戏引擎开发是一个比较热门的职业,他强调学科间的相互合作,诸如几何学、色彩理论、电脑程序等,主要集中在视觉科学领域。一些公司甚至以开发引擎为乐趣和技术追求,而不是用来卖钱。比如Crystal Space就是一个比较知名的免费开放源代码多平台游戏引擎。

前十名的优秀商业引擎是(独立游戏公司所使用的地低花费引擎)

    * Torque Game Engine
    * Truevision3D
    * 3DGameStudio
    * C4 Engine
    * Unity
    * Cipher
    * 3Impact
    * Reality Engine
    * Deep Creator
    * Eclipse Engine


TOP

我自己写的:

对于游戏来说,引擎是一个通用的底层接口库。通过引擎,开发者不需要直接对硬件进行控制,只需要关心游戏的具体实现。

引擎可能会包括数据读取、压缩/解压缩、控制、描绘显示、内存管理、脚本处理、关卡处理、动画管理、声音播放等等部分。也就是说,引擎不是只有图像处理的,类似脚本处理的内容也是相当重要的部分。只不过目前几年业界的焦点相对集中在图像上,导致很多人误解引擎就是处理图像的。

对于程序员来说,引擎就是一个写好的开发底层,使得程序员可以不用直接和硬件打交道。通过引擎中已经完善的过程,程序员能够更为方便的控制越发复杂的硬件。(想想PS2吧)

对于策划来说,一个好用的脚本系统/关卡设计系统能够使得开发事半功倍,想想星际、魔兽3里面的关卡设计工具吧。



TOP

引擎绝对不只是工具。

引擎是要被包含到成品当中的,是成品的一个组成部分。


TOP

简单来说,引擎就是一套写好的函数库,这样我们在开发游戏的时候,只要直接调用这些写好的函数,就能完成很多事情了。

而如果从头写这些函数的话,累死你,效果还不一定赶得上人家写的。

TOP

发新话题
     
官方公众号及微博