文章分类 -  OpengL

计算机图形
摘要:1. OpenGL 里面的光照基本由 环境光、散射光、镜面光。 其中涉及的基本公式如下: A.环境光: 环境光照射结果 = 材质的反射系数 X 环境光强度 例如: vAmbient = vec4(0.5,0.5,0.5,0); gl_FragColor=fina... 阅读全文
posted @ 2013-10-31 23:43 Dai Hanlong 阅读(447) 评论(0) 推荐(0)
摘要:包含平移的线性变换称作仿射变换,3D中的仿射变换不能用 3 x 3 矩阵表达,必须使用4 x 4矩阵。一般来说,变换物体相当于以相反的量变换描述这个物体的坐标系。当有多个变换时,则需要以相反的顺序变换相反的量。例如,将物体顺时针旋转20度,扩大200%,等价于将坐标系缩小200%,再逆时针旋转20度... 阅读全文
posted @ 2013-10-26 16:35 Dai Hanlong 阅读(3707) 评论(0) 推荐(0)
摘要:1.OpenGL 学习笔记OpenGL 使用的是右手坐标系,点是采用列向量的形式进行表示.GLfloat martix[16]; 可以用来表示一个矩阵。 其中,可以让其想想成按照列来进行存放,就会组成如下顺序. 0 4 8 121 5 9 132 6 10 143 7 11 15Opengl 就是一个将3D画面显示在2D坐标平面上的过程.3D中,都是实实在在的物体,每个物体都有自己的位置。对于物体来讲,每个物体都有自己的一个坐标系,称为 本地坐标系。物体放置在场景中,就相当于放置在一个全局的坐标系里面,这个坐标系称为 全局坐标系。但是对于观察者来讲,看到的场景都... 阅读全文
posted @ 2013-10-25 21:54 Dai Hanlong 阅读(178) 评论(0) 推荐(0)
摘要:const static int min_clip_x = 200;const static int min_clip_y = 200;const static int max_clip_x = 760;const static int max_clip_y = 440;#define WEST 0b0001#define EAST 0b0010#define SOURTH 0b0100#define NORTH 0b1000// 进行直线裁剪void ZorderLayer::clipLine(int x1,int y1,int x2,int y2){ // 排除部分 裁... 阅读全文
posted @ 2013-10-21 17:35 Dai Hanlong 阅读(267) 评论(0) 推荐(0)
摘要:以前看到Bresenham画线算法,直接拿来用,没有去推导它,近日,参考一些资料,特整理其算法推导过程如下。各位大虾如果知道其细节,赶紧闪过,不用浪费时间了。基本上Bresenham画线算法的思路如下:// 假设该线段位于第一象限内且斜率大于0小于1,设起点为(x1,y1),终点为(x2,y2)./... 阅读全文
posted @ 2013-10-18 16:08 Dai Hanlong 阅读(294) 评论(0) 推荐(0)