一、环境准备:

  系统环境win7,64位,双显卡:集成显卡+gt540m,gt540建议下载最新的驱动,可以支持到opengl4.3标准,一般双显的笔记本,程序默认启用的是集显,我机器的集显驱动有点老,只能支持到opengl3.0,所以讲默认显卡设置为独显。

  开发环境:vs2010

  PS:查看机器及显卡支持的OpenGL版本可以使用工具GPU_Caps_Viewer_v1.18.1或者更高版本

二、OpenGL拓展包下载:

2.1 GLEW:windows开发环境,默认只支持opengl1.1的环境,但 OpenGL现在都发展到4.4了,要使用这些OpenGL的高级特性,就必须下载最新的扩展,另外,不同的显卡公司,也会发布一些只有自家显卡才支 持的扩展函数,你要想用这数涵数,不得不去寻找最新的glext.h,有了GLEW扩展库,你就再也不用为找不到函数的接口而烦恼,因为GLEW能自动识 别你的平台所支持的全部OpenGL高级扩展涵数。也就是说,只要包含一个glew.h头文件,你就能使用gl,glu,glext,wgl,glx的全 部函数。GLEW支持目前流行的各种操作系统(including Windows, Linux, Mac OS X, FreeBSD, Irix, and Solaris)。

GLEW下载地址:http://glew.sourceforge.net/,目前最新版本1.10

  GLEW下载完成后,bin下面有个glewinfo.exe,直接运行,会在同目录下市场一个txt文件,显示系统显卡支持的opengl版本和具体函数。

2.2 FreeGlut:Freeglut是一个GLUT (OpenGL Utility Toolkit) 的开源实现,使用非常广泛。OpenGL Redbook使用Freeglut代替GLUT编写代码,因为老的glut诸多不方便的协议,所以freeglut可作为glut的替代版本,具体可以参考http://baike.baidu.com/link?url=4xGj7YahqPtwq_o_1gX0LMrnJkMTx9M8wVe1sEIXsg3AofYKfurbZ8-NZrBS3I5geNhbWnZI7YCqLZ_5T3fa0a

FreeGLut下载地址:http://www.transmissionzero.co.uk/software/freeglut-devel/,目前最新版本2.8

三、环境配置

  下载glew解压,讲include下面的头文件盒lib下面的库文件,拷贝到windows SDK中。不同的系统或者开发安装包可能不一样,我的机器是,头文件拷贝到:C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Include\gl,库文件拷贝到C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Lib,如果装的vs版本太多,可能有v6,v5之类的,vs2010对应的是v7.0,vs2008对应的是v6.0,如果安装的是64位,拷贝的地址应该为:C:\Program Files \Microsoft SDKs\Windows\v7.0A\Include\gl

解压freeglut,同样拷贝头文件和库文件到glew拷贝的路径下。

四、下载示例代码

  如果没有写过glsl程序,可以去三光网站下载一个入门的示例代码,如:http://www.lighthouse3d.com/tutorials/glsl-tutorial/setup-for-glsl-example/,一个简单的茶壶示例,具体的着色语言语法这里就不解释了,下载下来或者通过代码地址下载

  下载程序下来之后,默认应该是vc6的工程,直接讲dsw用vs2010打开

程序默认没有设置链接库,可以使用代码:

  #pragma comment(lib,"glew32.lib")
  #pragma comment(lib,"freeglut.lib")

  或者在project下面的链接器->输入->附加依赖项,输入glew32.lib和freeglut.lib。

五、直接编译,运行程序,会报glew32.dll缺失,可以讲刚才下载的glew32.dll和freeglut.dll放到程序的生成路径下,即跟生成的exe放在同一个目录中。再次运行,会出现:

PS:如果用的是笔记本双显卡,如果vs启动用的是默认选择独立显卡(在启动程序上点击右键,有个“用图形显示处理器运行”选项,选择你的独立显卡),这样才能支持独立显卡的特性进行调试

感谢的参考资料:

1.http://openglbook.com/setting-up-opengl-glew-and-freeglut-in-visual-c/

2.http://www.cnblogs.com/madfrog/archive/2010/06/25/1765259.html

win7,64bit下的OpenGL着色语言(glsl)开发环境配置(原)的更多相关文章

  1. Golang(go语言)开发环境配置

    VSCode开发环境配置 目录 VSCode开发环境配置 先到VSCode官网去下载适合自己系统的VSCode安装软件 演示在WIndows下 安装使用 演示在Linux(Ubuntu/centos) ...

  2. 不用rustup,Windows下gnu版Rust安装与开发环境配置

    写在前面 本文介绍了在不使用rustup的情况下,在Windows上安装gnu版的Rust,并配置开发环境(VSCode + rust-analyzer,CLion + IntelliJ Rust)的 ...

  3. Go语言Eclipse开发环境配置-Windows

    1.首先安装eclipse,选择一个适合的版本就好,解压即可 http://www.eclipse.org/downloads/ 2.下载go语言安装包 官网地址 :http://www.golang ...

  4. window下eclipse4.5+hadoop2.6.1开发环境配置

    1.准备: eclipse4.5,hadoop2.6.1,hadoop-eclipse-plugin-2.6.0.jar. 2.eclipse配置 eclipse->windows->Pr ...

  5. windows下Qt5.4.2 for android开发环境配置

    安装包链接: http://yunpan.cn/cFs5tikVA83hK 访问密码 d029   本人所有的软件都安装在D:/Qt   1. 安装 Qt 5.4.2      不在讲述 2, 安装p ...

  6. 有关OpenGL着色语言(一)

    刚接触OpenGL着色语言...,不定期增加内容 1.OpenGL着色语言(GLSL)是什么? 用于OpenGL的面向过程的高级着色语言,是近年来图形编程领域中出现的最重要的新型开发技术,使用Open ...

  7. win7 64bit下最新Apahe2.4.18+php7.0.2+MySQL5.7.10配置

    原文:win7 64bit下最新Apahe2.4.18+php7.0.2+MySQL5.7.10配置 一.说明 以前配置apache+php+mysql都是参考网上的,一般都没有什么问题.最近公司有个 ...

  8. Fedora和Ubuntu下安装OpenGL开发环境配置

    Fedora下OpenGl开发环境配置 开发OpenGL工程需要3个库文件和对应的头文件: libglut.so,libGLU.so,libGL.so, gl.h ,glu.h, glut.h 这些库 ...

  9. 【Python基础学习一】在OSX系统下搭建Python语言集成开发环境 附激活码

    Python是一门简单易学,功能强大的编程语言.它具有高效的高级数据结构和简单而有效的面向对象编程方法.Python优雅的语法和动态类型以及其解释性的性质,使它在许多领域和大多数平台成为编写脚本和快速 ...

随机推荐

  1. 解决genymotion-arm-translation.zip无法拖拽安装的问题[转]

    1.问题由来 适用情况一:当我们启动了Genymotion模拟器后,在AndroidStudio运行app时,弹出如下错误: INSTALL_FAILED_CPU_ABI_INCOMPATIABLE ...

  2. ①HttpURLConnection通过报文提交

    在进行短信发送的接口,因厂家不同,有的厂家会采用报文的格式进行短信请求的发送与接收.本文主要介绍利用HttpURLConnection进行短信报文的请求与响应. 一般的url请求分为两种,一种是GET ...

  3. bzoj 1499 [NOI2005]瑰丽华尔兹——单调队列优化dp

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=1499 简单的单调队列优化dp.(然而当时却WA得不行.今天总算填了坑) 注意滚动数组赋初值应 ...

  4. RelativeLayout里的gravity不能居中的解决方法

    最近在遇到RelativeLayout里的gravity属性给它复制center_horizontal或者center都不能居中它的子组件,后来找到了替代方法,只要在它的每个子组件里加上android ...

  5. Appium+python自动化29-toast消息(亲测 ok)

    本篇转自博客:上海-悠悠 前言 appium1.5以后的版本才支持toast定位,并且 'automationName'得设置为'Uiautomator2',才能捕获到. 一. Supported P ...

  6. java代码switch语句求分数等级

    总结:从键盘输入分数----- 如果在0到100内,则输出等级 小于0或者是大于100都不能输出,这里用if-else条件判断. package com.c2; import java.util.Sc ...

  7. xunsearch搜索使用

    目录 如何开始搜索? 典型处理 快捷操作 搜索中的串接操作 构建搜索语句 如何开始搜索? <?php // 引入 require_once './sdk/xs/lib/XS.php'; // 创 ...

  8. Zabbix自定义监控网站服务是否能够正常响应

     监测tcp连接数文件名: /etc/zabbix/zabbix_agentd.conf.d/count_tcp.conf UserParameter=count.tcp,netstat -s|g ...

  9. 固定容器内任意个div填充算法

    <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...

  10. 什么是语义化的HTML

    语义化的HTML使用每个html标签都特定的用途,例如p标签放大段文字, h1~h6常用于标题,strong加粗强掉….. 语义化的好处: 1:去掉或样式丢失的时候能让页面呈现清晰的结构: html本 ...