游戏引擎

✍ dations ◷ 2024-12-23 21:28:47 #游戏引擎,电子游戏研发

游戏引擎是指一些已编写好的可编辑电脑游戏系统或者一些交互式实时图像应用程序的核心组件。这些系统为游戏设计者提供各种编写游戏所需的各种工具,其目的在于让游戏设计者能容易和快速地做出游戏程序,而不用由零开始。大部分都支持多种操作系统平台,如Linux、Mac OS X、Windows。大多数游戏引擎包含以下系统:渲染引擎(即“渲染器”,含二维图像引擎和三维图像引擎)、物理引擎、碰撞检测系统、音效、脚本引擎、电脑动画、人工智能、网络引擎以及场景管理等。

游戏引擎提供一系列可视化开发工具和可重用组件。这些工具通过与开发环境进行集成,方便开发者简单、快速进行数据驱动方式的游戏开发。为了提高游戏开发人员的开发效率,引擎开发者会开发出大量的游戏所需要的软件组件。大多数引擎集成了图形、声音、物理和人工智能等功能部件。游戏引擎会被称为“中间件”,因为它们可以提供灵活和重用平台,向游戏开发者提供所需要的全部核心功能,从而节省大量的游戏开发费用,降低开发的复杂性,缩短游戏的上市时间,所有这些对于高竞争性的游戏产业来说都是关键因素。诸如虚幻系列引擎、Unity3D、Frostbite Engine、zerodin引擎、Doom3引擎、CryENGINE、3DGame Studio、RenderWare、Gamebryo、Virtools以及Source引擎等引擎。

与其它中间件解决方案一样,游戏引擎通常提供平台抽象层,实现同一款游戏可以在各种平台上运行,包括游戏机和个人电脑,而只需要改动少量的源代码。一般来说,游戏引擎均设计成基于组件的架构,方便进行特定子系统的替换或者添加新的引擎中间件(通常成本较高)从而实现功能的扩展。比如Havok物理引擎、Miles Sound System声音引擎和Bink图形引擎等。一些游戏引擎如RenderWare引擎由一些松耦合的游戏中间件组成,可以根据需要定制出游戏引擎。通过组件技术,可以实现游戏引擎的扩展性,而扩展性通常是游戏引擎优先考虑的特性。游戏引擎经常会应用于交互应用的实时图像显示,比如营销演示、建筑可视化、训练模拟、环境建模。

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

一些游戏引擎只包含实时三维渲染能力,不提供其它游戏开发功能。这些引擎需要游戏开发者自行开发所需功能,或者集成其他现有的游戏组件。这此引擎通常被称做“图像引擎”、“渲染引擎”或者“三维引擎”,而非“游戏引擎”。这个术语的定义已经有些模糊,因为很多特征明显的三维游戏引擎被简称为“三维引擎”。一些图像引擎如:Genesis3D、Irrlicht、OGRE、RealmForge、Truevision3D和Vision引擎。现代游戏或图像引擎通常提供场景图形结构,该结构采用面向对象的方式表示三维游戏世界,方便进行游戏设计和高效渲染虚拟世界。

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

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

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

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

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

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

相关

  • 语序语序(英语:word order)是一种文法上的词汇的顺序,任何语言都有主词、受词、动词之分,因此就出现了语序和语法格的问题,多数的语言都有一种主要的语序,如汉语、英语等,但是有时不只有
  • 皮肤附属器附肢是一个在无脊椎动物生物学的名词,指一种从身体长出的自然延伸,与脊椎动物的四肢近似。不同功用的附肢会有不同的名称,例如:螯足、步足、触角、颚足、腹肢、尾节:213、生殖肢
  • 托勒密十五世托勒密十五世·菲洛帕托尔·菲洛墨托尔·恺撒(希腊语:Πτολεμαίος ΙΕ' Φιλοπάτωρ Φιλομήτωρ Καίσαρ,拉丁化:Ptolemaíos XV Philopátōr P
  • 军事管制军事管治或军事管制,指一个国家的军队直接控制国内的日常行政和管理。军事管治往往在一个国家的战争时期和非正常的和平时期出现,军队的直接管理方式往往限制公民的言论自由和
  • 大隅群岛大隅群岛(日语:大隅諸島/おおすみしょとう Ōsumi-shotō)位于日本九州鹿儿岛县大隅半岛佐多岬南方,是琉球群岛北部(萨南群岛)的一个群岛,属于鹿儿岛县。大隅群岛的主要岛屿包括种
  • 美国东部美国东部(英文:Eastern United States、the American East或the East)简称美东,是指美国密西西比河以东的州份。如果将美国分为东西两部分,密西西比河以西首两梯次的州份 (从北到
  • 史蒂芬妮 (比利时公主)史蒂芬妮(英语:Stephanie,1864年5月21日-1945年8月23日)是比利时公主和奥匈帝国皇储妃。她是比利时国王利奥波德二世和奥地利女大公玛丽·亨丽埃塔的女儿。1881年,史蒂芬妮在维也
  • 猫头鹰王国:守卫者传奇下面的转换组仅对“大陆简体”和“台湾正体”语言有效。请注意你的语言变种设置。 《猫头鹰王国:守卫者传奇》(英语:),2010年美国奇幻动画片,由扎克·施奈德首部执导动画片。改编
  • 星球大战VI:绝地归来《星球大战VI:绝地归来》(英语:)是一部1983年美国史诗性太空歌剧科幻片,由理查德·马昆德执导,乔治·卢卡斯和劳伦斯·卡斯丹编剧,卢卡斯同时也负责提供故事。为《星球大战V:帝国反
  • 1920法国铁路罢工1920年法国铁路罢工是在公元1920年发生于法国的一系列罢工。第一波罢工发生于1920年2月23日至3月4日,其中包括一个在巴黎有26000名铁路工人参与的行动。第二波罢工发生于当年