devc++配置opengl库

news/2024/11/15 13:40:34/文章来源:https://www.cnblogs.com/AuroraKelsey/p/18536971

由于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;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/829406.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

达梦数据库DM Exception字符串截断错误,略坑~

前言 我之前在使用达梦数据库的时候,遇到了很多很多的问题,主要对达梦数据库也不是很熟悉,它的语法和我所熟悉的mysql和postgresql有很大的区别。 今天,讲一下我之前遇到的一个问题。这个问题的起因是用达梦数据库迁移工具,将数据库从postgresql迁移到达梦数据库。迁移之后…

引用

引用就是给变量起另外的名字,区别就是在别名前加&的符号。实质上指向同一个内存。引用的两个注意事项: 1.引用必须初始化。 2.引用初始化后不可以更改。引用做函数参数就太熟悉了,引用作函数返回值倒是没见过。 1.不能返回局部变量作为引用,任何和局部变量地址相关的操…

element-ui-plus给头像avatar增加头像框

template部分:<el-avatar shape="square" :size="50" :fit="fit":src="avatarImg"class="avatar-with-border-image"/>style部分:.avatar-with-border-image {position: relative;margin-top: 5px;margin-left: 5vh…

DBeaver如何一次性执行多条sql语句,原来和单条不一样!

前言 我之前一直是用Navicat来连接数据库的,说实话,用起来真的很舒服。 但是,后来,我离职了,换了一家新公司。新公司有一个规定,不准使用Navicat,其中的原因众所周知。由于Navicat是付费的,而公司又不想付这笔钱。而且,也不能使用破解的。于是,公司给我们推荐了DBeav…

词典编译配置文件概述

本文简要讲解了《汉文博士》词典的制作方法概述 《汉文博士》允许使用者自己编写词典文件。本文简要讲述了词典编译过程和相关配置文件的编写方法。 读者需具备XML和正则表达式的基础知识。 词典编译器 《汉文博士》的词典编译器可在“文件”菜单中点击“词典编译器”调出。 编…

安川MOTOMAN机器人NX100维修的注意事项

安川MOTOMAN机器人NX100维修,操作人员安全注意事项 整个机器人的最大动作范围内均具有潜在的危险性。 为机器人工作的所有人员 (安全管理员、安装人员、操作人员和机器人维修人员) 必须时刻树立安全第一的思想 ,以确保所有人员的安全。 • 机器人的安装区域内禁止进行任何的危…

Webrtc播放H265的技术探索(datachannel+wasm)

zlm、webrtc、H265、wasm、视频播放通过这个帖子把我对通过webrtc方式播放H265视频的技术探索过程记录下来。虽然最终不一定能够形成产品进行实现,但觉得也是一个有意义的过程。很多事情不就是这样吗?~ ----------------------------- 一。背景1)由于Webrtc具有低延时、高稳…

MR756-ASEMI汽车用整流二极管MR756

MR756-ASEMI汽车用整流二极管MR756编辑:ll MR756-ASEMI汽车用整流二极管MR756 型号:MR756 品牌:ASEMI 封装:BUTTON 正向电流:6A 反向电压:1000V 正向压降:1.2V 引线数量:2 芯片个数:1 芯片尺寸:MIL 漏电流:10ua 恢复时间:35ns 浪涌电流:400A 芯片材质: 正向电压:…

python之判断语句

一、if语句 (1)单分支: 格式: if 判断条件 执行语句块1 else: 执行语句块2 备注:判断条件 if中可以使用比较运算符,<,!=,,>=,<= 案例1: a=10 if a != 10: print("你中奖了") else: print("谢谢惠顾") 2、if语句多分支 if 判断条件1: 执…

DE-9IM 空间关系模型

参考博客: 空间拓扑关系描述:9交叉模型(DE-9IM) | 会飞的大象 DE-9IM 空间关系模型 - 乌合之众 - 博客园 DE-9IM 空间关系模型 与Boost Geometry Lib - SuperVan - 博客园简述 DE-9IM 是Dimensionally Extended 9-Intersection Model的缩写,它是Egenhofer在《point set topol…

BUU BRUTE 1 wp

BUU BRUTE 1 引子 burpsuite实战指南 尝试一下发现用户名和密码是分离的,手动输入常用用户名,发现为 admin,得到提示密码是四位数字。 之后用 bp Intruder 尝试爆破,设置 payload需要注意的是如果请求间隔太短会报 429 错误,fix 一下请求间隔时间或者设置自动控制 429 即…

LeetCode 3014[输入单词需要的最少按键次数I]

LeetCode 3014[输入单词需要的最少按键次数I]题目 链接 LeetCode 3014[输入单词需要的最少按键次数I] 详情实例 实例1实例2提示题解 思路 一圈下来8个字母,每个字母按1次 二圈下来16个字母,前8个字母每个按1次,后8个字母,每个按2次 三圈下来24个字母,前8个字母每个按1次,…