OpenGL
jieniyimiao
真的英雄,在于,以脆弱的凡人之躯,而具有神性的不可战胜。
展开
-
二维图形的剪裁_Sutherland-Hodgeman_Cohen—Sutherland
http://www.cnblogs.com/baichenjia/p/3694727.html转载 2014-06-28 13:57:47 · 1862 阅读 · 0 评论 -
OpenGL 矩阵变换
Overview几何数据——顶点位置,和标准向量(normal vectors),在OpenGL 管道raterization 处理过程之前可通过顶点操作(Vertex Operation)和基本组合操作改变这些数据。Object Coordinates对象的本地坐标系——任何变换之前的最初位置.为了变换(transformation)这些对象,可以调用glRo原创 2014-09-13 11:55:14 · 1112 阅读 · 0 评论 -
opengl纹理操作
我们在前一课中,学习了简单的像素操作,这意味着我们可以使用各种各样的BMP文件来丰富程序的显示效果,于是我们的OpenGL图形程序也不再像以前总是只显示几个多边形那样单调了。——但是这还不够。虽然我们可以将像素数据按照矩形进行缩小和放大,但是还不足以满足我们的要求。例如要将一幅世界地图绘制到一个球体表面,只使用glPixelZoom这样的函数来进行缩放显然是不够的。OpenGL纹理映射功能支持将一原创 2014-09-26 14:47:39 · 1471 阅读 · 0 评论 -
B样条曲线
介绍 1074年,Gordon和Riesenfeld用B样条基函数代替了Bernstein基函数,构造了B样条曲线。B样条曲线分段组成。每一段的参数t的区间为[0,1]。这样就克服了Bezier曲线的缺点:改变Berier曲线任意一个控制点,曲线上的所有点都变换。BSpline曲线的优点:修改某一控制点只引起与该控制点相邻的曲线形状发生变化,远处的曲线形状不受原创 2014-09-26 20:24:46 · 2166 阅读 · 2 评论 -
OpenGL雾(fog)
使用fog步骤:1. enable. glEnable(GL_FOG); // 使用雾气2. 设置雾气颜色。glFogfv(GL_FOG_COLOR, fogColor);3. 设置雾气的模式. glFogi(GL_FOG_MODE, GL_EXP); // 还可以选择GL_EXP2或GL_LINEAR4. 设置雾的密度. glFogf(GL_FOG_DENSITY原创 2014-09-28 19:27:52 · 2171 阅读 · 0 评论 -
Sutherland-Hodgeman多边形裁剪(转载)
Sutherland-Hodgeman多边形裁剪 Sutherland-Hodgman算法也叫逐边裁剪法,该算法是萨瑟兰德(I.E.Sutherland)和霍德曼(Hodgman)在1974年提出的。这种算法采用了分割处理、逐边裁剪的方法。 一、Sutherland-Hodgeman多边形裁剪算法思想: 每次用窗口的一条边界(包括延长线)对要裁剪的多边形进行裁剪,裁剪时,顺序原创 2014-10-13 12:09:41 · 8319 阅读 · 0 评论 -
OpenGL中的抗锯齿技术
计算机通过离散(不连续)的像素来绘制图形,想象一下,真实世界中,我们画直线,是比连续画的,还是一个点一个点画的?计算机就是一个点一个点画的(很小的矩形).这样就会导致绘制的图形走样(锯齿),消除锯齿的技术就叫反走样(抗锯齿)可以看这篇:http://blog.csdn.net/mikewolf2009/archive/2009/08/18/4460421.aspx点示例当点原创 2014-10-30 21:23:14 · 7160 阅读 · 0 评论 -
Ubuntu 13.04 安装 OpenGL
前言OpenGL 是一套由SGI公司发展出来的绘图函式库,它是一组 C 语言的函式,用于 2D 与 3D 图形应用程式的开发上。OpenGL 让程式开发人员不需要考虑到各种显示卡底层运作是否相同的问题,硬体由 OpenGL 核心去沟通,因此只要显示卡支援 OpenGL,那么程式就不需要重新再移植,而程式开发人员也不需要重新学习一组函式库来移植程式。接下来,我们就一步一步的在Ub原创 2015-03-23 21:25:00 · 1623 阅读 · 0 评论 -
OpenGL - obj文件的导入
http://blog.csdn.net/silangquan/article/details/9707347Obj文件简介 OBJ文件是Alias|Wavefront公司为它的一套基于工作站的3D建模和动画软件"Advanced Visualizer"开发的一种标准3D模型文件格式,很适合用于3D软件模型之间的互导,也可以通过Maya读写。比如你在3原创 2015-06-28 21:44:07 · 4126 阅读 · 0 评论 -
.obj文件格式与.mtl文件格式
最近在学习obj文件格式,上网查了些资料,很难找到比较全面的文章,尤其是对.mtl文件的说明甚少。今天把最近搜索的资料整合了一下。这里的obj文件格式指的是Wavefront公司为它的一套基于工作站的3D建模和动画软件"Advanced Visualizer"开发的一种文件格式。OBJ文件是一种标准的3D模型文件格式,很适合用于3D软件模型之间的互导。OBJ文件是一种文本文件格式,这就意味着你可以原创 2015-07-07 17:55:23 · 33617 阅读 · 3 评论 -
MipMap的LOD实现原理
当使用MipMap时我们可能会遇到tex2D,tex2Dbias,tex2Dgrad,tex2Dlod几种纹理采样函数。在PS中tex2D自动计算应该使用的纹理层。tex2Dbias需要在t.w中指定一个偏移量来把自动计算出的纹理层全部偏移指定的值。tex2Dgrad需要提供屏幕坐标x和y方向上的梯度来确定应该使用的纹理层。tex2Dlod需要在t.w中明确指定要使原创 2015-06-10 17:36:32 · 9777 阅读 · 0 评论 -
OpenGL的版本历史和发展
来源请注明,本文永久地址为http://www.cnblogs.com/vertexshader/articles/2917540.htmlOpenGL®作为业界最为广泛使用的2D和3D图形接口标准,应用在成千上万的各式各样的计算机的程序中。从初期的崭露头角,到与Direct3D激烈竞争,后经历黯淡被Khronos接手又发扬光大,已经历经波折发展了20年。由于过去的黯淡,至今甚至仍有人站在错误的时原创 2015-07-05 20:39:04 · 1713 阅读 · 0 评论 -
多边形绘制
绘制模式在绘制多边形时除了默认的填充方式,还可以使用点和线使用glPolygonMode函数来设置模式三种不同模式下的绘图 GL_FILL GL_LINEGL_POINT多边形的两面如果以顺时针绘制则是反面,逆时针绘制则是正面 // 设置正面为填充模式glPolygonMode(GL_FRONT, G原创 2014-09-13 19:14:31 · 1341 阅读 · 0 评论 -
视口变换矩阵 glviewpoint
原创 2014-09-13 11:59:55 · 3176 阅读 · 0 评论 -
位图与文字
位图由一个个像素组成,画位图,就是画一个个像素点.如下图像素点越多,那么图片的清晰度就更高。当然由于让一个人用一个个像素画图片,那真是痛苦...so,只是了解下函数而已.OpenGL中画位图的三个步骤一.定位(glRasterPos)假设你画下一个像素点,那么首先则需要确定位置二.定义位图的像素点一个图形由一组像素组成,如下图的F原创 2014-09-13 13:12:47 · 1192 阅读 · 0 评论 -
OpenGL开发库的详细介绍
OpenGL开发库的组成开发基于OpenGL的应用程序,必须先了解OpenGL的库函数。它采用C语言风格,提供大量的函数来进行图形的处理和显示。OpenGL库函数的命名方式非常有规律。所有OpenGL函数采用了以下格式库前缀有gl、glu、aux、glut、wgl、glx、agl等等,分别表示该函数属于OpenGL那个开发库等,从函数名后面中还可以看出需要多少个参数以及参数的类型。I代转载 2014-07-21 20:17:55 · 1148 阅读 · 0 评论 -
OpenGL中的光照
本文章相应的PDF文档和程序及其源代码可以在http://download.csdn.net/source/240256下载转载 2014-06-12 20:28:54 · 2810 阅读 · 0 评论 -
OpenGL材料参数设置
依次是环境光参数,manfansh //黄铜 0.329412, 0.223529, 0.027451, 1.000000, 0.780392, 0.568627, 0.113725, 1.000000, 0.992157, 0.941176, 0.807843, 1.000000, 27.897400, //青铜 0.212500, 0.127500, 0原创 2014-06-12 20:26:51 · 4674 阅读 · 2 评论 -
最简单的opengl程序
#include #pragma comment(linker, "/subsystem:/"windows/" /entry:/"mainCRTStartup/"" )void myDisplay(void){glClear(GL_COLOR_BUFFER_BIT);glRectf(-0.5f, -0.5f, 0.5f, 0.5f);glFlush();转载 2014-07-25 20:12:56 · 1400 阅读 · 0 评论 -
OpenGL基础图形编程
一、OpenGL与3D图形世界1.1、OpenGL使人们进入三维图形世界 我们生活在一个充满三维物体的三维世界中,为了使计算机能精确地再现这些物体,我们必须能在三维空间描绘这些物体。我们又生活在一个充满信息的世界中,能否尽快地理解并运用这些信息将直接影响事业的成败,所以我们需要用一种最直接的形式来表示这些信息。 最近几年计算机图形学的发展使得三维表现技术得以形成,这些三维表现技转载 2014-07-25 19:10:11 · 2098 阅读 · 0 评论 -
glViewport()函数和glOrtho()函数的理解
在OpenGL中有两个比较重要的投影变换函数,glViewport和glOrtho。glOrtho是创建一个正交平行的视景体。 一般用于物体不会因为离屏幕的远近而产生大小的变换的情况。比如,常用的工程中的制图等。需要比较精确的显示。 而作为它的对立情况, glFrustum则产生一个透视投影。这是一种模拟真是生活中,人们视野观测物体的真实情况。例如:观察两条平行的火车到,在过了很远之后,这转载 2014-07-25 21:31:23 · 1071 阅读 · 0 评论 -
glPushMatrix()和glPopMatrix()的作用
当你做了一些移动或旋转等变换后,使用glPushMatrix();OpenGL 会把这个变换后的位置和角度保存起来。然后你再随便做第二次移动或旋转变换,再用glPopMatrix();OpenGL 就把刚刚保存的那个位置和角度恢复。比如:glLoadIdentity();glTranslatef(1,0,0);//向右移动(1,0,0)glPushMat原创 2014-09-06 21:23:46 · 1295 阅读 · 0 评论 -
glMatrixMode(),glLoadIdentity(),glLoadMatrixf(),glMultMatrixf()作用
glMatrixMode (GL_PROJECTION);//表示把当前矩阵指定为用于投影变换 //视图矩阵GL_MODELVIEW、投影矩阵:GL_PROJECTION、纹理矩阵GL_TEXTURE glLoadIdentity ();//把当前的可修改矩阵设置为4x4单位矩阵 glLoadMatrixf(const GLfloat *m);//把当前矩阵的16个值设置为m指定的值原创 2014-09-06 21:25:16 · 5898 阅读 · 0 评论 -
OpenGL ES学习总结:基础知识简介
什么是OpenGL ES?OpenGL ES (为OpenGL for Embedded System的缩写) 为适用于嵌入式系统的一个免费二维和三维图形库。为桌面版本OpenGL 的一个子集。OpenGL ES管道(Pipeline)OpenGL ES 1.x 的工序是固定的,称为Fix-Function Pipeline,可以想象一个带有很多控制开关转载 2014-08-10 11:58:02 · 1185 阅读 · 0 评论 -
glShadeModel函数 GL_SMOOTH与GL_FLAT的区别
glShadeModel函数用于控制opengl中绘制指定两点间其他点颜色的过渡模式参数一般为GL_SMOOTH(默认),GL_FLATopengl默认是将制定的两点颜色进行插值,绘制之间的其他点如果两点的颜色相同,使用两个参数效果相同如果两点颜色不同,GL_SMOOTH会出现过渡效果,GL_FLAT 则只是以指定的某一点的单一色绘制其他所有点如图可以对比G原创 2014-09-08 15:46:48 · 2794 阅读 · 0 评论 -
OPENGL顶点数组, glDrawArrays,glDrawElements
顶点数组, glDrawArrays,glDrawElements - [OpenGL]前两天接触OpenGL ES的时候发现里面没有了熟悉的glBegin(), glEnd(),glVertex3f()函数,取而代之的是glDrawArrays()。有问题问google,终于找到答案:因为OpenGL ES是针对嵌入式设备这些对性能要求比较高的平台,因此把很多影响性能的函数都去掉了,上述的几原创 2014-08-14 16:38:19 · 4528 阅读 · 0 评论 -
OpenGl 坐标转换
1. OpenGL 渲染管线OpenGL渲染管线分为两大部分,模型观测变换(ModelView Transformation)和投影变换(Projection Transformation)。做个比喻,计算机图形开发就像我们照相一样,目的就是把真实的场景在一张照相纸上表现出来。那么观测变换的过程就像是我们摆设相机的位置,选择好要照的物体,摆好物体的造型。而投影变换就像相机把真实的三维场景显示在相纸原创 2016-01-15 16:22:45 · 1773 阅读 · 0 评论