浅谈製作游戏最重要的开发工具游戏引擎

在许多游戏的宣传文案中,总是可以在其中看到本作是由Unity或Unreal等游戏引擎开发的讯息,好像搬出了这些名词就会让游戏变得很厉害!对于这些有著帅气名字的的开发工具,是否真如其名,有了它就可以如催油门般的一路展开游戏的开发之路呢?以下将来简单地向玩家介绍游戏引擎这玩意儿。

UnrealEngine4开发介面

游戏引擎简介

根据维基百科上的描述,游戏引擎可被简单叙述为「一些已编写好的可编辑电脑游戏系统或者一些互交式实时图像应用程式的核心组件」。但其实概观一点的来看,游戏引擎就是一个程式库,负责帮助团队处理所有游戏开发相关的事宜。

在年代之前,游戏业界并没有像Unity这样广泛通用的开发工具,往往都是由游戏公司的程式人员自主开发类似的套件来製作游戏。当时间推进到年代后,当时最著名的第一人称射击游戏《德军总部3D》、《毁灭战士》与《战慄时空》均是出自于知名开发者JohnCarmack设计的游戏引擎上,倡导开源软体的他在当时大方地释出《雷神之鎚》等作品的原始码,成为早期推动游戏引擎发展的重要人物。

《德军总部3D》游戏画面

现在的游戏引擎五花八门,如专门打造3A游戏的Unreal引擎,或是横跨多平台,在手机游戏製作上相当受到开发者欢迎的Unity,这些引擎都包含了图形、声音、特效、编辑器等製作游戏所需用到的一切工具,并让开发者可能够在可视化的环境中工作。

用Unreal画面「一定」就会比较好吗?

许多厂商往往都会标榜自己使用了Unreal引擎打造,并保证带来绚丽的游戏画面,但用了看似比较「高级」的游戏引擎,真的就会如此顺利吗?那可不一定。相较于Unity这样「平易近人」的游戏引擎,Unreal从一开始就是瞄准欲打造3A级游戏的专案而生,因此在软体的调校上较为优秀,许多功能也得要使用者具备程式撰写能力才能完成,相较于Unity来说较难上手。但也因为这些先天条件的不同,相同的美术素材进入游戏引擎内进行所谓的二次加工后,出来的效果并不尽相同。

举例来说,Unreal引擎内建的全局照明解算器Lightmass可帮助开发者进行画面光影的渲染,开发者只要在场景中添加发光体便能产出细緻的阴影效果,玩家若是有玩过《无尽之剑》系列作品,便能感受到整个游戏世界光影变化的细緻度。Unity虽然是一套方便好用、强调容易上手的引擎,但伴随而来的代价便是许多东西都是固定好的模组,较难由开发者来进行最佳化。从上述的例子来看,开发者用Unity一样可以实现类似的画面效果,但可能必须先在外部用其他渲染软体实现类似的效果,再将完整运算好的成果导入开发专案中,或是寻找资源商店看有没有类似的工具可以套用,相对费时。

总结以上,可以发现Unreal确实有较先进的渲染功能,但也不是万能的,如果本来的美术素材品质就很差,或是开发者不够了解引擎的架构,即使使用Unreal也可能做出比Unity更差的画面。

终极解决方案-自製引擎

使用商业引擎固然省时便利,但这些开发套件并不是开源的工具,工程师没办法掌握到引擎的架构,因此若是碰到原厂无法支援的技术问题时,通常就会造成专案延宕。此外,当有些效果商用引擎无法做到时,自製引擎就成为了资深工程师的可行选项。事实上,有不少团队都使用自製引擎进行开发,其中又以独立团队居多,例如《说剑(日头游戏)》、《HeroEmblems(HeatPotGames)》、《兽魂战起来(猴子灵药)》以及《像素战机(QubitGames)》。其中QubitGames的Owen在3D游戏引擎的开发上有著20年的经验,不仅曾参与PC、XBOX、PS2、Dreamcast、GBA、Mobile等平台的引擎以及游戏开发工作,更曾在AMD担任图形工程师时协助EpicGames最佳化UnrealEngine3。

Owen自豪地表示先前参与开发的《魔武争锋》可说是台湾第一款XBox自製游戏

谈到自製引擎的原因,Owen表示由于先前在加拿大任职于AMD时经常接触最新的图形技术,因此便开始在下班后著手开发自製引擎LynxEngine。Owen指出这个引擎的特色在于可运算3D立体像素(Voxel),这一点透过市面上的商用引擎较难实现。由于是自製引擎,因此Owen很容易进行游戏画面的最佳化,像是《像素战机》就可在iPhone5上做到每秒运算32万个多边型,并维持在60FPS的效能。此外由于熟悉引擎的所有架构,因此若是发生问题也容易解决,相同的状况若是发生在商用引擎上,可能就得绕道而行。Owen表示,其实许多国外开发者使用第三方引擎只是为了省时间,不是不会自己做,像是一些玩家熟悉的国外知名游戏如《战地风云1》、《正当防卫》、《潜龙谍影》系列,或是Blizzard开发的众多游戏都使用自製引擎开发的。

跨平台作品《合金装备5:幻痛》使用了自製引擎FOXEngine开发

《战地1》也是由EA自行打造的Frostbite引擎开发

如何才能精进对于游戏引擎的了解?

在现在这个时代由于工具太过便利,即使是业界的开发者也不一定充分了解电脑以及游戏引擎的架构,在这种状况下很难对游戏进行最佳化,遇到问题的话也需要耗费更多的时间去处理。对于未来希望能够掌握游戏引擎开发游戏的玩家,Owen认为电脑图学与电脑硬体架构这两门学科得好好认真学习。

关于电脑图学的部分,其实就是各种玩家时常听到数学理论,例如线性代数、矩阵运算等,如果要把渲染的效果做好,更会使用到微积分等学科。但硬体架构就很难从学校中学习到了,如今的硬体进步速度飞快,在学校很难学习到外界的最新技术,尤其是图形处理器(GPU)每隔一小段时间就来个大突破,即使是像Owen这样的资深工程师,都必须要经常补充知识充实自己才行。话虽如此,若是有心在这个领域精进的学生,像是计算机概论这样的学科,也得好好了解打好基础,才有办法了解新的事物。

最后,若是想要更进一步精进自己的开发者,Owen也建议可参考GPUGems系列书籍、计算机图形图像学术研讨会网站SIGGRAPH,或是观看GDC相关影片,学习游戏业界知名人士分享的技术实战心得。

赞赏

长按







































白癜风的症状有哪些
白癜风治疗花费



转载请注明:http://www.nylrzx365.com/glgj/7118.html

  • 上一篇文章:
  •   
  • 下一篇文章: 没有了