最近想看看图形学,选择速通LearnOpenGL,不出意外最耗时间的依然是配置环境。按照教程上的把GLFW等等配置的没有问题,但是在Assimp这里卡住了。原因是教程上说的不详细,而网上查的又和现在的版本相去甚远,导致捣鼓了好一段时间才搞定。
环境:
- VS 2022
第一步:Github下载Assimp
直接打开github上的assimp并且下载压缩包:GitHub - assimp/assimp: The official Open-Asset-Importer-Library Repository. Loads 40+ 3D-file-formats into one unified and clean data structure.
解压出来大致长这样:
第二步:使用Cmake编译
下载cmake,在bin文件夹内打开cmake-gui.exe,打开的页面如下:
第一行选择assimp所在的文件夹,第三行选择编译完的文件放在哪个文件夹(你可以像我一样放在同目录的build文件夹内),然后按左下角configure,一串变红的变量,不要做更改再点一下configure,所有变量变成白色,随后点generate,就可以在文件夹内看到编译好的文件。
这里可能会出现缺少DirectX的报错,建议提前搜索下载DirectXSDK并配置好环境变量,这样就不会出现报错。
第三步:VS内生成
在cmake显示编译成功后,你可以点generate右边的open project直接用vs打开。如果没有反应的话,找到编译文件所在文件夹打开sln解决方案,如下图:
打开名为Assimp.sln即可。
打开之后在上面的菜单找到生成-生成解决方案,然后伴随着漫长的等待,生成终于是结束了。我这里显示3成功,实际上和数量没关系。只要ALL_BUILD生成成功就行。
第四步:找到你需要的文件
这一步是比较麻烦的一步,以前的Assimp会直接把所有文件都放在include和code文件夹里面,但现在不一样了,导致找了半天。
先找到我们最需要的.dll和.lib文件:
.dll文件在\bin\release文件夹内。如果你生成用的是VS的debug模式,那就在\bin\debug文件夹内。
.lib文件在\lib\release文件夹内:
然后找include文件夹,其中绝大部分在原来解压出来的include文件夹内,直接复制就行:
但是只用原来解压的include文件夹是不够的,还要加上编译完的文件夹内的include文件夹才行,里面有两个非常重要的头文件:
OK,以上就是Assimp需要的所有文件了。如果还有别的问题,欢迎在评论区指出。谢谢!