UE5学习笔记(1)——从源码开始编译安装UE5

目录

  • [0. 前期准备](#0. 前期准备)
  • [1. Git bash here](#1. Git bash here)
  • [2. 克隆官方源码。](#2. 克隆官方源码。)
  • [3. 选择安装分支](#3. 选择安装分支)
  • [4. 运行Setup.bat,下载依赖文件](#4. 运行Setup.bat,下载依赖文件)
  • [5. 运行GenerateProjectFiles.bat生成工程文件](#5. 运行GenerateProjectFiles.bat生成工程文件)
  • [6. 生成完成,找到UE5.sln/UE4.sln](#6. 生成完成,找到UE5.sln/UE4.sln)
  • [7. 大功告成](#7. 大功告成)

0. 前期准备

0.1 在windows的话,建议装一个Git bash,同时还要有自己的github账号,注册github账号这里就不再赘述了,安装git bash后,设置自己的github账号。或者在windows装一个WSL。

0.2 把自己的github账号关联Epic官方,必须关联之后才能下载Unreal的源码。关联方式见官方教程

0.3 安装VS 2022,这里推荐2022,如果是想装5.2的话,就要2022,想装4的话也可以VS2019,在安装中选择要开发的内容,这里也是跟着官方的推荐就好。官方教程,不想看英语的小伙伴也可以右上角换成中文。

1. Git bash here

在准备放代码的文件夹下右键,选择Git bash here,会打开gitbash的窗口。推荐这里在固态硬盘里进行操作,建议固态最少最少要有300G的空闲空间。可以自己新建一个目录,也可以在bash窗口里mkdir创建目录。

2. 克隆官方源码。

可以先去浏览器中进入unreal的github首页,https://github.com/EpicGames/UnrealEngine,可以看到左边的分支默认是release,且是最新的,暂时先不用考虑版本问题,因为源码下下来的时候都一样。

在bash命令中,
git clone https://github.com/EpicGames/UnrealEngine

源码有20多G,慢慢等。

如果clone的时候太慢,或者直接没速度,建议科学上网,并在host文件里加上下面这行

bash 复制代码
13.226.17.97 cdn.unrealengine.com

3. 选择安装分支

进过漫长的等待,终于下载完了,进入目录

bash 复制代码
cd UnrealEngine

这里就要选择安装版本了,根据某老师的推荐,要安装UE5的话就装5.2,要UE4的话就4.27,我们需要切换到对应的版本的分支上进行安装。使用git checkout或者git switch命令来切换,如果你使用较新的git,那推荐选择switch命令,switch和checkout都能切换分支,他们的区别可以参考这篇文章。这里以5.2为例

bash 复制代码
git switch 5.2.1-release

4. 运行Setup.bat,下载依赖文件

bat是windows的批处理文件,所以不能直接在bash里运行setup.bat这个命令,要么就打开win的命令行窗口,进入相同的目录,再执行Setup.bat,要么就在bash里,通过直接执行cmd也可以。

bash 复制代码
cmd.exe /c Setup.bat --threads=200

5. 运行GenerateProjectFiles.bat生成工程文件

同上,要么在cmd里运行,要么在bash里运行。等待它慢慢完成。

6. 生成完成,找到UE5.sln/UE4.sln

在当前目录下,会生成UE5.sln,它是VS的工程项目文件,双击打开,


在左上方的解决方案配置那里选择下拉,选择开发者编辑器(Developer Editor)右边的解决方案平台选择Win64。

然后就可以在解决方案中右键UE5,选择Build(生成/构建)

开始编译,这里要编译6000多个文件,还是很耗时的,这就考验CPU的时候了,核多的CPU就有优势了,我的只是个8700,用了两个多小时。

不出意外的话,编译完成后就是这样。

然后就可以在UnrealEngine\Engine\Binaries\Win64目录下面看到UnrealEditor了。

7. 大功告成

到了这里,基本就算是安装完了。

相关推荐
huangyuchi.14 分钟前
【Linux】LInux下第一个程序:进度条
linux·运维·服务器·笔记·进度条·c/c++
黑客老李1 小时前
JavaSec | SpringAOP 链学习分析
java·运维·服务器·开发语言·学习·apache·memcached
海的诗篇_1 小时前
移除元素-JavaScript【算法学习day.04】
javascript·学习·算法
大写-凌祁2 小时前
论文阅读:HySCDG生成式数据处理流程
论文阅读·人工智能·笔记·python·机器学习
Unpredictable2222 小时前
【VINS-Mono算法深度解析:边缘化策略、初始化与关键技术】
c++·笔记·算法·ubuntu·计算机视觉
傍晚冰川2 小时前
FreeRTOS任务调度过程vTaskStartScheduler()&任务设计和划分
开发语言·笔记·stm32·单片机·嵌入式硬件·学习
月初,3 小时前
MongoDB学习和应用(高效的非关系型数据库)
学习·mongodb·nosql
casual_clover3 小时前
Android 之 kotlin 语言学习笔记四(Android KTX)
android·学习·kotlin
Love__Tay4 小时前
【学习笔记】Python金融基础
开发语言·笔记·python·学习·金融
半导体守望者4 小时前
ADVANTEST R3764 66 R3765 67爱德万测试networki connection programming网络程序设计手册
经验分享·笔记·功能测试·自动化·制造