经常被想进入游戏行业的同学问这样一个问题:Unity和UE4学哪个更好?当我面对这样的问题,往往都会先问清楚对方对哪个更感兴趣,然后就引导他学习哪个,投其所好的回答对方的问题!
你心里肯定在想,你真不实诚,不客观的回答别人的问题!
那我在这偷偷的给你说!作为一个从事了游戏开发近十年的程序员,我客观的告诉你:Unity和UE4各有千秋,不分伯仲!
所以在回答这样的问题时,我往往会告诉对方:Follow your heart!
但我相信这个问题依然困扰着许多想成为游戏开发者的初学者们!那么今天,我就给你好好道来,你应该如何选择!
我会从以下几点为你说明
↓↓↓↓
↓↓↓
↓↓
①——>引擎共性
②——>难易区别
③——>游戏产品
④——>学习资料
⑤——>资源商店
⑥——>人才需求
1 ——> 引擎共性
游戏引擎
Unity和UE4都是游戏引擎,所谓游戏引擎就是集成了复杂功能的游戏开发软件,他们帮我们实现了复杂的底层逻辑,比如:物理系统,粒子系统,寻路系统,图形渲染等等。我们不再需要具备太多专业而复杂的计算机专业知识,只需要进行简单的系统学习,便可以使用它们来进行游戏开发。
跨平台
平台你可以简单理解为不同的操作系统,比如我们家用电脑使用最多的windows操作系统,苹果电脑的mac os操作系统,包括安卓手机的android系统,苹果手机的ios系统等等,这些不同设备因为他们的操作系统不一样就称为不同的平台。以前我们开发一款游戏,为了能在不同的平台上使用,就必须得针对不同的平台进行多次开发。
而跨平台的意思就是,我们只需要进行一次开发,通过Unity和UE提供的跨平台功能,我们可以让产品在各种不同平台上使用!并且不需要进行二次开发!!这是一劳永逸的壮举!
任何游戏类型都能制作
大部分人理解的游戏类型可能更多的是RPG(角色扮演)、FPS(第一人称射击)等等游戏机制的类型,而我这里提到的类型涵盖面会更广。Unity和UE4他们都可以制作如:3D游戏、2D游戏、VR(虚拟现实)游戏、AR(增强现实)游戏等
说直白点,只要是游戏他俩都能做。
免费使用
Unity和UE4都可以让大家在一定程度上免费使用,至少在学习阶段是完全免费的。而如果要用来做商业项目或使用更多的高级功能,两者会有不同的收费策略,这里我不做详细说明,因为这点完全不影响作为初学者的你。
总结
为什么要把这四个共同点单独摘出来给大家说明呢?
因为就是因为这4个共同点,成就了Unity和UE4,让他们俩成为了全球范围内使用最广泛的游戏引擎!!!
2 ——> 难易区别
可视化编程
所谓可视化编程,简单些理解就是不需要写一行代码,通过线框图的连接就可以做出酷炫的游戏效果。这是零基础学员的福音,你可以什么编程语言都不会,什么计算机知识都不懂,只需要短时间的系统学习便可以做出游戏来。
但是可视化编程虽然可以帮助你快速的入门,但是作为一个游戏行业从业者,可以客观的告诉你,要开发商业游戏,你永远都逃脱不了写程序。可视化编程更多的用处是给美术人员和策划人员进行关卡设计、场景设计、剧情设计等等工作的,只是提升开发效率的手段之一,而不是游戏开发的所有。
你千万不要觉得学会了可视化编程系统,就可以进行大型商业游戏的开发了。当然,如果你做的东西足够简单,它就已经够用了。
UE4
蓝图可视化编程系统
内部集成,免费
Unity
PlayMaker可视化编程插件
插件,收费
Unity
Bolt可视化编程插件
插件,免费
Unity和UE4都提供了可视化编程工具。
客观来说UE4提供的蓝图可视化编程系统更为强大,并且是官方免费集成在引擎内部。
Unity的PlayMaker可视化编程是由第三方提供的插件,需要付费使用。Bolt同样也是Unity插件,可以免费试用。
编程语言
编程语言是用来给计算机发出指令,控制美术资源按照策划制定的游戏规则将游戏呈现在玩家面前的核心技能。是作为游戏开发程序员必须掌握的工作技能。可视化编程工具的内在本质就是由编程实现的,所以当通过可视化编程工具实现不出想要的游戏表现时,我们必须通过自己编写程序来实现特定功能。
不同领域,常用的编程语言有很多,比如C、C++、C#、Java、Python、JavaScript、PHP、Objective-C等等等。我们来看看这两大引擎分别使用的是什么语言吧。
UE4——C++
C++的出道年份:1983年
特点:较底层的语言,学习它最好具备一些计算机基础知识,因为这门语言需要程序员自己管理内存,对于零基础初学者不是特别友好。
业内主要用途:UE4开发,服务器开发,Cocos2D-X&#x