由于工作学习的需要,要用opengl绘制显示些模型动画,原来用的是Qt做UI,直接调用的是QGLWidget类,但这个只是提供了基本的框架,很多交互操作还需添加代码完成,自己偷懒也觉得繁琐,就借用了开源的工具库QGLViewer,下面是自己的编译安装过程。
开发环境:
Windows 7 64bit
VS2012
Qt 5.2.1 for Windows 64-bit (VS 2012, OpenGL, 553 MB)
Visual Studio Add-in 1.2.3 Alpha for Qt5
libQGLViewer 2.5.0
执行下面步骤的前提是已经装好Qt和其对应的VS插件
步骤1——下载libQGLViewer库,解压缩
步骤2——编译libQGLViewer库
打开VS2012,点击菜单项 QT5->Open Qt Project File,选择步骤1 解压的路径\QGLViewer\QGLViewer.pro, 然后编译即可。编译成功后可在 QGLViewer\x64\Release目录下找到 QGLViewer2.dll 和 QGLViewer2.lib,这就是以后需要调用的动态库和静态库文件。 如果需要调试可以在debug模式下再编译一次,这时得到的是QGLViewerd2.dll 和 QGLViewerd2.lib。
步骤3——测试自带examples(以simpleViewer为例)
i)仍旧通过VS2012中的QT5菜单项打开simpleViewer.pro,编译会报如下错误
这是由于程序找不到静态库,根据提示用文本格式打开simpleViewer.pro文件,替换路径C:\Windows\System32为QGLViewer2.lib所在目录。另外把QGLViewer2.dll所在目录添加到系统环境变量中或者将dll复制到C:\Windows\System32和C:\Windows\SysWOW64中。
ii)重新按i)执行,又出现如下错误:
这是程序入口错误造成的,选择工程Properties->Linker->Advanced,在Entry Point中添加mainCRTStartup,再编译运行,成功通过。
步骤4-编译安装QGLViewerPlugin
为了绘制UI方便,该库还提供了可以在Qt Designer中拖放的插件。 打开VS2012,点击菜单项 QT5->Open Qt Project File,选择步骤1 解压的路径\designerPlugin\designerPlugin.pro, 然后编译即可(记得替换路径C:\Windows\System32为QGLViewer2.lib所在目录)。编译成功后可在 designerPlugin\x64\Release目录下找到 qglviewerplugin.dll 和 qglviewerplugin.lib,这就是以后需要调用的动态库和静态库文件。 复制qglviewerplugin.dll 到 D:\Qt\Qt5.2.1\5.2.1\msvc2012_64_opengl\plugins\designer(注意替换成你所对应的路径下)即可。打开 Qt Designer可以看到插件QGLViewer已安装成功。