计算机图形——OpenGL】的更多相关文章

荒废了太久,趁着"寒假"死磕了两周,验证了不少想法,解开了不少疑惑,代码质量当然是没有的,一切只为看到结果. 有空了再写每一项的细节. 源码地址 2019/5/12 更新 延迟渲染 GBuffer 世界坐标 世界法线 漫反射 300个点光源 2019/3/6 更新 优化了光源,阴影以及我自己做了一个模型emm... 当我打开3DMax的时候,时间拉回到大约7年前,这是我上一次打开3DMax的时间,当时我在学校机房进行3DMax期末考试,一顿操作猛如虎,定睛一看,一片糊,于是我默默的双击…
3. 二维变换矩阵 x'      a11 a12 a13    x         a11x a12y a13z y' =  a21 a22 a23     y    =  a21x a22y a23z z'      a31 a32 a33    w        a31x a32y a33z 3.1二维平移变换矩阵 P  =(x,  y,  1) P*=(x*,y*,1) 1   0   tx T  =  0   1   ty 0   0   1 P*= T(tx,ty)P 3.1二维比例…
模型视图变换(几何变换)矩阵: 1. 齐次坐标:两条平行线也可以相交. 在欧几里得空间中,两条平行线是无法相交的,但是在投影空间(Projective Space)这条定理就不再适用了. 比如上图中,两条平行的铁轨由于距离我们越来越远,终于在视平线处相交了,相交点是“无限远”. 欧式空间对2D/3D空间的描述恰到好处,但是对投影空间就力不能及了(事实上,欧式空间是投影空间的一个子集). 通常在二维空间中,我们把一个点表示为(x, y),那么如果这个点位于无限远又如何表示呢?一般是 (∞,∞),…
------------------------------------------------------------------------------------------------------------------------ 从现在开始,认真学习OpenGL的相关知识,把读过的每一章都做记录,希望能坚持到最后. -------------------------------------------------------------------------------------…
OpenGL入门学习 说起编程作图,大概还有很多人想起TC的#include <graphics.h>吧? 但是各位是否想过,那些画面绚丽的PC游戏是如何编写出来的?就靠TC那可怜的640*480分辨率.16色来做吗?显然是不行的. 本帖的目的是让大家放弃TC的老旧图形接口,让大家接触一些新事物. OpenGL作为当前主流的图形API之一,它在一些场合具有比DirectX更优越的特性. 1.与C语言紧密结合. OpenGL命令最初就是用C语言函数来进行描述的,对于学习过C语言的人来讲,Open…
1. OpenGL 渲染管线 OpenGL渲染管线分为两大部分,模型观测变换(ModelView Transformation)和投影变换(Projection Transformation).做个比喻,计算机图形开发就像我们照相一样,目的就是把真实的场景在一张照相纸上表现出来.那么观测变换的过程就像是我们摆设相机的位置,选择好要照的物体,摆好物体的造型.而投影变换就像相机把真实的三维场景显示在相纸上一样.下面就分别详细的讲一下这两个过程. 1.1模型观测变换 让我们先来弄清楚OpenGL中的渲…
Atitit.计算机图形图像图片处理原理与概论attilax总结 计算机图形1 图像处理.分析与机器视觉(第3版)1 数字图像处理(第六版)2 图像处理基础(第2版)2 发展沿革 1963年,伊凡·苏泽兰(Ivan Sutherland)在麻省理工学院发表了名为<画板>的博士论文, 它标志着计算机图形学的正式诞生.至今已有五十多年的历史.此前的计算机主要是符号处理系统,自从有了计算机图形学,计算机可以部分地表现人的右脑功能了,所以计算机图形学的建立具有重要的意义.计算机图形学在如下几方面有了长…
一.OpenGL与3D图形世界1.1.OpenGL使人们进入三维图形世界 我们生活在一个充满三维物体的三维世界中,为了使计算机能精确地再现这些物体,我们必须能在三维空间描绘这些物体.我们又生活在一个充满信息的世界中,能否尽快地理解并运用这些信息将直接影响事业的成败,所以我们需要用一种最直接的形式来表示这些信息. 最近几年计算机图形学的发展使得三维表现技术得以形成,这些三维表现技术使我们能够再现三维世界中的物体,能够用三维形体来表示复杂的信息,这种技术就是可视化(Visualization)技术.…
基本概念 透视(Perspective)变换(Transformation)投影矩阵(Projection Matrix):用于将3D坐标转换为2D屏幕坐标光栅化(Rasterization): 实际绘制或填充每个顶点之间的像素形成线段着色器(Shader) 是在图形硬件上执行的单独程序,用来处理顶点和执行光栅化任务纹理贴图(Texture Mapping)混合(Blending): 将不同的颜色混在一起可编程着色器(Programmable Shader)位平面(bitplane):指一块内存…
1. OpenGL 渲染管线 OpenGL渲染管线分为两大部分,模型观测变换(ModelView Transformation)和投影变换(Projection Transformation).做个比喻,计算机图形开发就像我们照相一样,目的就是把真实的场景在一张照相纸上表现出来.那么观测变换的过程就像是我们摆设相机的位置,选择好要照的物体,摆好物体的造型.而投影变换就像相机把真实的三维场景显示在相纸上一样.下面就分别详细的讲一下这两个过程. 1.1模型观测变换 让我们先来弄清楚OpenGL中的渲…