【游戏周边】Unity,UDK,Unreal Engine4或者CryENGINE——我应该选择哪一个游戏引擎
在digital-tutors看到的一篇文章,很多初学者都有这样的疑问,因此翻译到这里。
原文:http://blog.digitaltutors.com/unity-udk-cryengine-game-engine-choose/
如果你想要开发并向全世界发布你自己的游戏,那么在开始之前有一些很重要的问题你需要考虑。当下有一些免费的游戏引擎,它们为你的游戏开发提供了很多遍历,但问题是,你应该选择哪一个?为了帮助你进行选择,我们将给出最牛X的游戏引擎中的3个,来让你进行比较,然后决定哪一个最适合你。
在过去的几年里,涌现出很多非常厉害的游戏引擎,这些引擎让那些独立游戏开发者得以将他们脑中的想法付诸实践。其中最有名的游戏引擎有Unity,UDK,Unreal Engine4,以及CryENGINE。它们每一个都非常棒而且都有它们擅长的领域。为了帮助你决定哪一个最适合你的项目,你需要首先问下自己:你需要开发什么类型的游戏?是第一人称视角的射击游戏(FPS)?还是一个移动游戏?它是2D还是3D的?
如果你正在计划发布这个游戏并以此赚点钱,那么你还需要比较每个引擎的许可费用哪个更适合你的预算。虽然这些引擎相对来说都比较便宜,但是一旦你需要贩卖你的游戏,你就需要支付许可费,版税等等。
Unity
Unity引擎提供了非常庞大的游戏特性,而且它的界面很容易使用。它最出色的地方就是它的跨平台特性,这意味着你的游戏可以迅速而且方便地被发布到Android,iOS,Windows Phone8,BlackBerry等等,这使得它是一个非常棒的移动游戏开发引擎。除此之外它支持的平台还有Playstation 3,Xbox360,Wii U,Web浏览器等。
Unity支持很多3D建模软件的资源格式,例如3ds Max,Maya,Softimage,CINEMA 4D,Blender等等,这使得它基本没有模型格式的限制。随着Unity4.3的发布(Unity 5马上也发布了),Unity还有2D图集和物理检测等原生2D支持,使得它也是一个很好的2D游戏开发引擎。
虽然它对很多3D建模软件具有很好的支持,但是它自己在模型编辑上有很大的限制。除了一些基本的图元形状,Unity没有真正的建模功能,因此基本所有的模型你都需要从第三方3D软件里创建。但是,它有一个资源库,里面包含了很多可以下载或支付购买的资源(资源的价钱由资源开发者决定,你也可以自己上传自己的资源)。
PS:根据原文读者留言,Unity插件,例如ProBuilder和MXD,也已经可以支持在Unity里编辑图形了。
Unity有几个不同的许可费用,它的Pro版本在本文发布时是$1,500或者$75/每月。pro版本提供了很多免费版不包含的功能,包括全局光照,渲染到纹理,Mecanim IK Rigs ,自定义的splash界面等等。免费版则有一个无法消除的水印。更多细节可以访问Unity价格页面。
Unity的开发人员正在紧张地准备发布Unity 5。这表明Unity正在加入下一代游戏引擎的大战中,和UE4和CryENGINE一绝高下。如果你购买了Unity 4,那么在Unity 5发布的时候你会自动升级到5。
Unreal Engine 4
Unreal Engine 4(UE4)是一个Epic Games公司在几个月前刚刚发布的新游戏引擎,它是UDK的后续版本。UE4具有一些非常棒的图形处理能力,包括高级动态光照,新的粒子系统(可以同时处理数以百万的粒子)等。如果你是一个3D或者游戏美术人员,那么这一点一定非常吸引你。
尽管UE4是UDk的后续版本,但你要知道这两个引擎之间还是有一些非常大的变化。如果你有过任何UDK的使用经验,在使用UE4时你还是需要一定的适应时间。但是这些变化并不是坏的,UE4灵活的使用方法使得它越来越对新的游戏开发者有吸引力。
UE4的一个非常重要的变化就是它的编程语言。你可能之前已经知道,Unreal Engine一直以来都是使用UnrealScript。而在UE4中,UnrealScript完全被C++代替了,而Kismet被更直观的Blueprint系统所代替。
有一点你需要记住,如果你想要开发一个适合于上一地啊游戏平台的游戏,那么你不会在UE4找到相应的功能。到现在为止,UE4支持的平台有PC,Mac,iOS,Android,Xbox One以及PlayStation 4。你可以制作出令人激动的游戏画面或者简单的横版游戏,并把它发布到移动平台或者下一代的平台上。
你可能在疑问,既然Unreal Engine 4已经发布了,那UDK和Unreal Engine 3不就完全没用了吗?事实上,这并不准确。开发者们仍旧使用Unreal Engine 3来制作在上一代游戏平台上运行的游戏,例如PlayStation 3和Xbox 360仍然具有一定比例的市场份额。
Unreal Engine 4的价格结构是$19/每月,以及一个5%的版税,如果你的游戏开始赚钱了。这样的价格结构是那些有抱负有追求的游戏开发者的福音!更多信息请访问他们的价格页面。
想要了解更多关于Unreal Engine 4的信息,可以参见这篇更深入的博文。或者开始学习我们的Unreal Engine4介绍教程。
UDK
Unreal Development Kit(简称UDK)是Unreal Engine 3的一个免费版本,它由Epic Games公司开发,他们使用UDK开发了许多3A级游戏,例如Gears of War等。它具有强大的图像处理能力,并且还可以用于移动游戏中。和Unity不同,在它的游戏引擎中就有强大的关卡设计工具。
Unreal Engine一开始是针对FPS开发的,Epic公司开发它是为了第一部的Unreal(一个游戏),而在这之后,它也被用于其他许多类型的游戏如RPGs。Unreal Engine使用一个名为UnrealScript的脚本语言(一种和Java以及C++类似的面向对象编程的语言)。
和Unity类型,UDK可以被发布在许多不同的平台上,包括iOS,Android,Windows Phone8,Xbox360,Playstation 3,Playstation Vita和Wii U。但是,你需要记住UDK,即Unreal Engine 3的“免费版本”仅可以发布在PC和Mac上。否则,你需要一个UDK的完全许可,也就是Unreal Engine 3。
UDK完全是免费的,除非你想要发布你的游戏。当你准备好发布你的游戏时,你必须支付一个$99的许可费用,以及在你的游戏盈利超过$50,000后一个25%的版权费。你可以访问UDK的许可页面得到更多信息。
CryENGINE
CryENGINE是一个非常强大的引擎,由开发公司Crytek设计实现,在第一代Far Cry游戏中首次出现。它被设计用于PC平台和游戏机,包括Playstation 4以及Xbox One。CryENGINE的图像处理能力优于Unity和UDK,但是Unreal Engine 4基本持平,拥有极度先进的光照,逼真的物理模拟,先进的动画系统等等。最近利用CryENGINE开发的游戏是Ryse: Son of Rome。和UDK以及UE4类似,CryENGINE拥有直观而且强大的关卡设计功能。
尽管CryENGINE是一个非常强大的游戏引擎,想要学号是有一点难度的,特别是如果你没有任何游戏引擎使用经验会觉得更难。如果你不需要你的游戏具有像这些游戏那样牛X的图像,那么你最好不要选它,而选择一个更容易的哦。
随着UE4的发布以及它非常吸引人的价格模式,CryENGINE也不甘示弱地发布了更便宜的价格模型,即$10/每月,并且没有版权税哦。你可以访问他们的文章来了解更多关于CryENGINE的As-A-Service编程。
那么,哪个最适合我?
所以这些游戏引擎都是一个不错的选择。但是相对而言,Unity更适合移动,2D和3D游戏,UDK具有强大的FPS特性并且直到你发布游戏之前都是免费的。Unreal Engine 4具有逼真的图像处理能力以及适合制作简单的横版游戏,而且它的价格模式很合理。CryENGINE同样具有引人入胜的图像能力,它还具有下一代平台特性以及比UE4更吸引人的价格模式。
最后,还是由你来决定哪个最适合你的项目。但有一点是肯定的:对于你的游戏,这些引擎都是足够应付的。如果你还是不确定(选择恐惧症。。。),那,那我也只能帮你到这里了,自己再看看吧。下面的课程可以帮你学习这些引擎。
Unity tutorials,UDKtutorials,Unreal Engine 4tutorials以及CryENGINEtutorials。
【游戏周边】Unity,UDK,Unreal Engine4或者CryENGINE——我应该选择哪一个游戏引擎的更多相关文章
- unity编辑器扩展_04(使用Selection获取选择的游戏物体)
代码: [MenuItem("Tools/GetChance", false, 1)] static void GetChance() { if (Sel ...
- 【HAPPY FOREST】用Unreal Engine4绘制实时CG影像
用Unreal Engine绘制实时CG影像 近年来,对实时CG的关心热度越来越高,但要想弥补与预渲染方式的差异并不是那么容易.这里就有影像业界的先锋进行挑战的MARZA ANIMATION PLAN ...
- 【Unity】6.4 Transform--移动、旋转和缩放游戏对象
分类:Unity.C#.VS2015 创建日期:2016-04-20 一.简介 Unity引擎提供了丰富的组件和类库,为游戏开发提供了非常大的便利,熟练掌握和使用这些API,对于游戏开发的效率提高很重 ...
- 怎样将游戏从Unity导到iOS设备上
当我开始开发自己的iOS游戏时,我会考虑的第一件事便是如何将其导出到设备中,如此有效地测试我的游戏.最初,该过程看似很长且复杂,我所遇到的主要问题是,尽管存在许多资源,但是它们并非完全来自同样的地方, ...
- 游戏开发之UDK引擎介绍和模型导入
2014-09-18 10:01:3 3.7.5" style="border:0px; vertical-align:middle; max-width:100%"&g ...
- Unity 2D游戏开发高速入门第1章创建一个简单的2D游戏
Unity 2D游戏开发高速入门第1章创建一个简单的2D游戏 即使是如今,非常多初学游戏开发的同学.在谈到Unity的时候.依旧会觉得Unity仅仅能用于制作3D游戏的. 实际上.Unity在2013 ...
- Android研究之为基于 x86 的 Android* 游戏选择合适的引擎具体解释
摘要 游戏开发者知道 Android 中蕴藏着巨大的机遇. 在 Google Play 商店的前 100 款应用中,约一半是游戏应用(在利润最高的前 100 款应用中.它们所占的比例超过 90% ...
- 如何选择 H5 游戏引擎
原生手游市场已是红海,腾讯.网易等寡头独霸天下,H5游戏市场或将成为下一个风口.据笔者所知,很多H5游戏开发团队由于选择引擎不慎导致项目甚至团队夭折.如何选择适合团队和项目的引擎,笔者通过学习和项目实 ...
- 避坑宝典:如何选择HTML5游戏引擎
原生手游市场已是红海,腾讯.网易等寡头独霸天下,H5游戏市场成为下一个风口.据笔者所知,很多H5游戏开发团队由于选择引擎不慎导致项目甚至团队夭折. 如何选择适合团队和项目的引擎,笔者通过学习和项目实践 ...
随机推荐
- Java的五子棋实现
Java 五子棋 注:除机器人算法外其余借鉴于MLDN. package MyFiveChess; import robot.*; import java.awt.*; import javax.sw ...
- jquery easyui combobox 高度自适应
data-options="required:true,editable:false,panelHeight:'auto'" 加上panelHeight:'auto'即可 列合并 ...
- spring的 @Scheduled的cron表达式
网上太多说的多,但却没什么用的文章了 序号 说明 是否必填 允许填写的值 允许的通配符1 秒 是 0-59 , ...
- ionic笔记
ionic教程网站:http://www.ionic.wang/ 1.ui-router路由简介 https://blog.csdn.net/mcpang/article/details/551015 ...
- Redis出现多线程调用时抛出 [B cannot be cast to java.lang.Long] 异常
原因分析: 多个线程同时调用了同一个jedis对象,导致内存数据被多个线程竞争,产生数据混乱 (或者大家都用通一个redis获取同一个实例,登录同一个账号使用缓存时报错) 解决方案:每个线程都new出 ...
- bash的工作特性及其使用方法
bash的工作特性之命令执行状态返回值和命令展开所涉及的内容及其示例演出 !脚本执行与调试1.绝对路径执行,要求文件有执行权限2.以sh命令执行,不要求文件有执行权限3..加空格或source命令执行 ...
- 最小费用最大流(luogu P3381 【模板】最小费用最大流)
题目链接 题目描述 如题,给出一个网络图,以及其源点和汇点,每条边已知其最大流量和单位流量费用,求出其网络最大流和在最大流情况下的最小费用. 输入输出格式 输入格式: 第一行包含四个正整数N.M.S. ...
- 网络安全之在Kali Linux上安装Openvas
本文目录: 一.解决和配置更新源问题 二.安装Openvas 三.自定义登陆密码 四.升级Openvas 五.查看Openvas运行情况 六.修改OpenVAS远程链接 =============== ...
- Node.js 虚拟机
稳定性: 3 - 稳定 可以通过以下方法访问该模块: var vm = require('vm'); JavaScript 可以立即编译立即执行,也可以编译,保存,之后再运行. vm.runInThi ...
- “你什么意思”之基于RNN的语义槽填充(Pytorch实现)
1. 概况 1.1 任务 口语理解(Spoken Language Understanding, SLU)作为语音识别与自然语言处理之间的一个新兴领域,其目的是为了让计算机从用户的讲话中理解他们的意图 ...