(转)如何在Windows下使用OpenGL 2.0的API(包括GLSL)
opengl版本太低 http://forum.ubuntu.com.cn/viewtopic.php?f=42&t=163346&view=previous 上面的文章是Ubuntu论坛的一个贴子,讲述了opengl、mesa、和显卡驱动的关系,不过我还是没有看明白(晕啊) 【摘录】OpenGL是一套国际标准,所谓国际标准,就是写在纸面上的东西,而不是实际可用的东西。不过各大厂商会遵照这堆纸编写他们的驱动程序中的OpenGL功能。即OpenGL是标准,驱动+ICD+OpenGL.dll是实现 Driver Status 其中DRI表示的是varies with the driver,所以DRI组件中对各个显卡的支持情况各有不同,intel的,到7.2,是支持到OpenGL1.4 / 如何在Windows下使用OpenGL 2.0的API(包括GLSL) http://bbs.gameres.com/showthread.asp?threadid=109485 先简单的说我所知道的opengl在windows下的开发方式: 1、使用windows自带的opengl1.1+ glut(需要自己编译 )或者其他的glut增强版人freeglut、openglut 2、使用mesa 3、使用windows自带的opengl1.1+ glut + glew进行扩展 在windows下配置mesa实现的opengl有些注意事项: 首先,你要到www.mesa3d.org下载源程序包,一般要用到两个包mesaLib.zip和mesaGLUT.zip。值得一题的是,和许多开源项目一样,Mesa3D也只是提供了源代码,并没有提供直接可用的二进制文件,使用者需要重新编译源代码来的到可以使用的二进制文件。下载完成之后,把两个包放在同一个目录下面,直接选择“解压到当前目录...”来解压两个包,默认情况下,两个包被解压到了同一个文件夹下面(比如,Mesa-7.0.3)。然后,按照“/Mesa-7.0.3/windows/VC8”路径找到Visual Studio 2005的解决方案文件(mesa.sln)。打开它,发现这个解决方案中有好多工程(一般是4个,gdi、glu、mesa、osmesa),什么设置也不用修改(默认是Debug目标,而不是Release,千万不要修改),直接分别在右边的“解决方案资源管理器”中右键单击各个工程项,选择“生成”。等待所有的工程都生成成功之后你可以从“/Mesa-7.0.3/lib”这个路径下面得到3个DLL文件(opengl32.dll、glu32.dll、osmesa32.dll)和对应的库文件(*.lib)。同样在“/Mesa-7.0.3/windows/VC8/progs/glut”路径下面,你可找到GLUT的工程文件(glut.vcproj),依照同样的方法,生成GLUT工程。之后可以在“/Mesa-7.0.3/lib”这个路径下找到glut32.dll以及相应的库文件。 好了OpenGL 2.0的DLL和相应的库文件就全都得到了。编程的时候所需的所有头文件可以在“Mesa-7.0.3/include”这个路径下找到(或者你干脆就把这个目录设置成Visual Studio的include搜索目录)。 这里需要注意一点,由于编程时要对gl.h、glu.h等头文件进行#include进行引用,这些头文件会和Visual Studio中自带的gl.h、glu.h等头文件冲突,所以最好删除Visual Studio中的相应文件(建议对这些文件备份);同理,Visual Studio中的opengl32.lib文件也要删掉(建议备份)。 我自己添加的: 或者还有另外一种方法,在设置环境变量的时候,将mesa的include、lib、path添加到系统的include、lib、path的前面,参考我下面的 // mesa(opengl另外的一个实现).bat @echo off echo 设置Mesa(OpenGL的非官方实现)环境变量 set MESA_DIR=D:/program/Mesa/Mesa-7.4.2 rem 已经将D:/program/Mesa/Mesa-7.4.2/bin加入到了用户的path环境变量中 set include=%MESA_DIR%/include;%include% rem 不包含debug版本,已经编译了debug版本, set lib=%MESA_DIR%/lib;%lib% 根据上面引用的帖子的内容,很多人认为mesa在windows下比d3d慢,有几种说法: 1、在windows下的opengl开发就使用windows自带的1.1版本的opengl实现,如果要使用opengl2.0、2.1或者更高版本的opengl,则可以用扩展技术,但是这需要显卡驱动的支持,并且不能跨平台 2、使用glew。这个库对不同的opengl扩展进行了统一的封装 3、直接使用windows的d3d或者managed d3d(.net版本的d3d) 4、mesa在linux上更加适合,且性能不比d3d在windows上的性能差,也就是说mesa不适合于windows |
(转)如何在Windows下使用OpenGL 2.0的API(包括GLSL)相关推荐
- Windows下学习Objective-C 2.0
为什么要在windows下学习objective c 学习一门移动端的语言,为后面的工作做准备 穷,目前买不起Mac.只能在Windows下曲线学习. 如何在Windows下搭建Objective-c ...
- 如何在windows下安装cygwin
如何在windows下安装cygwin 转载于:https://www.cnblogs.com/zhujiabin/p/5747580.html
- 如何在Windows下发布QT应用程序
如何在Windows下发布QT应用程序 [环境介绍] [操作系统]:Windows 10 64bit [IDE套件]:QT Creator 4.8.0 [编译器版本]:QT5.12.0 MSVC201 ...
- 如何在Windows下强制git使用LF而不是CR + LF?
本文翻译自:How do I force git to use LF instead of CR+LF under windows? I want to force git to checkout f ...
- 如何在 Windows 下创建 macOS 引导介质 (USB 启动盘)
请访问原文链接:如何创建可引导的 macOS 安装介质,查看最新版.原创作品,转载请保留出处. 作者主页:www.sysin.org 完整版请参看:如何创建可引导的 macOS 安装介质 补充章节: ...
- 【实用】如何在windows下快速截图?
如何在windows下快速截图? 快速截图是很多人的需求.截图的工具和方案也很多,但是,这里给出一个通用的,被大众认为最高效的一个解决方案. 我们都知道键盘上有一个"prt sc" ...
- 如何在Windows下利用Apche查看MySQL数据库?
本篇文章主要跟大家介绍的是如何在Windows下利用Apche查看MySQL数据库,小杜觉得挺实在的,就整理了一下并分享给大家做个参考,希望大家看完之后有一定的收获.因此,有感兴趣的朋友记得要看完! ...
- 如何在windows下安装CentOS7.7
如何在windows下安装CentOS7.7 一.下载Oracle VM VirtualBox和CentOS7.7 1.先从官网上下载和自己Windows系统对应的版本 最新的版本是 6.0 下载地址 ...
- wxpython 如何在windows下同时显示unicode中日韩文
周海汉 /文 2010.1.6 python版本,python 2.6+,wxpython 2.8+ 问题提出 遇到wxpython 如何在windows下同时显示中文日文韩文越南拼音的问题. win ...
- Windows 下的 OpenGL 开发环境配置(GLFW+GLAD)
引言 最近在读 Unity 4.3 的源码,研究到 Unity 集成的物理引擎 PhysX 和 Box2D 部分,接下来还要研究渲染引擎方面的东西,想着直接倒腾一下,自己集成一遍写个小 demo .当 ...
最新文章
- 用LIBSVM做回归和预测
- 申请Let's Encrypt的证书
- 数据结构(8)----栈与队列之循环队列
- 农村电商,如何做到年入100万?
- LeetCode Interview Qustions: Add Two Number
- Java中,成员内部类的常见修饰符及应用 成员内部类不是静态的,访问的格式...
- android拦截黑名单电话和短信
- 【网络编程】Socket网络编程基础
- PSP-DDR跳舞机模拟器制谱教程
- 错误	LNK2005 xxx已经在 xxx.obj 中定义
- BGP 自动路由聚合
- 前端实现antd文本域限制字数
- PMP 成本计算相关
- 找规律万能公式_求各种数学万能公式求一些万能公式,帮助各个喜欢数学的同学,求解方程、列方程、求根、列规律式等等,最好有较详细的用法和解释....
- 前端微信公众号开发,成功拿到了字节跳动、腾讯大厂offer
- 21.通用型1602液晶显示屏操作方法
- SCD-缓慢变化维-拉链表
- 第五章运算符表达式和语句
- 你对本岗位的认识PHP,本岗位工作认识
- python小数乘法计算_小数乘法100道
热门文章
- C++ 数据结构,vector与栈介绍
- mysql 使用注意
- Dynamics CRM2013 6.1.1.1143版本号插件注冊器的一个bug
- pyhon基础(一)
- !DOCTYPE html PUBLIC -//W3C//DTD XHTML 1.0 Transitional//EN http://www.w3.org/TR/xhtml1/DTD/xhtm...
- asp.net 从客户端中检测到有潜在危险的Request.Form值
- linux下apache2两种工作模式及两者切换
- Cisco路由重分发配置(引入路由)
- html里面怎么引入swiper,JavaScript库——使用swiper.js创建嵌套的swiper
- php bc gmp,php中ipv6转纯数字和反转