由于VisualStudio太占内存,所以用老古董devc++配图形学的环境。
用到的文件下载链接
Step1:建项目
首先打开dev
点文件--新建--项目--Multimedia--OpenGL
c++/c都行(我这里用的c++)
名称最好用英文,然后确定,保存的地方也最好没有中文路径
Step2:添加库文件
找到DEV-C++的安装目录(右键快捷方式打开位置,再右键打开文件所在位置即可)
我的位置是在C:\Program Files (x86)\Dev-Cpp
点进 MinGW64
把.h
文件拷贝到 \include\GL
下。如果没有GL文件夹,就新建一个。
把.lib
文件拷贝到\lib
下。
把.dll
文件拷贝到 C:\Windows\System32
下。如果是64位系统,则拷贝到C:\Windows\SysWOW64
下
Step3:设置链接器
点项目属性--参数
在链接那栏填下面的:
-lopengl32
"C:/Program Files (x86)/Dev-Cpp/MinGW64/lib/GlU32.Lib"
"C:/Program Files (x86)/Dev-Cpp/MinGW64/lib/glut32.lib"
"C:/Program Files (x86)/Dev-Cpp/MinGW64/lib/OpenGL32.Lib"
这里路径换成你这几个.lib
文件的路径,可以点那个加入库或对象
自己找
然后点工具--编译选项
勾上在连接器命令行加入以下命令
然后加上下面的
-static-libgcc -lglut32 -lglu32 -lopengl32 -lwinmm -lgdi32
编译器我选的32位release
Step4:添加头文件
所有代码最前面添加两行
#define GLUT_DISABLE_ATEXIT_HACK
#include <windows.h>
然后大功告成
注:如果有奇怪报错可以试一下,右键main.cpp--使用···打开--Default application
运行一个简单的测试代码
#define GLUT_DISABLE_ATEXIT_HACK
#include <windows.h>
#include <GL/glut.h>
#include <math.h>
const float facX = 1.0f; // X轴缩放因子
const float x0 = 0.0f; // X轴平移量
const float facY = 1.0f; // Y轴缩放因子
const float yy = 0.0f; // Y轴平移量
float sinc(float x) {
if (x == 0.0f) {
return 1.0f;
}
return sin(x) / x;
}
void display() {
float x, y;
// 清除屏幕,使用背景色
glClear(GL_COLOR_BUFFER_BIT);
glColor3f(0.0, 0.0, 0.0);
// 开始绘制线段序列
glBegin(GL_LINE_STRIP);
//计算sinc函数的值并绘制点
for (x = -20.0f; x < 20.0f; x += 0.01f) {
y = sinc(x);
glVertex2f(x * facX + x0, y * facY + yy);
}
glEnd();
glFlush();
}
void init() {
glClearColor(1.0, 1.0, 1.0, 1.0);
glMatrixMode(GL_PROJECTION);
//正交投影
gluOrtho2D(-20.0 * facX + x0, 20.0 * facX + x0, -1.0 * facY + yy, 1.0 * facY + yy);
}
int main(int argc, char** argv) {
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);
glutInitWindowSize(640, 480);
glutCreateWindow("lab1");
init();
glutDisplayFunc(display);
glutMainLoop();
return 0;
}
标签:1.0,lib,opengl,--,0.0,float,dev,c++,GL
From: https://www.cnblogs.com/AuroraKelsey/p/18536971