SweetDream
高歌一壶新酿酒,醉抱青山不必归。
摘要: 1. chdir(dir.c_str()) 改变默认目录。dir.c_str是基于当前路径的。比如dir.c_str为” ./” 那么就什么也没改变还是在默认的路径。其中dir.c_str()为基于C的字符串。 2.char *getcwd(char *buffer,size_t size); 获得当前工作路径,我们提供一个size大小的buffer,getcwd会把我们当前的路径考到buffe... 阅读全文
posted @ 2006-04-13 10:30 SweetDream 阅读(905) 评论(0) 推荐(0) 编辑
摘要: StringInterface类和相关类的结构图: 继承于StringInterface类可以把它们的属性和String相互转化,从而便于存储和解析。 类ParameterDef定义了支持转化的属性类型。 类ParamCommand实现了转化过程,继承于ParamCommand的类可以把目标类(即参数中的target)的属性转化成String,或是把String设置为目标类的属性:... 阅读全文
posted @ 2006-03-10 00:03 SweetDream 阅读(723) 评论(1) 推荐(0) 编辑
摘要: 它们的结构图如下: Archive类 Archive类代表文件容器。FileSystemArchive代表普通的文件容器,也就是文件夹。在Ogre中它还派生了ZipArchive。在上面的UML图中没有给出。Archive中给出了一些存虚函数:比如: virtual StringVectorPtr list(bool recursive = true ) = 0;virtual FileInf... 阅读全文
posted @ 2006-03-09 01:30 SweetDream 阅读(685) 评论(0) 推荐(0) 编辑
摘要: 日出嵩山坳晨钟惊飞鸟林间小溪水潺潺坡上青青草野果香山花俏狗儿跳羊儿跑举起鞭儿轻轻摇小曲满山飘满山飘莫道女儿娇无暇有奇巧冬去春来十六载黄花正年少腰身壮胆气豪常练武勤操劳耕田放牧打豺狼风雨一肩挑一肩挑 阅读全文
posted @ 2006-03-07 13:29 SweetDream 阅读(324) 评论(0) 推荐(0) 编辑
摘要: masking就是一种特殊的Blending。它的效果如图: 注意,你可以通过雪花看见它后面的背景。 这节主要就是混合因子的使用,理解了混合公式这节就很容易理解了。 混合公式如下: (RsSr + RdDr ,GsSg + GdDg ,BsSb + Bd + Db ,AsSa + AdDa) 其中(Sr ,Sg ,Sb ,Sa)为源混合因子,即后添加的片元的颜色值在混合中所占的比重。(Dr... 阅读全文
posted @ 2006-03-06 11:49 SweetDream 阅读(377) 评论(0) 推荐(0) 编辑
摘要: 开始以为粒子系统也和Fog一样有现成的函数,只要改变一下状态,设置一下就可以达到想要的效果,在看过NEHE的粒子系统和网络上的一些介绍后才知道,粒子系统是一步一步通过很基本的操作构造的。 粒子系统主要用来解决由大量按一定规则运动(变化)的微小物质组成的大物质在计算机上的生成与显示的问题。 每个粒子需要一些属性来和其他粒子区别。通常在一个系统中的所有粒子有一个相同的属性集。 有一些适用于粒子的... 阅读全文
posted @ 2006-03-02 11:02 SweetDream 阅读(3998) 评论(0) 推荐(0) 编辑
摘要: 雾效开启后离视点较远的物体将融入到雾的颜色中。通过使用雾可以提高性能,因为我们无需绘制那些由于雾的影响而看不见的物体。 OpenGL中开启雾很容易,它只是一条语句: glEnable(GL_FOG);//开启雾效果 然而开启雾效后得到的默认的效果可能不是我们想要的,我们可以通过调用 void glFog*( GLenum pname, GLfloat param );来设置雾效达到我们预期的效果... 阅读全文
posted @ 2006-02-25 10:53 SweetDream 阅读(496) 评论(0) 推荐(0) 编辑
摘要: 这个DEMO主要有3个知识点: 1. Light类 Light类继承于MoveableObject类。所以它拥有MoveableObject类的一切属性。 光源有3种类型,分别是点光源 (Point lights),定向光源 (Directional lights),和聚光灯 (Spot lights),在Light中用一个枚举表示: enum LightTypes{ LT_POI... 阅读全文
posted @ 2006-02-24 21:13 SweetDream 阅读(1194) 评论(5) 推荐(0) 编辑
摘要: 显示列表是一组OpenGL函数调用,被存储起来供以后执行(有点类似 SQL 中的存储过程),调用显示列表时,将按顺序执行其中的函数。 显示列表的使用目的 1.如果要绘制一个几何体多次,或者需要对一组状态作相同的变更。注意每次执行一个显示列表之前必须相应得设置模型视点举证,以计算物体的正确大小和位置。 2.C/S 模式下的应用程序,显示列表是服务器状态的一部分,它们驻留在服务器中,因此通过... 阅读全文
posted @ 2006-02-24 10:25 SweetDream 阅读(261) 评论(0) 推荐(0) 编辑
摘要: 1. 多边形的填充方式。 多边形有两个面:正面和被面,默认的情况下,正面和背面都是以填充的方式绘制多边形,但通过 void glPolygonMode(GLenum face,GLenum mode) 可以改变绘制方式。其中参数 face的取值为GL_FRONT_AND_BACK,GL_FRONT,GL_BACK;参数mode取值为GL_POINT,GL_LINE,GL_FILL。 2. 角度与... 阅读全文
posted @ 2006-02-23 10:50 SweetDream 阅读(437) 评论(0) 推荐(0) 编辑