如何将 libigl 库整合到自己的项目中
首先请确保你已经正常编译并运行 libigl 库自带的例子。
1. 复制libigl下的 include
与 extern
目录到你的项目目录中
(可以到任何目录里,这里我只是为了方便移动项目而特意把所有依赖文件都放到自己的项目目录中)
2. 搜索libigl下的所有 .lib
文件到你的项目目录中
3. 重点来了,添加头文件路径
将 include、external/eigen、external/glad、external/glfw
目录的绝对路径添加到包含文件目录中,注意属性页面选中的架构要和VS主界面选中的架构一直,具体神坑请见博文:VS C++ include与lib目录的配置
4. 第二个重点来了,添加lib文件引用
这里又要注意了,添加lib文件夹到库包含目录是没有用的,只能采用 #pragma comment(lib, "./glad.lib")
的方式引用各库,具体情况还是见VS C++ include与lib目录的配置
有意思的是,#pragma
竟然可以写相对目录…
如图:
#pragma warning(disable:4996)
#pragma comment(lib, "./glad.lib")
#pragma comment(lib, "./glfw3.lib")
//#pragma comment(lib, "./igl.lib")
//#pragma comment(lib, "./igl_opengl_glfw_imgui.lib")
//#pragma comment(lib, "./igl_opengl_glfw.lib")
//#pragma comment(lib, "./imgui.lib")
//#pragma comment(lib, "./igl_opengl.lib")
#include<glad/glad.h>
#include <igl/readOFF.h>
#include <igl/unproject_onto_mesh.h>
#include <igl/opengl/glfw/Viewer.h>
#include <iostream>
至此,渡劫成功,赶快享受 libigl
给你带来的快感吧!