学习openGL-windows环境配置
windows对openGL的支持直到1.1,而如今openGL版本已经更新到4.5,为了使用高版本的API,需要安装拓展库(glew)。
openGL只是个渲染系统,但是它不能产生窗口,需要依赖其它窗口服务,这里普遍用glut。
为了使用OpenGL,必须采用三个库及相关文件。
OpenGL核心库,它提供OpenGL的基本函数。每个函数都以GL开头;
OpenGL实用库(GL Utility Library),glu库,提供简单形状的实用函数等。每个函数都以glu开头。
OpenGl实用工具包库(Utility Toolkit),glut库。它主要用来打开窗口、开发和管理菜单,以及管理事件等,函数前缀使用glut
通常一个库在windows平台,由三个文件组成,一个头文件(.h),一个库文件(.lib)和一个动态链接库文件(.dll)。
gl.h是OpenGL核心库的头文件,对应的导入库和动态库为opengl32.lib和opengl32.dll(默认在C:\Windows\System32)。
glu.h是OpenGL功能函数库的头文件,对应glu32.lib和glu32.dll(默认在C:\Windows\System32),它同样是OpenGL库的一部分。
这两个库,几乎所有版本的Windows都支持,安装了VS2015,随之也安装了OpenGL头文件(.h)和lib文件。
唯一需要考虑的是glut库。当然您可以在www.opengl.org网站上获得点击下面链接,http://www.opengl.org/resources/libraries/glut/glutdlls37beta.zip。
压缩包里包含5个文件:glut.h glut.lib glut32.lib glut.dll glut32.dll
将glut.h放到(C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\gl\)这个文件夹中.
将glut.lib和glut32.lib放到静态函数库所在文件夹中。(C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\lib\)
将glut.dll和glut32.dll放到操作系统所在目录下面的system32文件夹内. (C:Windows\system32),如果是64位操作系统,则需要放到syswow64目录下。
这样就完事大吉了。可以开始第一个OpenGl程序了。
新建一个vs2015 console application project,配置工程属性,连接器->input->附加依赖项中添加opengl32.lib, glu32.lib, glut32.lib
新建一个cpp文件,代码如下
#include <gl/glut.h> void myDisplay(void)
{
glClear(GL_COLOR_BUFFER_BIT);
glColor3f(0.0f, 0.5f, 0.0f);
glRectf(-0.5f, -0.5f, 0.5f, 0.5f);
glFlush();
} int main(int argc, char *argv[])
{
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_RGB | GLUT_SINGLE);
glutInitWindowPosition(, );
glutInitWindowSize(, );
glutCreateWindow("第一个OpenGL程序");
glutDisplayFunc(&myDisplay);
glutMainLoop();
return ;
}
显示一个中间是绿色矩形的窗口则说明配置成功。
学习openGL-windows环境配置的更多相关文章
- Ant学习-001-ant 基础知识及windows环境配置
一.Ant 概要基础知识 Apache Ant 是一个将软件编译.测试.部署等步骤联系在一起加以自动化的一个工具,大多用于Java环境中的软件开发,用以构建应用,或结合其他开源测试工具例如 git.T ...
- Selenium2学习-001-Selenium2 WebUI自动化Java开发 Windows 环境配置
此文主要介绍 Selenium2 WebUI自动化Java开发 Windows 环境配置,供各位亲们参考,若有不足之处,敬请各位大神指正,非常感谢! 所需软件列表如下所示: 所属分类 具体名称 备注 ...
- Fedora和Ubuntu下安装OpenGL开发环境配置
Fedora下OpenGl开发环境配置 开发OpenGL工程需要3个库文件和对应的头文件: libglut.so,libGLU.so,libGL.so, gl.h ,glu.h, glut.h 这些库 ...
- Qt5学习笔记(1)-环境配置(win+64bit+VS2013)
Qt5学习笔记(1)-环境配置 工欲善其事必先-不装-所以装软件 久不露面,赶紧打下酱油. 下载 地址:http://download.qt.io/ 这个小网页就可以下载到跟Qt有关的几乎所有大部分东 ...
- 大数据学习之路—环境配置——IP设置(虚拟机修改Ip的内在原因及实现)
一.IP原理 关于IP我的理解, (1)主要去理解IP地址的作用,IP地址包括网络相关部分和主机的相关部分.即:用一段特殊的数据,来标识网络特征和主机的特征. 至于具体的技术实现,日后可以慢慢体会和了 ...
- cocos2d-x3.0 windows 环境配置
cocos2d-x3.0 windows 环境配置 参考Oo泡泡糖oO的CSDN博文 :http://blog.csdn.net/u010296979/article/details/24273393 ...
- ASP.NET Core Windows 环境配置 - ASP.NET Core 基础教程 - 简单教程,简单编程
原文:ASP.NET Core Windows 环境配置 - ASP.NET Core 基础教程 - 简单教程,简单编程 ASP.NET Core Windows 环境配置 ASP.NET Core ...
- OpenGL开发环境配置-Windows/MinGW/Clion/CMake
因为某些原因,不想用过于臃肿的VS了,转而使用常用的jetbrains的CLion,Clion沿袭了jetbrans的优良传统,基本代码提示功能还是比较好的,不过就是对于windows不熟悉cmake ...
- servlet:从入门到实战学习(1)---全·环境配置
最近公司忙加班学习,学校忙助教工作,博客鸽了好久,后端学习工作过程中学了好多东西,趁着工作之余得空补补博客,算是整理下学习的东西. javaweb的后端研发需要学习的是tomcat+servlet+j ...
- Unity 用ml-agents机器学习造个游戏AI吧(1)(Windows环境配置)
前言:以前觉得机器学习要应用于游戏AI,还远得很. 最近看到一些资料后,突发兴致试着玩了玩Unity机器学习,才发觉机器学习占领游戏AI的可能性和趋势. Unity训练可爱柯基犬Puppo 机器学习训 ...
随机推荐
- linux环境的基本搭建
1.准备Linux环境(我的是centos系统) 如果你是hadoop用户在使用sudo之前需要配置一下:获取sudo权限 切换到root vi /etc/sudoersroot ALL=(ALL) ...
- #!/bin/sh & #!/bin/bash区别
在shell脚本的开头往往有一句话来定义使用哪种sh解释器来解释脚本.目前研发送测的shell脚本中主要有以下两种方式:(1) #!/bin/sh(2) #!/bin/bash以上两种方式有什么区别? ...
- 跨域解决方案之HTML5 postMessage
问题场景: web是嵌入到手机客户端中的静态页面,为了统计用户行为需要引入ga,但是ga必须是在www下才行,哪怕是localhost,这就是矛盾.解决方案是在页面中使用iframe,iframe是在 ...
- ajax方法XHR.readyState五种状态与示例
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- react 使用fortawesome字体图标
fontawesome 官方使用教程=>点我 npm i --save @fortawesome/fontawesome-svg-core@prerelease \ npm i --save @ ...
- Winform访问本地SQLServer数据库文件
Winform访问本地SQLServer数据库文件 1.项目中添加config配置,如下: <configuration> <connectionStrings> <ad ...
- Azure DocumentDB 正式发布
DocumentDB 简介 一种 NoSQL JSON 数据库 Azure DocumentDB 提供完全托管的 NoSQL 数据库服务,高度可用,自动缩放,开发简易,可以加速并预测性能.它适合诸如 ...
- Oracle数据库从入门到精通 多表查询知识以及范例
视频课程:李兴华 Oracle从入门到精通视频课程 学习者:阳光罗诺 视频来源:51CTO学院 总体内容: 多表查询的意义以及基本问题. 表的连接查询 SQL:1999语法标准对多表查询的支持. 数据 ...
- 如何向数据库中添加TIMESTAMP(6)类型的数据
to_timestamp('2011-11-11 11:11:11.1','yyyy-mm-dd hh24:mi:ss.ff')
- Docker_2 常用命令
Docker的组成 容器与镜像 docker常用命令 辅助信息 Docker的组成 Docker Daemon Docker Client Docker Hub 使用Docker Client时,输入 ...