Loading

devc++配置opengl库

由于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;
}
posted @ 2024-11-09 17:27  AuroraKelsey  阅读(724)  评论(0)    收藏  举报