OpenGL
文章平均质量分 87
潼潼水势向江东
这个作者很懒,什么都没留下…
展开
-
glGetString(GL_VERSION)、 glGetIntegerv(GL_MAX_TEXTURE_SIZE, &max)为何老是得不到正确的值
今天碰到了的问题如下,在程序里调用:printf("%s.\r\n", glGetString(GL_VERSION));总是输出(null).glGetIntegerv(GL_MAX_TEXTURE_SIZE, &max)得不到max的值。答:在MFC情况下,那就只有在成功调用wglMakeCurrent()后再调用glGetString(GL_VERSION)才转载 2012-04-28 16:00:25 · 9544 阅读 · 1 评论 -
OpenGL的反馈
转自:http://blog.csdn.net/sgnyyy/article/details/7308078步骤:1、调用glFeedbackBuffer()函数,指定用于保存反馈信息的数组。用于将来保存反馈的数据2、以GL_FEEDBACK 为参数进入到feedback模式,在这个过程中图元不会光栅化产生像素,帧缓存区的内容也不会改变3、glPassThrough转载 2012-12-20 16:34:27 · 596 阅读 · 0 评论 -
OpenGL的帧缓存
转自:http://bbs.hxsd.com/showthread.php?p=9574762OpenGL的帧缓存 (本文参考的是《OpenGL编程权威指南》,也就是传说中的“红宝书”)帧缓存:它是屏幕所显示画面的一个直接映象,又称为位映射图(Bit Map)或光栅。帧缓存的每一存储单元对应屏幕上的一个像素,整个帧缓存对应一帧图像。一、缓存的分类1. 颜色缓转载 2013-01-09 17:14:14 · 5323 阅读 · 0 评论 -
OpenGL绘制管线操作细节(好文)
转自:http://blog.csdn.net/lovivid/article/details/1613897OPENGL固定图形渲染管线操作细节 张桀宁 [email protected] 本文结合OPENGL技术文档和程序实验探求在OPENGL中综合使用了 顶点颜色,光照(材质),纹理,片元混合 后的应该得到的绘制效果。本文的可执行程序如下:点击打开链接转载 2013-01-10 12:44:22 · 4343 阅读 · 0 评论 -
OpenGL中光照的设置
转自:http://blog.csdn.net/h88566/article/details/75879391.创建、定位和启用光源(1)定义光源的颜色和位置GLfloat ambient[] = { 0.0, 0.0, 0.0, 1.0 };GLfloat diffuse[] = { 1.0, 1.0, 1.0, 1.0 };GLfloat position[转载 2013-01-10 16:04:12 · 5367 阅读 · 0 评论 -
OpenGL之坐标转换(好文-清晰版)
下面这篇文章详细讲述了OpenGL里的坐标转换,清晰,明了。但是其所谓的渲染管线只包括modelview 转换 和 投影变换,我觉得不是这样的。这只是从坐标角度吧。比如什么顶点着色、光栅化、送至帧缓存都没有涉及到。原文地址:http://blog.csdn.net/zhulinpptor/article/details/58971021. OpenGL 渲染管线OpenGL转载 2013-01-10 11:17:26 · 30100 阅读 · 9 评论 -
OpenGL关照设置二
转自:http://www.cnblogs.com/opengl/archive/2012/11/14/2770745.html在场景中增加光照,需要执行以下步骤:(1) 设置一个或多个光源,设定它的有关属性;(2) 选择一种光照模型;(3) 设置物体的材料属性。具体如下:1.设置光源(1)光源的种类环境光环境光是一种无处转载 2013-01-10 16:09:00 · 1517 阅读 · 0 评论 -
openGL 深度测试
openGL里常出现深度测试,一直不清楚。今天就来弄清楚。 (1)什么是深度? 深度其实就是该象素点在3d世界中距离摄象机的距离(绘制坐标),深度缓存中存储着每个象素点(绘制在屏幕上的)的深度值! 深度值(Z值)越大,则离摄像机越远。 深度值是存贮在深度缓存里面的,我们用深度缓存的位数来衡量深度缓存的精度。深度缓存位数越高,则精确度越高,目前的显卡一般都可支原创 2012-05-16 17:01:50 · 24064 阅读 · 2 评论 -
OpenGL使用混合来实现半透明效果
原文地址:http://heroxx.blog.163.com/blog/static/5423580200908113124143/今天介绍关于OpenGL混合的基本知识。混合是一种常用的技巧,通常可以用来实现半透明。但其实它也是十分灵活的,你可以通过不同的设置得到不同的混合结果,产生一些有趣或者奇怪的图象。混合是什么呢?混合就是把两种颜色混在一起。具体一点,就是把某一像素位转载 2013-04-07 14:43:45 · 3968 阅读 · 0 评论 -
再议gluPerspective和gluLookAt的关系
原文转自 :http://blog.csdn.net/wu4long/article/details/6126408看了Opengl的相关程序,发现有些东西还是特别迷茫,尤其是gluLookAt的函数做啥用的,而gluPerspective又有什么功能.在网上查看到了这篇: 终于搞明白gluPerspective和gluLookAt的关系了(zz)http://转载 2012-12-28 15:24:13 · 964 阅读 · 0 评论 -
当今世界学习OpenGL的最有名的教程
懵懵懂懂,在网上学习了一段时间的opengL,大多都是些零碎。今天看到了http://eyehere.net/2011/learn-opengl-3d-by-pyopengl-1/的一段话,才知道学习oengl也有大神级的教程啊。引用如下: “为什么要写OpenGL的教程?如果您稍微查一下,会知道当今世界,最有名的OpenGL入门教程当属NeHe的作品(原著者Jeff Molofee原创 2012-05-22 11:12:25 · 1879 阅读 · 0 评论 -
为什么会出现__imp____glutInitWithExit@12和无法解析的外部符号?
在编写OpenGL程序时,当使用到glut库时,编译能够成功,但是在执行的时候,就会 出现__imp____glutInitWithExit@12和无法解析的外部符号和__imp____glutCreateWindowWithExit@8无法解析。 这个问题的解决:在#include 之前(一定要在其前)加上下列代码: #ifndef GLUT_DISABLE_ATEXIT_HAC原创 2012-05-03 16:54:30 · 9581 阅读 · 3 评论 -
gl 绘制多边形的函数解析
1,所谓正反面 glFrontFace(GL_CCW); // 设置CCW方向为“正面”,CCW即CounterClockWise,逆时针 glFrontFace(GL_CW); // 设置CW方向为“正面”,CW即ClockWise,顺时针 如果顶点标识顺序与上边设置不一致,则会认为当前的面(眼前)为该图形的背面。 比如画一个三角原创 2012-05-02 15:29:57 · 7078 阅读 · 0 评论 -
openGL 函数能正常执行,但是没有结果,该怎么办?方法之一
在编写openGL函数时,由于不熟悉或者理解不深刻,导致很多莫名其妙的问题。 比如,当你经过千辛万苦,终于d编译成功以后,excute it!却发现会出现cannot read 内存什么什么的。很明显,指针越界了。 我们不甘心,但我们不能放弃。单步调试! 结果 发现利用openGL函数来获取某些函数或者字符串时出现了空指针的情形!原创 2012-05-05 19:11:53 · 2095 阅读 · 3 评论 -
OpenGL 函数能正常执行,但是没有结果,该怎么办?方法之二
1,一种可能的情况是,你拼写错误了。比如 glPolygonMode(GL_BACK, GL_LINE); 误写成 glPolygonMode(GL_BACK, GL_LINES);编译器是不会报错的,但是很明显,你的这条glPolygonMode(GL_BACK, GL_LINES);语句不能正常实现其控制功能,所以导致没有出现线条的多边形! 这个就只能靠小心了! 所以小心代码的拼写!原创 2012-05-05 19:23:02 · 810 阅读 · 0 评论 -
OpenGL 与显卡
转自www.gameres.com作者 张秋枫nGL显卡编程 文档简述: 随着显卡的飞速发展,更快的速度以及越来越多的新功能为硬件所支持,硬件的进步使得图形程序开发人员可以创造出更加绚丽的视觉效果,现在,电影级动画 的实时渲染已不再是梦想。我们怎么在OpenGL中利用显卡的新特性呢?答案就是OpenGL扩展。 注:如不作特别说明,本站文章中的显卡均指面向普通用户的非专业显卡。转载 2012-05-04 15:47:24 · 7812 阅读 · 0 评论 -
error C2065: 'wglGetProcAddress' : undeclared identifier (openGL)
今天调式一个小程序,使用glTexImage3D = (PFNGLTEXIMAGE3DPROC)wglGetProcAddress("glTexImage3D");来获取OpenGL扩展函数 glTexImage3D的地址,但是出现一个意想不到的error。error C2065: 'wglGetProcAddress' : undeclared identifier'wg原创 2012-05-04 17:30:54 · 3317 阅读 · 0 评论 -
显存与纹理内存详解
根据桌面>右键属性>设置>高级>适配器,可知当前电脑的显卡名,显卡内存(也叫显存)。显存 为什么重要? 1, 系统 内存只是暂时存放数据的地方,不能处理数据;要想显示数据,还得把数据传输到显卡内存里! 2, 每个3D 显卡实际只有有限的内存(常见的有2、16、32、64、128MB),而原创 2012-05-09 10:41:45 · 3388 阅读 · 1 评论 -
openGL入门详解
这是一篇转的文章。其实介绍openGL入门的资料很多,也都不错。 但是我认为这篇很长很通俗很有用,我不喜欢用脑子去记一些东西,不久就忘了。而一看这篇文章,关于openGL的东西我都想的起来。从这个意义上讲,这篇应该是我的备忘录吧。 原文地址:http://www.cppblog.com/doing5552/archive/2009/01/0转载 2012-05-10 21:16:25 · 1483 阅读 · 0 评论 -
游戏引擎与虚拟仿真系统
转自 http://blog.csdn.net/imedia_3d/article/details/53350861. 3D游戏引擎、仿真软件和图形引擎概述 目前3D图形技术大量应用于游戏和仿真领域,从技术实现上可分为基础层、中间层和应用层三个层次,如图1所示。基础层主要是3D加速硬件和厂商提供的基本的API函数接口;中间层则是根据游戏和仿真各自不同的需求编写的转载 2013-04-07 22:20:52 · 6652 阅读 · 0 评论