UE4多個分支版本兼容相同的工程dll

如果是從源代碼編譯出來的UE4, 明明代碼完全一樣, 不同機器編譯出來的dll卻無法兼容, 這對於多分支開發非常不方便.
在這裏插入圖片描述
在老版本里有個通過版本號判斷的邏輯, 新版本改沒了. 分析UE4源碼後發現目前是通過BulidId來判斷dll跟引擎是不是兼容的. 那BuildId是哪裏來的呢?
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
其實像發佈的UE4版本是通過"-Formal"參數來生成固定的BuildId的, 不過我們也可以直接修改Engine/Build/Build.version來生成固定的BuildId:
在這裏插入圖片描述
改完後如果代碼一樣, 不同機器編譯出來的引擎也能夠打開同個工程的dll 了

參考資料

https://udn.unrealengine.com/questions/506626/view.html
https://udn.unrealengine.com/questions/475415/view.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章