文/ 韩宇飞 一、引擎的介绍 随着游戏开发的不断进步,游戏开发越来越庞大复杂,因此游戏引擎已经成为游戏开发必不可少的工具。引擎对基本的功能封装,对工具链的提供等都可以大幅降低游戏引擎的开发难度,提高开发速度和质量。 对于目前市场,3D手游的引擎选择主要分四部分:
这里其实选择的余地比较小,对于大部分没有自研引擎的公司来说,还是选择Unity居多,但是随着硬件的不断发展以及Epic公司自己的不断优化和持续更新,Unreal在手机上也有越来越多的公司和项目选择使用了。 部分已知手游项目: (一个重要的选择原因:如果一款引擎在同类型项目中有成功项目,则我们可以很大程度相信这款引擎。) 二、选择引擎的基本原则 按照软件工程的开发流程,我们首先应该明确需求。以下是一些常见的需求点:
然后我们需要考察引擎的特性是否和我们的需求相符。 1、必须满足的特性,如果不支持则不能选用该引擎:
2、最好支持的特性,但如果不支持可以第三方库或自主开发解决:
三、引擎的功能划分和对比 有一句话说的好: 美术资源决定了游戏世界的外观,脚本资源决定了游戏世界的内容,而引擎部分决定了游戏世界的规则。 一款引擎往往包含,图形模块,AI模块,物理模块,寻路模块,输入模块,网络模块,UI模块,渲染模块,声音模块,编辑器模块等等,如果要全面评估我们应该针对各个模块进行详细的评估和对比。 但说道引擎,往往大家的第一印象都是引擎的图形渲染能力,可见图形对于引擎来说是至关重要的,因此我们会分为两部分,图形模块和其他模块,然后进行详细的比较。 图形模块 图形是游戏引擎的重中之中,主要功能就是提供封装底层的渲染接口(D3D,OpenGL,Metal,Vulkan等),渲染管线的定制(前向渲染,延迟渲染,多线程等),适配(PC,IOS,Android),以及一些基本渲染功能的提供例如后处理(抗锯齿,景深,屏幕矫色,扭曲,描边,SSAO等等),阴影,地形,捏脸,动画,天气等等。 微信图片_20180622115114.png (72.07 KB, 下载次数: 4) 由此可见在高端渲染技术上Unreal更有优势有强大的官方支持,性能也极佳,但是相对的低端设备的兼容性会略差特别是Android版本。Unity也可以实现相同的效果但是很多工作都需要自己开发。 其他 经过对比可知Unity更容易上手前期开发更快速,更容易做出适配更广(内存和稳定性)的游戏,但一些次时代技术需要自己实现。而Unreal学习成本较高开发效率较低,但是更容易做出顶尖效果的游戏,更适合开放世界,大型项目。 四、总结 如果是项目周期和成本比较宽裕,希望开发超高画质超高品质,开放世界的游戏,同时图形向技术积累较弱推荐使用Unreal,特别是FPS射击类游戏;如果希望开发周期更短,或者有着深厚技术积累和技术支持推荐使用Unity。此外引擎的选择也受美术和策划的影响,特别是美术同学,对编辑器和引擎的熟悉成度对进度,效果和性能也有着非常大的影响。 其实对于大部分的游戏,两款引擎都可以满足需求,主要的差异还是在品质,时间,成本的项目管理三角形的取舍上。适合自己的才是最好的。 via:Gad |
九四玩·北京开源纵横网络科技有限公司 京ICP备15000695号 京网文(2018)9972-889号 增值电信业务经营许可证:京B2-20190580
旗下产品:手游平台系统、页游平台系统、H5游戏平台系统、游戏平台三合一版。九四玩致力于游戏平台系统开发、游戏代理、游戏运营指导等服务。
合作&投诉电话:010-85898922、4008699305