使用vs2022編譯assimp,並基於OpenGL載入模型

woden發表於2022-07-14

Assimp :全稱為Open Asset Import Library,這是一個模型載入庫,可以匯入幾十種不同格式的模型檔案(同樣也可以匯出部分模型格式)。只要Assimp載入完了模型檔案,我們就可以從Assimp上獲取所有我們需要的模型資料。Assimp把不同的模型檔案都轉換為一個統一的資料結構,所有無論我們匯入何種格式的模型檔案,都可以用同一個方式去訪問我們需要的模型資料。倉庫地址:assimp/assimp: The official Open-Asset-Importer-Library Repository. Loads 40+ 3D-file-formats into one unified and clean data structure. (github.com)

建議下載release版本。

使用cmake-gui工具先對專案進行編譯。下載地址:Download | CMake

第一個文字框輸入解壓assimp的位置,第三個文字框輸入編譯後的位置,推薦直接在assimp資料夾中建立build目錄。

點選configure,會彈出是否新建build資料夾,選擇是。

在彈出的頁面中選擇vs2022,其他選項不用動,點選finish。

等他執行完

現在點選generate。跑完進度條後點選open project。

選擇release或者debug都行,我這裡選擇64位release

右鍵ALL_BUILD,點選重新生成。等一段時間。

分別在build/bin/Release build/lib/Release 和build/include 和根目錄下的include中得到assimp-vc143-mt.dll、assimp-vc143-mt.lib和標頭檔案。

把它們放在環境資料夾下。

記得把build目錄下的include中的config.h檔案也拿過來。

在屬性中包含目錄的位置和庫目錄的位置。就是下面兩個加粗的位置

然後在連結器-輸入中新增lib檔名稱

最後把動態庫檔案和專案的可執行檔案放在一個目錄下。我的專案是放在這裡:

大功告成。根據[網格 - LearnOpenGL CN (learnopengl-cn.github.io)](https://learnopengl-cn.github.io/03 Model Loading/02 Mesh/)的模型載入部分測試是否新增成功。

可以參考我的專案:haha2345/myTinyOpenglRender (github.com)

相關文章