★配置前须知:Dev-Cpp自带OpenGL的使用和OpenGL简介

(附Dev-Cpp下载地址:http://sourceforge.net/projects/orwelldevcpp/?source=directory)

OpenGL简介:OpenGL(全写Open Graphics Library)是一个功能强大,调用方便的底层图形库。

Dev-Cpp已经包含了开发OpenGL程序基本的功能。

■建立一个OpenGL工程:

选择:(文件[F])-->(新建[N])-->(项目[P]...)-->(multimedia-->opengl)。《详情如下图:》

此工程包含了基本的OpenGL程序的结构,包括生成窗口,消息驱动机制,还有基本的OpenGL程序。

直接点击运行可以看到一个不断旋转的彩色三角形。

在该工程的 Project Option -> Parameters -> Link 中发现已经连接了库 libglu32.a, libopengl32.a

-lopengl32

在工程根目录的 Makefile.win 中也能看到

LIBS     = -L"D:/Dev-Cpp/MinGW32/lib" -L"D:/Dev-Cpp/MinGW32/mingw32/lib" -static-libstdc++ -static-libgcc -mwindows -lopengl32

所以要想建立自己的 OpenGL 工程必须在建立win32工程的Link中加入下面参数

-lglu32 -lopengl32

★开始配置实现Dev-cpp编译运行OpenGL程序

现在根据《OpenGL 编程指南》中的例程简单实现:在黑色背景中渲染一个白色的矩形

 #include<windows.h>
//#include<gl/gl.h>//glut.h中已经包含
//#include<gl/glu.h>
#include<gl/glut.h>
//绘制程序
void display() {
glClear(GL_COLOR_BUFFER_BIT);//将屏幕设置为黑色
glColor3f(.,1.0,1.0);//设置当前颜色状态为白色
glBegin(GL_POLYGON);//绘制多边形
glVertex3f(0.25, 0.25,0.0);
glVertex3f(0.75,0.25,0.0);
glVertex3f(0.75,0.75,0.0);
glVertex3f(0.25,0.75,0.0);
glEnd();
glFlush();//发送缓冲区
}
//初始化绘制
void init() {
glClearColor(0.0,0.0,0.0,0.0);//清除颜色设置
glMatrixMode(GL_PROJECTION);//设置投影方式
glLoadIdentity();
glOrtho(0.0, 1.0, 0.0, 1.0,-1.0,1.0);//设置投影空间
}
int main(int argc, char** argv) {
glutInit(&argc, argv);//初始化glut
glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);//设置显示模式为单缓冲,RGB模式
glutInitWindowSize(,);//设置窗口大小
glutInitWindowPosition(,);//设置窗口位置
glutCreateWindow("Hello");//设置窗口标题
init();
glutDisplayFunc(display);
glutMainLoop();
return ;
}

OpenGL程序

有了上面的了解,然后就可以进一步理解在Dev-Cpp中配置OpenGL的原理了

(以下相关文件下载地址:链接:http://pan.baidu.com/s/1pK4SKRp 密码:faka)

❶WINDOWS配置:

C:/WINDOWS/SYSTEM32文件下需要有这些文件:glu32.dll, glut32.dll, glut.dll, opengl32.dll

(解压后文件位置:Dev-Cpp配置OpenGL图形库需要的文件\bin)

❷Dev-Cpp库的配置:

Dev-Cpp安装目录下的Lib文件中需要有如下文件:libglu32.a, libglut32.a, libglut.a, libopengl.a

(解压后文件位置:Dev-Cpp配置OpenGL图形库需要的文件\lib)

Dev-Cpp安装目录下的inlude\GL文件中需要有如下头文件:gl.h, glu.h, glut.h

(解压后文件位置:Dev-Cpp配置OpenGL图形库需要的文件\index)

!!如果运行出现以下情况,则要进行如下操作,没有就不用

Dev-Cpp安装目录下的bin文件中需要有如下文件:glut32.dll(可以看提示添加需要的)

(解压后文件位置:Dev-Cpp配置OpenGL图形库需要的文件\bin)

❸Dev-Cpp工程的属性设置:

选择:(工具[T])-->(编译选项[C])。

在“在连接器命令行加入以下命令”中加入下面代码(千万注意每条链接间都要加空格)

-lglut32 -lglu32 -lopengl32 -lwinmm -lgdi32

《详情如下图:》

ok!!现在可以用Dev-Cpp编译运行建立自己的 OpenGL 工程了,祝贺!!!

志银参考网址:http://www.2cto.com/kf/201505/399368.html

开始写于:2016.3.22

Dev-Cpp配置OpenGL图形库(成功版本:Dev-Cpp 5.7.1 MinGW 4.8.1)的更多相关文章

  1. 【志银】Dev-Cpp配置OpenGL图形库(成功版本:Dev-Cpp 5.7.1 MinGW 4.8.1)

    ★配置前须知:Dev-Cpp自带OpenGL的使用和OpenGL简介 (附Dev-Cpp下载地址:http://sourceforge.net/projects/orwelldevcpp/?sourc ...

  2. 使用Editplus和Dev C++配置C++的编译运行环 境

    或许大家会有疑问,为何不直接使用VC;VS;或Dev这些IDE呢?何必舍近求远.主要是因为写程序这么多年来已经习惯了Editplus,包括他的快捷键,语法自动完成,语法提示等等,Editplus用了这 ...

  3. (2)在vs2010上配置opengl

    参考自http://www.yakergong.net/nehe/ 在Visual Studio 2003 中创建基于Nehe SDK的应用程序分为以下几个步骤: 创建一个空白的工程文件 包含Nehe ...

  4. 一步一步带你在VS 2017中配置OpenGL

    在VS2017环境中配置OpenGL,我们分三步:配置GLFW.配置GLAD.导出项目模板. 配置GLFW 1.首先下载GLFW,点击这里,进入Github下载. 或者 点击这里从百度云下载,提取码为 ...

  5. Mac使用Clion配置OpenGL

    Mac使用Clion配置OpenGL 之前博主是用Xcode配置的openGL,但后来因为要与非Mac队友合作,于是大家决定统一使用Clion,博主于是再次配置开发环境,这里记录一下 预先准备 Mac ...

  6. Mac使用Xcode配置openGL

    Mac使用Xcode配置openGL 博主这学期有图形学课要用到OpenGL,于是首先就开始配置开发环境了.应该说网上Windows上配置OpenGL教程比较多,Mac版的比较少.博主特来分享配置过程 ...

  7. vs2010中配置OpenGL以及针对64位系统所遇问题的解决办法

    一.下面将对VS2010中配置OpenGL进行简单介绍. 学习OpenGL前的准备工作 第一步,选择一个编译环境 现在Windows系统的主流编译环境有Visual Studio,Broland C+ ...

  8. Ubuntu中在QT中配置OpenGL

    之前搞实验室项目,博客有些天没有更新.现在学习需要,开始搞OpenGL+Ubuntu+QT. 搞了整整一天,由于是首次使用ubuntu,所以这ubuntu下配置qt和Opengl环境时走了很多的弯路, ...

  9. Code Blocks中配置OpenGL方法

    关于在Code Blocks中配置OpenGL的方法,在网上一直没有找到实用的方法,后来在马龙师兄的帮助下终于配置成功了,现把配置过程记录如下. (1)下载codeblocks,最好是带mingw的版 ...

随机推荐

  1. file_get_contents()获取https出现这个错误Unable to find the wrapper “https” – did

    file_get_contents()获取https出现这个错误Unable to find the wrapper “https” – did 解决办法 ,如果你是用的服务器,可以参考这个办法,修改 ...

  2. 【Cocos2d-Js基础教学(5)资源打包工具的使用及资源的异步加载处理】

    TexturePacker是纹理资源打包工具,支持Cocos2dx的游戏资源打包. 如果用过的同学可以直接看下面的资源的异步加载处理 首先为什么用TexturePacker? 1,节省图片资源实际大小 ...

  3. 使用wireshark抓取wcf生成的soap消息

    在使用wcf的时候想看下生成的soap的格式是怎样的,就想到了抓包. 平时用惯的抓包工具是需要破解,另外有时会不太好用. 于是就想起来用wireshark. 首先遇到几个问题: 1.wireshart ...

  4. 调用 webapi的put和delete 报"Method Not Allowed" 405 错误。

    修改引用到webapi的Dll文件对应的项目的web.config 选择生成读写方法webapi会生成四个读写的方法(CRUD),两个获取数据的.一个更新.一个删除,默认情况下更新和删除是不对外开外的 ...

  5. VirtualBox中安装CentOS-6.6虚拟机

    1. 下载 可以到官网下载,http://mirror.centos.org/centos/ 如果下载速度太慢的话,也可以到163镜像下载: http://mirrors.163.com/centos ...

  6. 解决HP打印机错误:Couldn't open fifo

    我的是因为选错了打印机协议,一开始选成了“互联网打印协议 - IPP”. 解决方案:删除原有打印机配置,重新选择协议为“HP Jetdirect-Socket”即可.

  7. 代码片段:基于 JDK 8 time包的时间工具类 TimeUtil

    摘要: 原创出处:www.bysocket.com 泥瓦匠BYSocket 希望转载,保留摘要,谢谢! “知识的工作者必须成为自己时间的首席执行官.” 前言 这次泥瓦匠带来的是一个好玩的基于 JDK ...

  8. oracle 11g设置打开空表extent储存块

    sql>alter system set deferred_segment_creation=false; sql>show parameter deferred_segment_crea ...

  9. 顺序图(Sequence Diagram)

    顺序图(Sequence Diagram)对系统的动态方面来建模. 顺序图是强调消息时间顺序的交互图. 协作图则是强调接收和发送消息的对象的结构组织的交互图 如何对动态方面建模?  所谓动态文面,即 ...

  10. ruby 中文字符to_json后乱码(unicode)

    今天遇到一个中文to_json问题 text = "第1章 青豆 不要被外表骗了" text.to_json => "\"\\u7b2c1\\u7ae0 ...