Windows 上 Assimp(Open Asset Import Library) 源码的编译 及 Samples 的编译运行

Posted ShaderJoy

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Windows 上 Assimp(Open Asset Import Library) 源码的编译 及 Samples 的编译运行相关的知识,希望对你有一定的参考价值。



​Assimp​​  为加载多种已知 3D 模型格式提供了一套统一的方式,而且它还是开源跨平台的(android/ios 也都有支持)。


可能会遇到的错误及解决方法:

1. error LNK2019: 无法解析的外部符号 _compress,该符号在函数 _wmain 中被引用

这个错误是因为Cmake没有选择正确的 ZLIB 库,可以选择自己本地已有的ZLIB库,也可以通过勾选 CMAKE 自己编译ZLIB库(\\contrib\\zlib)。(如果要编译 Samples 的话,还需要指定本地的 GLUT 库 和 OPENGL 库)

如下图所示:


Windows


2. error LNK2026 模块对于 SAFESEH 映像是不安全的


这个问题可以通过以下方式解决:     Windows


3. 无法打开文件"LIBC.lib"问题解决


解决方法如下图所示:   Windows


4.Samples发生RunTime错误


DLL 缺失:   1.编译assimp项目生成 assimp-vc110-mt.dll,存放于 build\\code\\Debug目录下; 2.除了需要它还需要一个名为 devIL.dll 的动态库。   模型缺失:   Assimp 的测试模型存放在 assimp-3.3.1\\test\\model 和 assimp-3.3.1\\test\\models-nonbsd 目录下,在项目的“调试”->“命令参数”填入想要加载的模型,如下所示:   Windows

    排除以上错误以后,我们就可以使得 Samples 运行起来了:     第一个是不带纹理的模型加载:   Windows

  第二个是带纹理的模型加载:   Windows


以上是关于Windows 上 Assimp(Open Asset Import Library) 源码的编译 及 Samples 的编译运行的主要内容,如果未能解决你的问题,请参考以下文章

一步步学OpenGL(38) -《Assimp库实现骨骼蒙皮动画》

一步步学OpenGL(38) -《Assimp库实现骨骼蒙皮动画》

Cmake 无法正确生成 assimp 解决方案 [Windows 10]

你如何使用 Assimp 加载 Blender 文件?

Assimp不从层片文件中读取纹理坐标信息

在mingw环境下编译assimp