編譯的cgal版本為4.11.3,boost版本為boost_1_60_0,cmake版本為cmake-3.5.2-win32-x86,
boost可只生成(system,thread模組)(執行b2.exe --with-system --with-thread)
版本對不上執行cmake會遇到各種問題。
編譯cgal參考的教程很多不贅述。
除版本衝突外,vs環境變數會導致cmake認不到編譯器
編譯完成後,建立乙個第三方空白外掛程式,將庫匯入ue4
在build.cs如下
using system.io;
using unrealbuildtool;
public class cgaldlllibrary : modulerules
else if (target.platform == unrealtargetplatform.mac)
}}
無非就是把編譯完後的cgal庫,boost庫都寫進.cs檔案
寫完之後編譯發現失敗,報了
mp_defer.hpp(28):錯誤c2988
查閱發現ue4原始碼中也有外掛程式使用了boost,
在 engine\plugins\experimental\proxylodplugin\source\thirdparty 目錄下
對比兩者mp_defer.hpp發現只是將原boost中check改寫為check_s,所以估計是boost中**與ue4自帶的巨集重名(check,pi等)。
我直接將上面目錄下的boost覆蓋了自己外掛程式中的boost目錄,但之後還是會遇到類似情況,我都是在衝突名後加「_s」(仿照原始碼)
包含#include 後出現error:4503:
d:\epic\epic games\ue_4.18\engine\source\runtime\core\public\windows\windowsplatformcompilersetup.h中將4503剔除
剔除後編譯通過但發現無法開啟ue4專案,目測ue4不支援過長的修飾名,只能放棄
過程檔案:
只能另闢蹊徑呼叫exe實現了:
UE4中遇到的一些疑惑的點及對應的解釋
1.如果在windows平台下開啟單步除錯,首先要進入的函式是 2 作用 應用程式入口點。2.ue4最常用模式包括debug editor和development editor,最近除錯原始碼,發現develipment editor模式在除錯時總是會有很多編輯器對 的優化,導致看不到變數的值,或者...
個人總結的一些UE4專案規範
地圖 content maps 具體根據實際情況進行子地圖 測試地圖區分 藍圖 content blueprints 具體根據實際情況分類 例如ai game ui等等 音效 content audio 動畫 content animation 具體從模型匯入的動畫資源 具體角色 content c...
UE4建立乙個圍繞角色旋轉的物體
一 建立乙個物體的藍圖類 1.建立乙個靜態網格物體元件或特效元件。由於第一人稱的視野和預設攝像機對特效的渲染,特效需要在晃動攝像機才能看到。二 獲得角色的位置和朝向 如上圖 1.這裡可以使用角色膠囊體的位置也可以使用攝像機的位置,由於筆者是使用vr模式,顧採用攝像機作為判斷。2.獲取旋轉物體的位置,...