Unreal 和 Unity 3D 各有什么特点？如何选择？
Unity是实时3D互动内容创作和运营平台。包括游戏开发、美术、建筑、汽车设计、影视在内的所有创作者，借助Unity将创意变成现实。Unity平台提供一整套完善的软件解决方案，可用于创作、运营和变现任何实时互动的2D和3D内容，支持平台包括手机、平板电脑、PC、游戏主机、增强现实和虚拟现实设备。 Unity官网： Unity实时内容开发平台 - 3D、2D、VR & AR可视化 | Unity中国官网 UE（Unreal Engine）是目前世界最知名授权最广的顶尖游戏引擎，占有全球商用游戏引擎80%的市场份额。自1998年正式诞生至今，经过不断的发展，虚幻引擎已经成为整个游戏界--运用范围最广，整体运用程度最高，次世代画面标准最高的一款游戏引擎。是美国Epic游戏公司研发的一款3A级次时代游戏引擎。它的前身是虚幻3（免费版称为UDK）。 Unreal Engine官网： The most powerful real-time 3D creation tool - Unreal Engine 同等情况下，unreal渲染出的画面色彩要比Unity 3D漂亮，Unity 3D一样可以开发出媲美unreal的画面，但是需要花更多的成本和时间才可以换来和unreal类似的效果。 Unity 3D侧重轻量级的开发，更偏向于移动端，大概有70%的手游都是使用Unity开发的。自由度比较高，跨平台是最好的几乎支持所有主流平台，可以充分发挥开发者的想法和思路去做创意类型的游戏。对2D和Web开发的游戏十分友好。 有名的Unity游戏：《纪念碑谷》、《炉石传说》、《杯头》、《永恒之柱1和2》、《火警》、《暗影奔跑》、《战技》、《奥里和盲人森林》、《喀布尔太空计划》、《复核》、《城市：天际线》、《王者荣耀》、《球球大作战》等。 Unreal适合重量级开发，更侧重于PC，主导着大预算的3A领域端游以及高端手游，对于中低端手机兼容性略差。 有名的Unreal游戏：《绝地求生》、《堡垒之夜》、《王牌实战7》、《方舟：生存进化》、《蝙蝠侠：阿卡姆城/庇护》、《战争机器4/5》、《王国之心》、《盗贼之海》、《街头霸王V》、《无主之地3》、《染血：夜晚的仪式》、《星际大战 绝地：组织殒落》等。 总结：通常unreal开发是以团队来计算，而U3D则可以以个人为单位。 Unity 3D支持VR、AR相关应用的开发。Unity的插件功能非常强大，可以用到整个XR基础架构中，因此在VR方面表现出色。AR用Unity做的时间更久，有更多的定义系统。 unreal支持VR相关应用的开发。 Unity 3D引擎源代码不公开（不能编译引擎，也不能修复错误）。学习游戏引擎，怎么用好它和能够研究到它的原理是完全不同的概念，尤其是做项目时万一遇到引擎BUG，Unty很难从根本上解决问题。无法个性化操作的问题导致了Unity在遇到需要修改引擎的问题时显得捉襟见肘。 Unreal引擎源代码开源（GitHub上获得，可以改变引擎的任何方面）。代码的开源直接影响了UE4本身的入手难度，想要精通UE4或许很困难，但是如果想要通过UE实现一些功能，取用社区现成的代码，便可以直接获益。解决了小白掌握难得问题。 对于高端游戏制作来讲，开源的结果就是可以更加个性化地修改引擎，将游戏优化做到最佳状态。 Unreal学习成本更高，有两种主要的编程语言：C++和Blueprints（基于图形的可视化编程系统）。C++有一个完整的垃圾收集系统，现在有一个由Live++支持的实时重装系统，这使得C++很像一种脚本语言。Blueprints能够编译成C++代码，从而降低使用它的性能成本。Unreal的构建时间不算太好。 Unity学习成本更低，曾经有几种支持的脚本语言，C#，Boo(类似Python)，UnityScript(类似JavaScript/ECMAScript)。最近几年剩下C#作为开发主要语言。从好的方面来看，自从Mono免费以来，Unity现在有了C#的当前实现，而不是落后于语言开发近十年。Unity目前正在向DOTS或面向数据的技术堆栈迁移，这是C#、ECS或 Entity Component System的高性能子集与并行计算的结合，侧重于Jobs系统，有望实现C++级别的性能。Unity中的构建时间非常快。 UE4资源商店（Marketplace）资源量：少，资源价格：贵，资源质量：高 虚幻商城 | UE游戏及3D渲染资产商城 - UE Marketplace (unrealengine.com) Unity资源商店（AssetStore）资源量：多，资源价格：有高有低，资源质量：有好有坏 Unity 资源商店 - 优质3D 2D游戏制作资源平台 Unity 3D每年召开一次游戏开发者大会，叫Unite。YouTube上的大多数游戏开发者都专注于使用和教授Unity。社区门槛较低。 Unreal ，Epic Games通过在线教程提供更多在线内容。社区专业性太强，整体社区风气都偏向于更加高端化的风格，新手很难在UE4社区内找到合适自己的初级教程，这也是造成UE4极难学习假象的重要原因。 Unity 3D引擎的模块化重新设计加快了发行新版本的速度。 unreal版本更新速度较慢,版本数较少。 Unity 3D上手快，在客户端工程师岗位招收量大，且易于获得的认证和培训课程，移动端的热门，效率一般，但也不差，优化起来难度略高。支持每个主要平台，市场占有率高。更好地支持2D游戏开发。对中小型游戏有更快的开发周期.更快的构建时间。 unreal：在地编\特效\技术美术等美术岗招收量大，入门时间长，难度高，品质的代言人，高定制带来了整个项目的可控性。提供源代码，完全公开的开发周期。专注于高性能和图形保真度。 最后，推荐一篇关于unity与unreal特点与区别的文章 Objectively comparing Unity and Unreal Engine (gametorrahod.com)