QT+opengl学习
学习链接:https://blog.csdn.net/jack_20/article/details/77713441
学习过程中发现提供的源码编译报错,确认为环境配置+版本不匹配问题
程序修改地方:
1、.pro文件中
改为
QT += widgets opengl
LIBS += glut32.lib //该库为第三方Opengl库,添加该库才可以使用glu开头的函数
TEMPLATE = app
CONFIG += warn_on
HEADERS = nehewidget.h
SOURCES = nehewidget.cpp \
main.cpp
TARGET = lesson01
2、main.cpp中
删除
a.setMainWidget( &w );
3、nehewidget.cpp中
删除
setCaption( "NeHe's First Polygon Tutorial" );
或则替换为
setWindowTitle( "NeHe's First Polygon Tutorial" );
4、添加头文件
#include <QKeyEvent>
#include<glut.h> //第三方头文件
#include <qgl.h>
#include <GL/GLU.h>
好了程序改完了,但是现在运行肯定会报错,因为glut32.lib不存在。怎么办?
如果你的编译环境为32位,那么直接到http://www.bvbcode.com/cn/napbrom9下载5个文件。
如果你的编译环境为64位,那么到https://developer.nvidia.com/cg-toolkit,Cg 3.1 Toolkit (window安装包不分32位64位)。
注意,在安装的时候需要选择只安装32位或者32位64位一起安装,如果编译环境为64位,那么32,64的一起安装吧。
最后在安装路径的lib.x64中可以得到glut32.lib(注意,名字虽然为32,但是其实它是64位的),在bin.x64中可以得到glut32.dll。在include/GL中可以得到glut.h。
好了,现在我们已经得到想要位数的glut32.lib、glut32.dll、glut32.h。接下来要把它们放到环境路径下。
把glut.h(不区分32位跟64位)放到qt安装路径的include文件夹里,我的是 D:\Qt\Qt5.8.0\5.8\msvc2015_64\include
然后把glut32.lib放到qt安装路径的lib文件夹里。最后把glut32.dll放到C:\Windows\System32(如果编译环境为64位,则放到C:\Windows\SysWOW64)
完成后,返回工程,运行一下,启动完成。有什么问题可以以下留言,一起探讨!
上一篇: 新手站长怎么简单的分析网站日志