![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
OpenGL
文章平均质量分 69
zougangx
软件开发 Enough space... Enough performance...
QQ:283407231
MSN:zougangxx@hotmail.com
展开
-
NeHe OpenGL教程 (一)
创建一个OpenGL窗口:在这个教程里,我将教你在Windows环境中创建OpenGL程序.它将显示一个空的OpenGL窗口,可以在窗口和全屏模式下切换,按ESC退出.它是我们以后应用程序的框架.理解OpenGL如何工作非常重要,你可以在教程的末尾下载源程序,但我强烈建议你至少读一遍教程,然后再开始编程. 欢迎来到我的 OpenGL教程。我是个对 OpenGL充满激情的普通男孩!转载 2008-09-06 10:39:00 · 2555 阅读 · 0 评论 -
NeHe OpenGL教程 (十六)
第16课 雾:这一课是基于第7课的代码的,你将学会三种不同的雾的计算方法,以及怎样设置雾的颜色和雾的范围。 这篇教程由Chris Aliotta编写。 你想给你的OpenGL程序添加雾效?我将在这篇教程中教你如何去做。这是我第一次写教程,我也只是OpenGL/C++编程的新手,所以如果你发现了什么错误请告诉我而不是叱责我。本课的代码基于第七课的代码编写。转载 2009-08-07 22:16:00 · 637 阅读 · 0 评论 -
NeHe OpenGL教程 (十五)
第15课 图形字体的纹理映射:这一课,我们将在上一课的基础上创建带有纹理的字体,它真的很简单。 在发布了前两篇关于位图字体和轮廓字体的教程以后,我收到很多邮件,很多读者都想知道如何才能给字体赋予纹理贴图。你可以使用自动纹理坐标生成器。它会为字体上的每一个多边形生成纹理坐标。 一个小注释,这段代码是专门针对Windows写的,它使用了Windows的wgl函数转载 2009-08-07 22:26:00 · 629 阅读 · 0 评论 -
NeHe OpenGL教程 (十八)
第18课 二次几何体:利用二次几何体,你可以很容易的创建球,圆盘,圆柱和圆锥。 二次曲面是一种画复合对象的方法,这种方法通常并不需要很多的三角形。我们将要使用第七课的代码。我们将要增加7个变量以及修改纹理以增加一些变化 : bool sp; // 空格键是否按下int part1;转载 2009-08-10 23:49:00 · 833 阅读 · 0 评论 -
NeHe OpenGL教程 (二十)
20课 蒙板:到目前为止你已经学会如何使用alpha混合,把一个透明物体渲染到屏幕上了,但有的使用它看起来并不是那么的复合你的心意。使用蒙板技术,将会按照你蒙板的位置精确的绘制。 欢迎来到第20课的教程,*.bmp图像被给各种操作系统所支持,因为它简单,所以可以很轻松的作为纹理图片加载它。知道现在,我们在把图像加载到屏幕上时没有擦除背景色,因为这样简单高效。但是转载 2009-08-10 23:54:00 · 603 阅读 · 0 评论 -
NeHe OpenGL教程 (二十一)
第21课 线,反走样,计时,正投影和简单的声音:这是我第一个大的教程,它将包括线,反走样,计时,正投影和简单的声音。希望这一课中的东西能让每个人感到高兴。 欢迎来到第21课,在这一课里,你将学会直线,反走样,正投影,计时,基本的音效和一个简单的游戏逻辑。希望这里的东西可以让你高兴。我花了两天的时间写代码,并用了两周的时间写这份HTML文件,希望你能享受我的劳动。 在这课的结尾你将获得一转载 2009-08-10 23:55:00 · 733 阅读 · 0 评论 -
NeHe OpenGL教程 (二十二)
第22课 凹凸映射,多重纹理扩展:这是一课高级教程,请确信你对基本知识已经非常了解了。这一课是基于第六课的代码的,它将建立一个非常酷的立体纹理效果。 这一课由Jens Schneider所写,它基本上是由第6课改写而来的,在这一课里,你将学习: 怎样控制多重纹理 怎样创建一个“假”的凹凸映射 怎样做一个标志,它看起来在你的场景上方 怎样使矩阵变化更有效率 基本的多通道渲染转载 2009-08-11 23:29:00 · 1428 阅读 · 0 评论 -
NeHe OpenGL教程 (二十三)
第23课 球面映射:这一个将教会你如何把环境纹理包裹在你的3D模型上,让它看起来象反射了周围的场景一样。 球体环境映射是一个创建快速金属反射效果的方法,但它并不像真实世界里那么精确!我们从18课的代码开始来创建这个教程,教你如何创建这种效果。 在我们开始之间,看一下红宝书中的介绍。它定义球体环境映射为一幅位于无限远的图像,把它映射到球面上。 在Photoshop中创建一幅转载 2009-08-11 23:34:00 · 867 阅读 · 0 评论 -
NeHe OpenGL教程 (二十五)
第25课 变形和从文件中加载3D物体:在这一课中,你将学会如何从文件加载3D模型,并且平滑的从一个模型变换为另一个模型。 欢迎来到这激动人心的一课,在这一课里,我们将介绍模型的变形。需要注意的是各个模型必须要有相同的顶点,才能一一对应,并应用变形。在这一课里,我们同样要教会你如何从一个文件中读取模型数据。文件开始的部分和前面一样,没有任何变化。 我们结下来添加转载 2009-08-11 23:37:00 · 669 阅读 · 0 评论 -
NeHe OpenGL教程 (二十七)
第27课 影子:这是一个高级的主题,请确信你已经熟练的掌握了基本的OpenGL,并熟悉蒙板缓存。当然它会给你留下深刻的印象的。 欢迎来到另一个有些复杂的课程,阴影。这一课的效果好的有些让人不可思议,阴影可以变形,混合在其他的物体上。这一课要求你必须对OpenGL比较了解,它假设你知道许多OpenGL的知识,你必须知道蒙板缓存,基本的OpenGL步骤。如果你对这些不太转载 2009-08-11 23:40:00 · 721 阅读 · 0 评论 -
NeHe OpenGL教程 (二十八)
第28课 贝塞尔曲面:这是一课关于数学运算的,没有别的内容了。来,有信心就看看它吧。 贝塞尔曲面作者: David Nikdel ( ogapo@ithink.net ) 这篇教程旨在介绍贝塞尔曲面,希望有比我更懂艺术的人能用她作出一些很COOL的东东并且展示给大家。教程不能用做一个完整的贝塞尔曲面库,而是一个展示概念的程序让你熟悉曲面怎样实现的。而且这不是一篇正转载 2009-08-11 23:53:00 · 744 阅读 · 0 评论 -
NeHe OpenGL教程 (二十四)
第24课 扩展,剪裁和TGA图像文件的加载:在这一课里,你将学会如何读取你显卡支持的OpenGL的扩展,并在你指定的剪裁区域把它显示出来。 这个教程有一些难度,但它会让你学到很多东西。我听到很多朋友问我扩展方面的内容和怎样找到它们。这个教程将交给你这一切。我将教会你怎样滚动屏幕的一部分和怎样绘制直线,最重要的是从这一课起,我们将不使用AUX库,以及*.bmp文件。我将告诉你如转载 2009-08-11 23:35:00 · 3139 阅读 · 0 评论 -
NeHe OpenGL教程 (二十六)
第26课 剪裁平面,蒙板缓存和反射:在这一课中你将学会如何创建镜面显示效果,它使用剪裁平面,蒙板缓存等OpenGL中一些高级的技巧。 欢迎来到另一个激动人心的课程,这课的代码是Banu Cosmin所写,当然教程还是我自己写的。在这课里,我将教你创建真正的反射,基于物理的。由于它将用到蒙板缓存,所以需要耗费一些资源。当然随着显卡和CPU的发展,这些都不是问题了,好了让我们开始转载 2009-08-11 23:38:00 · 739 阅读 · 0 评论 -
NeHe OpenGL教程 (二十九)
第29课 Blitter 函数:类似于DirectDraw的blit函数,过时的技术,我们有实现了它。它非常的简单,就是把一块纹理贴到另一块纹理上。 这篇文章是有Andreas Lffler所写的,它写了一份原始的教程。过了几天,Rob Fletcher发了封邮件给我,他重新改写了所有的代码,我在它的基础上把glut的框架变换为Win32的框架。 现在让转载 2009-08-12 23:02:00 · 696 阅读 · 0 评论 -
NeHe OpenGL教程 (十九)
第19课 粒子系统:你是否希望创建爆炸,喷泉,流星之类的效果。这一课将告诉你如何创建一个简单的例子系统,并用它来创建一种喷射的效果。 欢迎来到第十九课.你已经学习了很多知识,并且现在想自己来实践.我将在这讲解一个新命令... 三角形带(我的理解就是画很多三角形来组合成我们要的形状),它非常容易使用,当画很多三角形的时候能加快你程序的运行速度.在本课中,我将会教你转载 2009-08-10 23:53:00 · 578 阅读 · 0 评论 -
NeHe OpenGL教程 (十七)
第17课 2D 图像文字:在这一课中,你将学会如何使用四边形纹理贴图把文字显示在屏幕上。你将学会如何把256个不同的文字从一个256x256的纹理图像中分别提取出来,并为每一个文字创建一个显示列表,接着创建一个输出函数来创建任意你希望的文字。 本教程由NeHe和Giuseppe DAgata提供。 我知道每个人都或许厌恶字体。目前为止我写的文字教程不仅转载 2009-08-10 23:48:00 · 868 阅读 · 0 评论 -
NeHe OpenGL教程 (十二)
第12课 显示列表:想知道如何加速你的OpenGL程序么?这一课将告诉你如何使用OpenGL的显示列表,它通过预编译OpenGL命令来加速你的程序,并可以为你省去很多重复的代码。 这次我将教你如何使用显示列表,显示列表将加快程序的速度,而且可以减少代码的长度。当你在制作游戏里的小行星场景时,每一层上至少需要两个行星,你可以用OpenGL中的多边形来构造每一个行星转载 2009-08-06 23:22:00 · 645 阅读 · 0 评论 -
使用VC6编译和使用Ogre引擎
开发网 Ogre是开源的封装了DirectX和OpenGL的3D引擎下载 官方主页为http://www.ogre3d.org/ 下面是国内的下载连接 至少需要下载的文件 http://gd.91.com/temp/files/ogre/ogre.rar http://www.mscto.com http://gd.91.com/t转载 2009-07-30 23:50:00 · 1060 阅读 · 0 评论 -
Ogre源码剖析3–可扩展性&插件机制
Ogre是一个跨操作系统平台的开源3D引擎,既支持DirectX,也支持使用OpenGL,支持可替换的场景管理算法(BSP, OCT)。为Ogre提供这些灵活可扩展性的基础之一就是其面向插件的设计。 很多常用的软件大都提供了插件接口,用以扩展应用程序设计者最初未想到的功能,比较常见的譬如PhotoShop的滤镜,After Effect中的各种插件(最有名的比如shine),3转载 2009-07-30 23:54:00 · 1056 阅读 · 0 评论 -
NeHe OpenGL教程 (二)
第02课 你的第一个多边形:在第一个教程的基础上,我们添加了一个三角形和一个四边形。也许你认为这很简单,但你已经迈出了一大步,要知道任何在OpenGL中绘制的模型都会被分解为这两种简单的图形。读完了这一课,你会学到如何在空间放置模型,并且会知道深度缓存的 第一课中,我教您如何创建一个OpenGL窗口。这一课中,我将教您如何创建三角形和四边形。我们讲使用来创转载 2009-08-03 22:37:00 · 1015 阅读 · 0 评论 -
NeHe OpenGL教程 (四)
第04课 旋转:在这一课里,我将教会你如何旋转三角形和四边形。左图中的三角形沿Y轴旋转,四边形沿着X轴旋转。 上一课中我教给您三角形和四边形的着色。这一课我将教您如何将这些彩色对象绕着坐标轴旋转。其实只需在上节课的代码上增加几行就可以了。下面我将整个例程重写一遍。方便您知道增加了什么,修改了什么。我们增加两个变量来控制这两个对象的旋转。这两个变量加在程序转载 2009-08-03 22:51:00 · 695 阅读 · 0 评论 -
NeHe OpenGL教程 (三)
第03课 添加颜色:作为第二课的扩展,我将叫你如何使用颜色。你将理解两种着色模式,在左图中,三角形用的是光滑着色,四边形用的是平面着色。 上一课中我教给您三角形和四边形的绘制方法。这一课我将教您给三角形和四边形添加2种不同类型的着色方法。使用Flat coloring(单调着色)给四边形涂上固定的一种颜色。使用Smooth coloring(平滑着色)将三角形的转载 2009-08-03 22:41:00 · 636 阅读 · 0 评论 -
glaux.lib(tk.obj) : error LNK2001: unresolved external symbol __ftol2 问题解决
[问题的提出]在编译时候发生如下错误glaux.lib(tk.obj) : error LNK2001: unresolved external symbol __ftol2[问题的解决]error LNK2001: unresolved external symbol XXX出现这个错误说明在库文件中无法找到XXX这个函数。而无法找到__ftol2这个问题往往出现转载 2009-08-04 21:31:00 · 4709 阅读 · 6 评论 -
NeHe OpenGL教程 (七)
第07课 光照和键盘控制:在这一课里,我们将添加光照和键盘控制,它让程序看起来更美观。 这一课我会教您如何使用三种不同的纹理滤波方式。教您如何使用键盘来移动场景中的对象,还会教您在OpenGL场景中应用简单的光照。这一课包含了很多内容,如果您对前面的课程有疑问的话,先回头复习一下。进入后面的代码之前,很好的理解基础知识十分重要。我们还是在第一课的代码上转载 2009-08-04 22:09:00 · 718 阅读 · 0 评论 -
NeHe OpenGL教程 (八)
第08课 混合:在这一课里,我们在纹理的基础上加上了混合,它看起具有透明的效果,当然解释它不是那么容易,当希望你喜欢它。 简单的透明OpenGL中的绝大多数特效都与某些类型的(色彩)混合有关。混色的定义为,将某个象素的颜色和已绘制在屏幕上与其对应的象素颜色相互结合。至于如何结合这两个颜色则依赖于颜色的alpha通道的分量值,以及/或者所使用的混色函数。转载 2009-08-05 21:08:00 · 506 阅读 · 0 评论 -
NeHe OpenGL教程 (九)
第09课 3D空间中移动图像:你想知道如何在3D空间中移动物体,你想知道如何在屏幕上绘制一个图像,而让图像的背景色变为透明,你希望有一个简单的动画。这一课将教会你所有的一切。前面的课程涵盖了基础的OpenGL,每一课都是在前一课的基础上创建的。这一课是前面几课知识的综合,当你学习这课时,请确保你已经掌握了前面几课的知识。 欢迎进入第九课。到现在为止,您应该很转载 2009-08-05 21:57:00 · 710 阅读 · 0 评论 -
NeHe OpenGL教程 (十)
第10课 加载3D世界,并在其中漫游:在这一课中,你将学会如何加载3D世界,并在3D世界中漫游。这一课使用第一课的代码,当然在课程说明中我只介绍改变了代码。 这一课是由Lionel Brits (βtelgeuse)所写的。在本课中我们只对增加的代码做解释。当然只添加课程中所写的代码,程序是不会运行的。如果您有兴趣知道下面的每一行代码是如何运行的话,请下载完转载 2009-08-05 22:24:00 · 660 阅读 · 0 评论 -
NeHe OpenGL教程 (五)
第05课 3D空间:我们使用多边形和四边形创建3D物体,在这一课里,我们把三角形变为立体的金子塔形状,把四边形变为立方体。 在上节课的内容上作些扩展,我们现在开始生成真正的3D对象,而不是象前两节课中那样3D世界中的2D对象。我们给三角形增加一个左侧面,一个右侧面,一个后侧面来生成一个金字塔(四棱锥)。给正方形增加左、右、上、下及背面生成一个立方体。 我转载 2009-08-04 20:35:00 · 637 阅读 · 0 评论 -
NeHe OpenGL教程 (六)
第06课 纹理映射:在这一课里,我将教会你如何把纹理映射到立方体的六个面。 学习 texture map 纹理映射(贴图)有很多好处。比方说您想让一颗导弹飞过屏幕。根据前几课的知识,我们最可行的办法可能是很多个多边形来构建导弹的轮廓并加上有趣的颜色。使用纹理映射,您可以使用真实的导弹图像并让它飞过屏幕。您觉得哪个更好看?照片还是一大堆三角形和四边形?使用纹理转载 2009-08-04 20:40:00 · 1066 阅读 · 0 评论 -
NeHe OpenGL教程 (十三)
第13课 图像字体:这一课我们将创建一些基于2D图像的字体,它们可以缩放,但不能旋转,并且总是面向前方,但作为基本的显示来说,我想已经够了。 欢迎来到另一课教程,这次我将教你如何使用位图字体,也许你会对自己说:“在屏幕上显示文字有什么难的?”。但是你真正尝试过就会知道,它确实没那么容易。 当然,你可以载入一段美术程序,把文字写在一个图片上,再把这幅图转载 2009-08-07 21:11:00 · 798 阅读 · 0 评论 -
error C2146: syntax error : missing ';' before identifier 'PVOID64'
error C2146: syntax error : missing ; before identifier PVOID64 在网上查了下资料,解决方法如下: 方法一:在winnt.h中加上以下语句 #define POINTER_64 __ptr64typedef void *PVOID;typedef void * POINTER_64 PVOID64原创 2009-08-13 20:25:00 · 932 阅读 · 0 评论