虛幻4的C 開發真的編譯實在是太慢了,改一點點東西就編譯好幾分鐘,有沒有什麼辦法可以提高編譯效率的?

時間 2021-05-31 01:23:39

1樓:Grfxlf

個人嘛就別折騰聯編了,沒人跟你連呀,就選AMD核多點的。

公司嘛沒啥特殊癖好就IB吧,不算便宜,但是省事。fastbuild嘛,新版本ue已經支援了,可以third party裡翻翻。

2樓:Pluto Hades

Linus用什麼硬體編譯,你配一樣的硬體。

我說的是做Linux的那個Linus,不是白嫖王。不過白嫖王Linus也配了個跟Linus一樣的機器。

3樓:unwind

買個好機器,64核,64G起步,再開發個記憶體盤程式加速檔案訪問,能一定程度減輕編譯開發負擔。

MacOS編譯可能更慢,有人力條件的大公司可以僱些程式設計師實現windows下分布式執行macOS程式的功能(類似wine+io訪問網路化(雷電3網路))加速macOS下的ue編譯,順便賣一波雲產品。

可以預見的是UE56也不會有更大的改善(單機構建3分鐘以內暫時實現不了)

4樓:SaeruHikari

有聯機編譯還湊合,倒是最痛苦的是改一些PSO等影響Bake流程的玩意。。。

引擎三分鐘編譯好,完事你得把DDC全部刪掉,然後等好幾十分鐘!

這個流程還只能單機。(真的這兩個商業引擎的BakedResource管理都是狗屎,大哥你們分分類明確點放對應SubDir不好嗎,引擎開發真就沒人權啊

PS:如果你想加速編譯,盡量不要動標頭檔案,多往.cpp裡面寫具體實現。

標頭檔案裡面只勾乙個Init的鉤子,不要動Public,不要動Public,不要動Public,尤其是基礎的Module!

如果你做那個功能真的必須必須要在外部提供PublicCall,多用BPCallable並且永遠不要改那個簽名。。。

5樓:

1.標頭檔案不亂包,cpp檔案需要啥就包啥,使用前置宣告

2.業務邏輯可以使用lua,推薦unlua

3.使用Incredibuild,配上好點的機器

6樓:沿河十八打

20210420更新

很久沒有跟虛幻打交道了,近日裝了windows平台4.26.2版本,發現此問題已不存在。除了第一次編譯較慢外,之後編譯都是正常的,10s內就能完成。

以下為原答案

虛幻4用了大量的反射來支援藍圖、事件等模組,編譯的時間就是被反射佔了大頭。但是每次編譯不管有沒有修改,所有反射都會被重新編譯,這就是問題所在。

在 Epic Games/UE_4.x(編輯器版本號)/Engine/Binaries/Win64中有乙個檔案UnrealHeaderTool.target,用編輯器開啟(別用Windows自帶的記事本,有時候這小東西會自己新增一些奇怪的符號在檔案首部),在TargetName那一行(第二行,有可能其他位置也行,沒有試過)末尾加個空格,儲存之後再去專案編譯的時候第一次全編譯,之後未修改的反射不會被重新編譯。

而且可以再回去把那個空格刪掉,刪掉之後也是一次全編譯和後續未修改的反射不編譯。

有一說一,這讓我想起了小時候玩飛車的時候去商場卡車…

7樓:逍遙劍客

3950x + DDR4 3600 + PCI-E 4.0 SSD + FastBuild + 千兆網,引擎全重編就十分鐘的事;Shader分布式編譯比C++的收益高很多,能快幾十倍

8樓:

匿名吐槽國內某大廠,重點專案依然做不到做好聯合編譯,找聯合編譯介面人乾脆不回覆。A地的電腦連到了B地的電腦,不用IB整個UE工程30分鐘,用了IB要乙個多小時,分組一塌糊塗,醉了。

虛幻的編譯只能靠cpu和固態硬肛了,8核6700k+固態的速度比12核e5+固態的速度快,實測。

9樓:

比較難不花錢的方法是 :

組織好原始檔包含關係盡量只包含主題相關的內容,使用前置宣告,盡量改CPP不改標頭檔案

簡單花錢的方法:

換個i9或者Thread Ripper的多執行緒的CPU, 和乙個高速固態硬碟

使用IncrediBuild, 基本上是傻瓜似安裝使用不怎麼需要特殊配置

10樓:No.Baby

提高點配置吧,我不是做遊戲開發的,我是做Android系統開發,編這個怪獸更是難受,自己買了1T固態,湊了24G記憶體。現在不做Android系統開發了,但是這套配置,做什麼都很快,除了用opencv做視覺方面的,CPU的確不行,好歹後來有塊2070的顯示卡。用硬體來節省時間,還是划算的。

11樓:Joe Physwf

ue4編譯的瓶頸在硬碟,所以固態硬碟應該是起步配置。即使是固態硬碟,要是你經常擺弄核心標頭檔案,2k個檔案也夠你受的,建議了解下記憶體盤?

C 開發的程式,能 100 避免被破解或反編譯嗎?

已登出 不能100 的,只要能做到防止大部分破解就行了。要做防反編譯還是得幾步走,先用vc,vb 非.net工程 一類的寫乙個殼,在這個殼中把exe壓縮,加密儲存,然後自己把JIT入口Hook了,做實時解碼,然後再把程式進行提權 不要直接把程式設定成管理員許可權執行,容易被直接殺掉 把一些執行緒啊記...

C 語言的開發者們都用什麼 IDE 和編譯器?

算不算開發者,算是學習者。結論 Windows,收費Visual Studio 免費Dev C 一開始用的VC6.0,電腦公升級win8後無法使用。後來用C free,但是需另外裝編譯器,初學者可能會麻煩。編譯引數設定複雜,想顯示所有警告和錯誤都不行。編譯完成時不提示編譯器的編譯引數,除錯很不方便。...

為什麼我們不能開發出虛幻4一樣厲害的遊戲引擎?

看了樓上很多觀點,我補充一下 其實國外引擎斷了國內生路,這種想法很印度。事情情況是 1 國外通用引擎也是千軍萬馬殺出來的少數。它實際上也斷了很多國外同行的生路,大部分菜鳥,低水平重複建設的小作坊都gg了。國內是沒刷出來這樣的公司,也許你可以這麼說,中國最優秀的人沒在做遊戲,或者中國的業者都在變幻不定...