Unity与UE,哪种游戏引擎适合你?
PlayStation vs Xbox,Mario vs Sonic,Unreal vs Unity?无论是游戏主机、角色还是游戏引擎,人们总是热衷于捍卫他们在游戏行业中的偏爱。
专注于游戏引擎,Unity和Unreal Engine(简称UE4)是目前市场上最受欢迎的两款游戏引擎。它们是大多数独立开发者的首选工具。虽然许多游戏开发工作室使用自己的专有游戏引擎,但也有很多选择使用Unity或Unreal。
那么,哪个引擎更好呢?这是GameDev.tv团队和我在过去5年里教授的50多万学生中最常被问到的问题之一。
Unity vs Unreal Engine 的历史
Unreal Engine由Epic Games创始人Tim Sweeney于1998年开发。它与首款游戏“Unreal”一同推出,并首次允许玩家修改游戏,这在当时是独一无二的。如今,Unreal Engine因“更好的图形”而著称,并为使用它的游戏提供了大型工作室级别的AAA质量。
Epic Games是Unreal Engine背后的公司,其旗下的游戏《Fortnite》取得了巨大成功,拥有2亿用户,并于2019年1月份宣布的收入为10亿美元。Unreal Engine本身拥有700万用户。
成立于2004年的Unity总部位于哥本哈根,创始人的初衷是要使游戏开发普遍可达。如今,Unity被誉为“制作任何游戏”的引擎,非常适合独立开发者。超过50%的跨所有平台的游戏使用Unity,而60%的所有虚拟/增强现实内容都由Unity提供支持。
实际上,这两款引擎都能够制作几乎任何类型的游戏,并将其部署到大多数游戏平台上。但这并没有帮助你做出决定,对吧?要回答哪个游戏引擎最适合你的需求,你首先需要回答以下五个问题:
- 你有多少游戏开发经验?
- 你想在哪里发布你的游戏?
- 你想发布什么类型的游戏?
- 这是一项爱好,还是你想要赚钱?
- 你是在提升技能以在游戏工作室找工作吗?
一、你有多少游戏开发经验?
如果你刚刚开始涉足游戏开发,我们推荐使用Unity。它提供非常直观的设计,并使用C#编程语言,这使得学习变得简单而有趣。
在花费一个周末学习Unity课程后,毫不夸张地说,你可能已经制作了你的第一个简单游戏,并准备与朋友分享。
此外,有大量的在线信息来自其他Unity开发者,可以在每一步帮助你。从YouTube视频到在线课程再到活跃的社区论坛,应有尽有。
对于完全初学者来说,Unreal Engine有点复杂。在Unreal中,你可以通过Blueprint可视脚本编程或使用C++两种方式编写游戏。
如果你对编程不熟悉,Blueprint可视脚本编程可以帮助你迅速取得一些胜利(和完成的游戏)。然而,如果你想发挥Unreal的全部威力,你需要学习C++,而许多人发现学习起来比Unity使用的C#编程语言更有难度。
我们的团队为这两款引擎制作了课程,深刻理解它们之间学习曲线的差异。如果你想学习编程,C#比C++更容易学习。
我们看到许多学生在一款引擎上开始学习,掌握所需技能,然后在未来需要时成功过渡到另一款引擎。你在Unity中学到的许多技能可以转移到Unreal,反之亦然。
总结:C# 的直观设计和使用使 Unity 成为初学者的理想选择。
二、你想在哪里发布你的游戏?
决定使用哪个引擎时,考虑潜在玩家如何访问你的游戏是一个重要的考虑因素。Unity和Unreal Engine都提供跨平台集成,但Unity提供的集成更为丰富。请查看下面的列表,了解Unity和Unreal目前提供的平台集成。
Unity平台集成:iOS、Android、Windows Phone 8、Tizen、Android TV、Samsung SMART TV、Xbox One和360、Windows PC、Mac OS X、Linux、Web Player、WebGL、HoloLens、SteamOS、PS4、Playstation Vita和Wii U。
Unreal Engine平台集成:iOS、Android、VR、Linux、Windows PC、Mac OS X、SteamOS、HTML5、Xbox One和PS4。
虽然这两款引擎都可以用于制作移动游戏,但我们更倾向于在移动平台上使用Unity。它是一个更容易制作2D游戏的引擎,并且在向低端硬件进行缩放时更为轻松。Unity专门针对配备老式GPU的低功耗设备提供了轻量级渲染管线。
如果你要面向高端设备,比如Xbox One,那么Unity和Unreal都可以胜任。
总结:Unity提供更多的跨平台集成。
三、你想发布什么类型的游戏?
Unreal和Unity都支持创建2D和完全3D渲染的游戏。在这里,你必须考虑作为开发者花费时间和成本的哪种格式更值得。
如果你正在创建2D内容,那么Unity就是你的选择。它拥有更简单的用户界面和成熟的2D工具。Unreal也可以用于2D游戏开发,但Epic Games并没有像Unity那样将这个特性集合放在首要位置。
Crossy Roads,使用Unity制作
如果你正在制作更传统的、充满动作的第一人称射击游戏,那么选择Unreal Engine可能更为合适。这类游戏正是该引擎的创作初衷,例如《虚幻竞技场》、《无主之地》和《堡垒之夜》。
Fortnite,使用Unreal Engine制作
如果你想在游戏中呈现出令人惊叹的视觉效果,Unreal Engine难以匹敌。尽管Unity正在努力改进其图形功能,但这仍然是两者之间的主要区别之一。这无可争议的视觉效果也是为什么更多大型工作室在他们的游戏开发中使用Unreal的原因。
值得注意的是,相比Unity,Unreal对于你如何构建游戏有更多的看法。默认情况下,开发者使用Unreal Engine的Gameplay Framework来构建游戏。
这突显了两家公司之间的一种哲学差异:
- Unreal包含更多便利的开箱即用工具,但它们必须按照“Unreal Way”来使用,这可能学习和使用起来较为复杂。
- Unity提供了一个简单的基础,开发者可以在其上构建或购买自己的工具。这意味着Unity专注于使其提供的基础简单而清晰,但你需要更多地自己进行工作。
一些Unreal Engine内置的功能,Unity需要第三方插件或自定义代码才能访问,包括:
- AI行为树
- 复杂的动画逻辑
- 游戏保存系统
- 多人游戏
- 游戏能力
- Chaos破坏系统
即使选择Unity,你仍然可以从Unreal Engine的架构决策中获得很多灵感。在我们自己的课程中,我们通过在Unity中构建类似Unreal Gameplay Framework和Saving System的系统来实现这一点。
总结:如果你的最终目标是一个具有惊人图形的游戏,选择Unreal Engine。
四、这是一项爱好,还是你希望获利?
无论是Unreal Engine还是Unity,它们都是免费使用的,然而,一旦你开始从游戏中获得收入,就会有一些条件适用。
Unity提供三种选择计划:个人版、Plus版和专业版:
- 个人版是免费使用的,开发者通过该计划最多可以每年赚取10万美元。在免费使用的条件下,游戏必须包含“Made in Unity”的启动画面。
- Plus版每月收费40美元,需要一年的订阅。开发者最多可以每年赚取20万美元,并且还能获得额外的福利,如启动画面定制和与协作工具的集成。
- 专业版每月收费150美元,没有年度收入限制。你将得到包括Plus版在内的所有福利,另外还有3个额外的席位和一个高级艺术资源包。
- Unreal允许开发者免费使用完整的引擎及其所有功能。如果你决定从游戏中获取收入,那么在每个日历季度内,如果游戏的收入超过3000美元,Unreal会收取5%的费用。
总结:在构建游戏时,两者都值得尝试。如果你期望从游戏中赚钱,请花些时间进行一些收入分析,以找出哪家公司的价格结构对你最有利。
五、你是在提升技能以在游戏工作室找工作吗?
如果你学习Unreal或Unity是为了达到在游戏工作室担任游戏开发人员的职业目标,首先看看你感兴趣的工作室使用哪个引擎和编程语言。许多工作室使用自己的专有游戏引擎;在这种情况下,语言是你职业发展轨迹中最重要的因素。许多工作室看重C++知识,因此学习Unreal和C++可能会给你带来优势。
对于其他职务,比如技术设计师、关卡设计师、环境艺术家,工作室会更青睐那些了解工作室使用的引擎的候选人。好消息是,如果你花时间学习一个引擎,那么在需要迅速学习另一个引擎以在面试中脱颖而出时,你已经有了一个良好的起点。我们在我们的《如何在视频游戏行业找到工作》课程中对此进行了更详细的说明。
Unity vs Unreal Engine:主要区别 Unity和Unreal之间的主要区别在于它们本地使用的编程语言。Unreal Engine使用C++,但在构建游戏时,你还会使用Unreal的一种专有语言,称为蓝图(Blueprint),以及C++。Unity对于主要的Unity编辑器和任何插件都使用C#。它还使用自己的专有语言Prefab和Bolt。
Unity vs Unreal Engine:总结 希望我们已经帮助你决定哪个游戏引擎对你的项目最合适。下面是一张详细描述差异的表格:
相关文章:

Unity与UE,哪种游戏引擎适合你?
PlayStation vs Xbox,Mario vs Sonic,Unreal vs Unity?无论是游戏主机、角色还是游戏引擎,人们总是热衷于捍卫他们在游戏行业中的偏爱。 专注于游戏引擎,Unity和Unreal Engine(简称UE4)是目前市…...

这五本大模型书籍,把大模型讲的非常详细,收藏我这一篇就够了
当然可以。在当前的大模型时代,随着自然语言处理(NLP)技术的迅速发展,出现了许多优秀的书籍来帮助读者理解这些复杂的技术。以下是几本值得推荐的大模型书籍,它们涵盖了从基础理论到高级实践的内容,可以帮助…...

伊朗通过 ChatGPT 试图影响美国大选, OpenAI 封禁多个账户|TodayAI
OpenAI 近日宣布,他们已经封禁了一系列与伊朗影响行动有关的 ChatGPT 账户,这些账户涉嫌利用该 AI 工具生成并传播与美国总统选举、以色列 – 哈马斯战争以及奥运会等相关的内容。 OpenAI 表示,这些账户与一个名为 “Storm-2035” 的秘密伊朗…...

windows系统如何走后面之windows系统隐藏账户
系统隐藏账户是一种最为简单有效的权限维持方式,其做法就是让攻击者创建一个新的具有管理员权限的隐藏账户,因为是隐藏账户,所以防守方是无法通过控制面板或命令行看到这个账户的。 自然我们需要一些前提条件,比如说有一个网站&am…...
Elasticsearch(ES)(版本7.x)数据更新后刷新策略RefreshPolicy
Elasticsearch(ES)(版本7.x)数据更新后刷新策略RefreshPolicy 介绍 ES数据写入后,默认1s后才会被搜索到(refresh_interval为1); 这样可能是考虑到性能问题,毕竟实时IO 消耗较多资源 造成的问题 例如一个索引现在有…...

【运维】从一个git库迁移到另一个库
工作目录: /home/java/hosts 10.60.100.194 脚本 hosts / hostsShell GitLab (gbcom.com.cn) 核心代码...

and design vue表格列宽度拖拽,vue-draggable-resizable插件使用
and design vue2版的table表格不能拖拽列的宽度,通过vue-draggable-resizable插件实现 我用的是and design 1.7.8的版本,先下插件 yarn add vue-draggable-resizable2.1.0我这版本的and design用最新3.0.0以上的插件会有问题,实现不了效果&a…...
使用hexo搭建个人博客
很早之前使用hexo和github建了个人博客。搭建的流程一直没有梳理,中间换过几次机器,每次都得重新配置一遍,需要重新学些。最近电脑坏了,原始的数据没有导出来,先把以前文章写个文件占个位置,后面慢慢补吧&a…...
java geotool构建地理点线面
哈喽,各位小伙伴们,你们好呀,我是喵手。运营社区:C站/掘金/腾讯云/阿里云/华为云/51CTO;欢迎大家常来逛逛 今天我要给大家分享一些自己日常学习到的一些知识点,并以文字的形式跟大家一起交流,互…...
C# 中 Grpc服务端调用客户端方法
在 gRPC 中,服务端通常不直接调用客户端的方法,因为 gRPC 的设计模型是服务端提供服务,客户端调用服务。通常情况下,服务端和客户端之间是解耦的,服务端只提供服务端点,客户端通过这些端点发起请求。 不过…...

Arthas相关命令
官方网站:命令列表 | arthas 也可以用idea的插件arthas-idea的插件根据你想定位的代码生成命令 jvm 相关 dashboard - 当前系统的实时数据面板getstatic - 查看类的静态属性heapdump - dump java heap, 类似 jmap 命令的 heap dump 功能jvm - 查看当前 JVM 的信息l…...

2024年江苏省职业院校技能大赛 移动应用与开发中职赛项规程
2024年江苏省职业院校技能大赛 移动应用与开发中职赛项规程 (一)学生组竞赛内容:模块A:移动应用界面设计模块B:移动应用前端开发模块C:移动应用测试与交付 (二)教师组竞赛内容:模块A:…...

2024 Google 开发者大会,沉浸式体验AI社会公益
文章目录 一、现场打卡二、AI 社会公益三、Gemma 模型四、Gemini 模型五、Google Cloud六、现场体验七、带着问题逛展八、学习资源和活动九、结束 Happy Hour 一、现场打卡 大家好,我是小雨。 2024 Google 开发者大会,沉浸式体验AI社会公益 今天我们参加…...
OpenCV(开源计算机视觉库)
OpenCV(开源计算机视觉库)是一个专注于实时计算机视觉的全面库,包含了丰富的工具和功能。以下是 OpenCV 中一些关键知识点的详细列表: 核心功能 基本结构:Mat、Scalar、Point、Size、Rect 等。 图像 I/O:读…...

Java二十三种设计模式-责任链模式(17/23)
责任链模式:实现请求处理的灵活流转 引言 在这篇博客中,我们深入探讨了责任链模式的精髓,从其定义和用途到实现方法,再到使用场景、优缺点、与其他模式的比较,以及最佳实践和替代方案,旨在指导开发者如何…...

Electron31-ViteAdmin桌面端后台|vite5.x+electron31+element-plus管理系统Exe
原创自研Vue3Electron31ElementPlus桌面端轻量级后台管理Exe系统。 基于最新前端技术栈Vite5.x、Vue3、Electron31、ElementPlus、Vue-I18n、Echarts实战开发桌面端高颜值后台管理模板。内置4种布局模板,支持i18n国际化、动态权限路由,实现了表格、表单、…...

鸿蒙HarmonyOS实战:创建NDK工程、毕昇编译器
NDK适用场景 适合使用NDK的场景:应用涉及如下场景时,适合采用NDK开发 性能敏感的场景,如游戏、物理模拟等计算密集型场景。 需要复用已有C或C库的场景。 需要针对CPU特性进行专项定制库的场景,如Neon加速。 不建议使用NDK的场…...

网络安全-防火墙初步认识。
文章目录 1. 防火墙是什么?2. 防火墙的工作原理是什么?3. 防火墙的分类有哪些?4. 实战4.1 防火墙管理和实验介绍4.2 防火墙命令行初体验实验目标:实验步骤: 4.3 防火墙Web初体验实验目标:实验步骤ÿ…...
golang channel什么情况main会deadlock?主协程是什么?
在 Go 语言中,main 函数是程序的入口点,它运行在主协程(也称为主 goroutine)中。主协程是程序启动后自动创建的第一个 goroutine。当 main 函数执行完毕后,整个 Go 程序就会退出,无论其他 goroutine 是否仍…...

Redis之快速入门
目录 简介 什么是Redis 特点 优势 数据库对比 应用场景 安装与配置 下载 上传解压 安装gcc 编译 查看安装目录 后端启动 测试 系统服务配置 Redis数据类型 通过命令操作Redis String(字符串) Hash(哈希) List…...
基于算法竞赛的c++编程(28)结构体的进阶应用
结构体的嵌套与复杂数据组织 在C中,结构体可以嵌套使用,形成更复杂的数据结构。例如,可以通过嵌套结构体描述多层级数据关系: struct Address {string city;string street;int zipCode; };struct Employee {string name;int id;…...
逻辑回归:给不确定性划界的分类大师
想象你是一名医生。面对患者的检查报告(肿瘤大小、血液指标),你需要做出一个**决定性判断**:恶性还是良性?这种“非黑即白”的抉择,正是**逻辑回归(Logistic Regression)** 的战场&a…...

循环冗余码校验CRC码 算法步骤+详细实例计算
通信过程:(白话解释) 我们将原始待发送的消息称为 M M M,依据发送接收消息双方约定的生成多项式 G ( x ) G(x) G(x)(意思就是 G ( x ) G(x) G(x) 是已知的)࿰…...

Docker 运行 Kafka 带 SASL 认证教程
Docker 运行 Kafka 带 SASL 认证教程 Docker 运行 Kafka 带 SASL 认证教程一、说明二、环境准备三、编写 Docker Compose 和 jaas文件docker-compose.yml代码说明:server_jaas.conf 四、启动服务五、验证服务六、连接kafka服务七、总结 Docker 运行 Kafka 带 SASL 认…...

(二)原型模式
原型的功能是将一个已经存在的对象作为源目标,其余对象都是通过这个源目标创建。发挥复制的作用就是原型模式的核心思想。 一、源型模式的定义 原型模式是指第二次创建对象可以通过复制已经存在的原型对象来实现,忽略对象创建过程中的其它细节。 📌 核心特点: 避免重复初…...

《通信之道——从微积分到 5G》读书总结
第1章 绪 论 1.1 这是一本什么样的书 通信技术,说到底就是数学。 那些最基础、最本质的部分。 1.2 什么是通信 通信 发送方 接收方 承载信息的信号 解调出其中承载的信息 信息在发送方那里被加工成信号(调制) 把信息从信号中抽取出来&am…...

基于Docker Compose部署Java微服务项目
一. 创建根项目 根项目(父项目)主要用于依赖管理 一些需要注意的点: 打包方式需要为 pom<modules>里需要注册子模块不要引入maven的打包插件,否则打包时会出问题 <?xml version"1.0" encoding"UTF-8…...

《基于Apache Flink的流处理》笔记
思维导图 1-3 章 4-7章 8-11 章 参考资料 源码: https://github.com/streaming-with-flink 博客 https://flink.apache.org/bloghttps://www.ververica.com/blog 聚会及会议 https://flink-forward.orghttps://www.meetup.com/topics/apache-flink https://n…...

SpringTask-03.入门案例
一.入门案例 启动类: package com.sky;import lombok.extern.slf4j.Slf4j; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cache.annotation.EnableCach…...

如何在最短时间内提升打ctf(web)的水平?
刚刚刷完2遍 bugku 的 web 题,前来答题。 每个人对刷题理解是不同,有的人是看了writeup就等于刷了,有的人是收藏了writeup就等于刷了,有的人是跟着writeup做了一遍就等于刷了,还有的人是独立思考做了一遍就等于刷了。…...