随笔分类 - OpenGL
OpenGL(八) 显示列表
摘要:OpenGL在即时模式(Immediate Mode)下绘图时,程序中每条语句产生的图形对象被直接送进绘图流水线,在显示终端立即绘制出来。当需要在程序中多次绘制同一个复杂的图像对象时,这种即时模式会消耗大量的系统资源,降低程序的运行效率,为此,OpenGL提供了一种更...
阅读全文
OpenGL(七) 光照模型及设置
摘要:OpenGL把现实世界中的光照系统近似归为三部分,分别是光源、材质和光照环境。光源就是光的来源,是“光”这种物质的提供者; 材质是指被光源照射的物体的表面的反射、漫反射(OpenGL不考虑折射)特性;材质反映的是光照射到物体上后物体表现出来的对光的吸收、漫反射、反射等...
阅读全文
OpenGL(六) gluLookAt和gluPerspective函数解析
摘要:在调用gluLookAt和gluPerspective函数之前一般要先调用一下glLoadIdentity函数,先说一下这个函数是做什么的。glLoadIdentityglLoadIdentity是一个无参的无值函数,其功能是用一个4*4的单位矩阵来替换当前矩阵,实际...
阅读全文
OpenGL(五) 三维变换之模型视图矩阵
摘要:计算机三维图形学中,一个基本的任务是如何描述三维空间中一个物体位置的变化,也就是如何 描述物体的运动。通常情况下,物体位置的变化包含三个基本的变化:平移、旋转和缩放,物体的运动也可以用这三个基本的运动形态的组合来描述。图形学中物体运动的数学表述是:将点的初始位置坐标P...
阅读全文
OpenGL(四) 左右手坐标系及基本坐标变换
摘要:左手坐标系、右手坐标系、笛卡尔坐标系左手坐标系:伸开左手,大拇指指向X轴正方向,食指指向Y轴正方向,其他三个手指指向Z轴正方向。右手坐标系:伸开右手,大拇指指向X轴正方向,食指指向Y轴正方向,其他三个手指指向Z轴正方向。左右手坐标系的示意图如下:左手和右手坐标注系的区...
阅读全文
OpenGL(三) RGBA颜色设置
摘要:OpenGL支持两种颜色模式:一种是RGBA,一种是颜色索引模式。像素点附加颜色信息之后,就必须为每一个像素点额外分配一个内存空间保存该点的颜色信息,对于RGBA颜色模式,保存的数据直接代表了颜色,对于颜色索引模式,保存的是该颜色在颜色索引表中的位置,通过查颜色索引表...
阅读全文
OpenGl(二)点线设置、多边形镂空
摘要:1. 改变点的大小OpenGL中默认点的大小是1个像素,使用函数glPointSIze可以调整点的大小,入参是GLfloat,相当于是浮点数。相关代码:void myDisplay(void) { //设置点的大小 glClear(GL_COLOR_BUFFE...
阅读全文
OpenGL(一)绘制圆、五角星、正弦曲线
摘要:OpenGL入门之“顶点”:OpenGL规定,一个多边形必须是一个“凸多边形”,即连接多边形上任意两点,其连线都在多边形内部。多边形可以由其边上的端点(这里可称为顶点)来确定。所以“顶点”的概念在图形学中非常重要,定义了顶点数组和顶点的连接方式,就可以组合出各种形态。...
阅读全文
OpenGL+VS2012编译环境配置
摘要:OpenGL库主体分为三部分,分别是gl(OpenGL核心库)glu(Utility Library,OpenGL实用库)glut(Utility Toolkit,OpenGL实用工具库)glgl是OpenGL的核心,提供了OpenGL的基本函数,每个函数都以GL开头...
阅读全文