11 2010 档案

摘要:OpenGL学习总结一.OpenGL是做什么的一种图形硬件的接口。而不是像C和C++一样的编程语言,更像是一个运行库,提供一些预先封装的函数。二.OpenGL的主要功能是什么建模,变换,颜色模式设置,光照和材质设置,纹理映射,位图显示和图像。三.OpenGL的体系结构是什么最底层为图形硬件,第二层为操作系统,第三层为窗口系统,第四层为OpenGL,第五层为应用软件。四.怎么样利用OpenGL来实现... 阅读全文
posted @ 2010-11-23 16:14 白了少年头 阅读(30171) 评论(10) 推荐(10) 编辑
摘要:物体表面通常并不是具有简单颜色的平滑面,而是有着花纹图案等丰富细节的。计算机三维图形通过给面贴纹理来表现表面细节。OpenGL默认设置是关闭贴纹理的,所以必须先用命令打开纹理计算。前面提到过,可以给面指定材质来影响面上各点最终的颜色。能不能同时使用材质和纹理呢?当然是可以的,OpenGL允许你用glTexEnv(GL_TEXTUREN_ENV,GL_TEXTURE_ENV_MODE,mode);命... 阅读全文
posted @ 2010-11-23 11:23 白了少年头 阅读(11441) 评论(0) 推荐(1) 编辑
摘要:几乎所有OpenGL应用目的都是在屏幕窗口内绘制彩色图形,所以颜色在OpenGL编程中占有很重要的地位。这里的颜色与绘画中的颜色概念不一样,它属于RGB颜色空间,只在监视器屏幕上显示。另外,屏幕窗口坐标是以象素为单位,因此组成图形的每个象素都有自己 的颜色,而这种颜色值是通过对一系列OpenGL函数命令的处理最终计算出来的。本章将讲述计算机颜色的概念以及OpenGL的颜色模式、颜色定义和两种模式应... 阅读全文
posted @ 2010-11-19 16:03 白了少年头 阅读(2888) 评论(0) 推荐(0) 编辑
摘要:在OpenGL窗口中, 左下角的像素为(0, 0). 一般而言, 像素(x, y)占据的矩形区域左下角为(x, y), 右上角为(x+1, y+1).10.1 缓存及其用途 1) 颜色缓存, 左前,右前,左后,右后和任意数量的辅助颜色缓存;2) 深度缓存3) 模板缓存4) 累积缓存 注意:X窗口系统,RGBA模式至少保证1个颜色缓冲区,模板缓冲区,深度缓冲区,累计缓冲区颜色索引模式至少保证1个眼色... 阅读全文
posted @ 2010-11-19 14:23 白了少年头 阅读(13220) 评论(1) 推荐(2) 编辑
摘要:在前面的章节中,已经讲述了几何数据(点、线、多边形)绘制的有关方法,但OpenGL还有另外两种重要的数据类:一是位图,二是图像。这两种数据都是以象素矩阵形式存储,即用一个矩形数组来表示某一位图或图像。二者不同之处是位图包含每个象素的一位信息,而图像数据一般包含每个象素的多位信息(如,红、绿、蓝和Alpha值);还有位图类似于掩码,可用于遮掩别的图像,而图像数据则简单地覆盖先前已经存在的数据或者与之... 阅读全文
posted @ 2010-11-19 11:25 白了少年头 阅读(8371) 评论(0) 推荐(1) 编辑
摘要:今天我们先简单介绍Windows中常用的BMP文件格式,然后讲OpenGL的像素操作。虽然看起来内容可能有点多,但实际只有少量几个知识点,如果读者对诸如“显示BMP图象”等内容比较感兴趣的话,可能不知不觉就看完了。像素操作可以很复杂,这里仅涉及了简单的部分,让大家对OpenGL像素操作有初步的印象。学过多媒体技术的朋友可能知道,计算机保存图象的方法通常有两种:一是&ldqu... 阅读全文
posted @ 2010-11-19 11:02 白了少年头 阅读(9740) 评论(2) 推荐(0) 编辑
摘要:在三维图形中,纹理映射(Texture Mapping)的方法运用得很广,尤其描述具有真实感的物体。比如绘制一面砖墙,就可以用一幅真实的砖墙图像或照片作为纹理贴到一个矩形上,这样,一面逼真的砖墙就画好了。如果不用纹理映射的方法,则墙上的每一块砖都必须作为一个独立的多边形来画。另外,纹理映射能够保证在变换多边形时,多边形上的纹理图案也随之变化。例如,以透视投影方式观察墙面时,离视点远的砖块的尺寸就会... 阅读全文
posted @ 2010-11-19 10:02 白了少年头 阅读(15944) 评论(1) 推荐(1) 编辑
摘要:OpenGL显示列表(Display List)是由一组预先存储起来的留待以后调用的OpenGL函数语句组成的,当调用这张显示列表时就依次执行表中所列出的函数语句。前面内容所举出的例子都是瞬时给出函数命令,则OpenGL瞬时执行相应的命令,这种绘图方式叫做立即或瞬时方式(immediate mode)。本章将详细地讲述显示列表的基本概论、创建、执行、管理以及多级显示列表的应用等内容。16.1、显示... 阅读全文
posted @ 2010-11-19 09:13 白了少年头 阅读(17014) 评论(0) 推荐(2) 编辑
摘要:0. 引言使用过SDK的朋友应该知道“回调函数”(callback function)这个概念,但本文并不是介绍如何使用回调函数,而是站在SDK开发者的角度,讲述如何实现回调机制。1. 何为回调(callback)所谓回调,就是客户程序C调用服务程序S中的某个函数A,然后S又在某个时候反过来调用C中的某个函数B,对于C来说,这个B便叫做回调函数。例如Win32下的窗口过程函... 阅读全文
posted @ 2010-11-17 09:29 白了少年头 阅读(4651) 评论(0) 推荐(1) 编辑
摘要:http://nehe.gamedev.net/ 阅读全文
posted @ 2010-11-09 09:58 白了少年头 阅读(884) 评论(0) 推荐(0) 编辑
摘要:前言我的blog以前很长一段时间关注的都是C++中的技术&细节,乃至于读者和应者都寥寥。然而5月份的时候写的一篇“你应当如何学习C++”,阅读量却达到了3万多,在blog上所有文章中却是最高的(且远远超过了第二位);评论数目也有一百多。为什么独独这篇能够激起这么多的回应,想必是国内的C++社群被C++压抑太久,或者,严格来说,是被 C++的教育方式压抑太久。实际上,... 阅读全文
posted @ 2010-11-03 20:25 白了少年头 阅读(2658) 评论(0) 推荐(0) 编辑
摘要:下载OpenGL库文件。 对相应库文件进行放置。把.h文件放到\Program Files\Microsoft Visual Studio 8\VC\Include\GL文件夹中,如果没有GL文件夹就自己建一个,我的就是自己建的。把.lib文件放到\Program Files\Microsoft Visual Studio 8\VC\lib文件夹中;把.dll文件放到system32文件夹中。 建... 阅读全文
posted @ 2010-11-02 15:24 白了少年头 阅读(1220) 评论(2) 推荐(1) 编辑
摘要:当命令进入流程时,可以选用两种方法对它们进行处理:一种是通过流程立即执行这些命令;令一种是将其中一些命令组织到一个“显示列表”,过一段时间再执行它们。流程中的“求值器”阶段通过将输入值赋给多项式命令提供了一种非常有效的方法来生成几何曲面和曲面的近似值。接下来的“各顶点操作及图元集”阶段主要是处理OpenGL的几何图元&mdas... 阅读全文
posted @ 2010-11-01 15:54 白了少年头 阅读(1213) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示