Unreal Engine大幅提升编译速度的技巧

4

主题

9

帖子

19

积分

新手上路

Rank: 1

积分
19
发表于 2023-3-31 09:50:39 | 显示全部楼层
Unreal Engine引擎作为世界上最先进的游戏引擎之一,它的优点就和青春期男孩脸上的青春痘一样多,而且时不时的还往外冒几个。这个咱们就不多说了。
咱们主要来说一说它的缺点。
它最令人诟病的一点就是编译速度的问题,实在是太慢了。如果是做C++开发的话,那么编译的时间都能够你上个厕所了。
虽然编译速度这个东西主要靠官方来优化,但是时间长了大家也琢磨出来一些门道。


其中流传最广的一个就是“空格法”。
这个方法可以在某些情况下下把编译时间加快三倍左右,比较恐怖了。
我们讲一下操作过程:
1.首先在Unreal Engine的安装文件夹下找到Win64这个文件,每个人的安装位置不太一样这是我的安装文件路径:E:\UE\UE_4.20\Engine\Binaries\Win64
在下面找到Win64这个文件。
2.在Win64这个文件中找到一个UnrealHeaderTool.target的。使用Visual Studio打开,它的位置是比较靠近底部的。



3.找到这个文件之后打开之后使用鼠标点击第一行也就是下图显示的位置。


4.加个空格即可,对你没看错就是在第一行的末尾加一个空格然后Ctrl+S保存就可以了。注意是空格不是回车。


接下来就可以测试了。
我们添加一段代码:
UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category = Mesh, meta = (AllowPrivateAccess = "true"))
class USceneComponent* SketalMeshLocation;
我们来看一下,但是注意第一次编译和新添加反射代码时候进行编译时间是没有变化的。添加空格前和添加空格后都是16秒左右。


关键就是第二次编译,当你没有更改任何代码的情况下再次编译,添加空格之前我的电脑是需要3秒左右。添加空格之后只需要:0.99s。


这个技巧在不添加反射代码的情况下这个能大幅加快编译速度。但是增加了反射相关代码的情况下。就和之前没有区别。
虽然有一定的局限性,但是对于C++开发人员来说能够提高不错的效率。值得一试!
附录:
如何显示文件后缀名:
第一步打开文件夹选项




2.在文件夹选项中取消勾选“隐藏已知文件类型的扩展名”




回复

举报 使用道具

1

主题

4

帖子

5

积分

新手上路

Rank: 1

积分
5
发表于 2023-3-31 09:51:33 | 显示全部楼层
[赞同]
回复

举报 使用道具

1

主题

3

帖子

6

积分

新手上路

Rank: 1

积分
6
发表于 2023-3-31 09:52:01 | 显示全部楼层
什么原理?
回复

举报 使用道具

0

主题

6

帖子

7

积分

新手上路

Rank: 1

积分
7
发表于 2023-3-31 09:52:38 | 显示全部楼层
作者这是在钓鱼把。。。
回复

举报 使用道具

4

主题

7

帖子

14

积分

新手上路

Rank: 1

积分
14
发表于 2023-3-31 09:53:23 | 显示全部楼层
md还有这事,我tm实验还成功了
回复

举报 使用道具

2

主题

7

帖子

10

积分

新手上路

Rank: 1

积分
10
发表于 2023-3-31 09:54:07 | 显示全部楼层
虽然很奇妙,但是真的有用
回复

举报 使用道具

1

主题

6

帖子

9

积分

新手上路

Rank: 1

积分
9
发表于 2023-3-31 09:54:16 | 显示全部楼层
你把那几个文件夹清空试试...
回复

举报 使用道具

2

主题

5

帖子

7

积分

新手上路

Rank: 1

积分
7
发表于 2023-3-31 09:54:57 | 显示全部楼层
不明觉厉
回复

举报 使用道具

0

主题

3

帖子

4

积分

新手上路

Rank: 1

积分
4
发表于 2023-3-31 09:55:48 | 显示全部楼层
魔法?
回复

举报 使用道具

您需要登录后才可以回帖 登录 | 立即注册
快速回复 返回顶部 返回列表