真实感图形绘制技术方案

合集下载

计算机图形学实验——真实感图形场景的生成

计算机图形学实验——真实感图形场景的生成

实验四真实感图形的生成一、实验内容⏹创建一个简单场景⏹场景中有一个复杂的三维几何体⏹通过一系列处理使得场景和几何体具有真实感⏹可以通过变换视点观察场景二、程序结构创建Win32 Console Application,使用OpenGL的控制台应用程序框架。

其中:•init()函数进行场景初始化工作;•reshape(GLsizei width, GLsizei height)函数设置窗口的视口大小,同时设置透视深度和透视角度等参数;•display()函数构建坐标系并通过调用具体的绘制图形函数来绘制具体场景和几何图形;•LoadBMP()函数导入纹理位图文件;•LoadTexture()函数加载纹理到内存空间中;•generateShadow(GLfloat shadow[4][4], const GLfloat ground[4], const GLfloat light[4])函数来计算空间中物体上任意一点的平面阴影投射矩阵•keyboard(unsigned char key, int x, int y)函数处理键盘按键消息;•mouseButton(int button, int state, int x, int y)函数处理鼠标按键消息;最后由主函数main(int argc, char** argv)中调用OpenGL函数来显示窗口,并进行绘图和处理事件消息函数。

三、代码说明1.加载位图纹理首先,编写LoadBMP()函数导入位图文件,代码截图如下:然后,编写LoadEarthTexture()函数加载导入的位图并设置相关参数,代码截图如下:2.绘制房间场景在drawScene()函数中调用OpenGL基本几何元素绘制过程glBegin(GL_QUADS)绘制4个平面,并为每个平面绑定相应的纹理图片,主要代码截图如下:3.绘制地球仪模型编写drawEarth()函数绘制地球仪模型,并为地球仪模型绑定对应的纹理贴图,同时增加光照和材质的处理,代码截图如下:4.绘制模拟点光源编写drawBulb()函数绘制模拟点光源及灯罩,首先调用glBegin(GL_TRIANGLE_STRIP)绘制4个三角形面构成棱锥形灯罩的4个侧面,然后调用gluSphere()函数绘制球形灯泡并增加光照和材质处理效果,代码截图如下:5.生成阴影根据点光源、物体上的任意一点、物体在平面上的投影点“三点共线”的几何原理,以及投影点在平面上的位置关系,通过平面方程求得其法向量,然后利用点光源和物体上一点的坐标进行计算,得出物体上该点的平面阴影投射矩阵。

三维实景模型制作方法

三维实景模型制作方法

三维实景模型制作方法三维实景模型是指利用计算机技术将真实世界中的场景、建筑、物体等进行数字化建模,以达到视觉呈现的效果。

它可以应用于建筑设计、城市规划、景观规划、影视特效等领域。

本文将介绍三维实景模型制作的基本方法。

一、数据采集三维实景模型的制作需要一定的数据基础,包括场景的地理信息、建筑物的结构信息、物体的外观信息等。

这些数据可以通过多种手段来获取,如GPS测量、遥感技术、摄影测量等。

其中,摄影测量是制作三维实景模型最常用的数据采集方式。

通过在不同角度、不同高度、不同时间拍摄目标场景,再通过特定软件将这些照片进行处理,提取出场景中的三维信息,生成数字化的建模数据。

二、数据处理在数据采集后,需要对数据进行处理,以便于后续的建模。

数据处理包括数据清洗、数据匹配、数据配准、数据拼接等过程。

这些过程需要使用相关的软件和算法进行处理,以确保数据的准确性和完整性。

数据处理的质量直接影响到建模的效果和精度,因此需要认真对待。

三、建模技术建模技术是制作三维实景模型的核心环节,它包括建模软件的选择、建模方法的应用等。

常用的建模软件有3ds Max、SketchUp、Rhino等,每个软件都有其特点和优势。

建模方法包括多视图建模、三视图建模、曲面建模、实体建模等。

不同的建模方法适用于不同的场景和物体,需要根据具体情况进行选择。

四、质量控制在建模过程中,需要进行质量控制,以确保模型的准确性和真实性。

质量控制的方法包括模型检查、模型修复、模型优化等。

模型检查可以发现模型中的错误、缺陷和不一致性,模型修复可以对这些问题进行修复,模型优化可以对模型进行精简,提高模型的性能和效率。

五、纹理贴图纹理贴图是将真实场景中的外观信息贴到三维模型上,使模型更加真实、生动。

纹理贴图包括颜色贴图、法线贴图、光照贴图等。

颜色贴图用于贴合物体的颜色和纹理,法线贴图用于模拟物体表面的凹凸形状,光照贴图用于模拟物体的反射和折射。

纹理贴图需要根据实际场景进行拍摄或制作,以保证贴图的真实性。

《真实感图形的绘制》PPT课件

《真实感图形的绘制》PPT课件
I=Ia· κa
其中I是可见外表的亮度,Ia是环境光线的总亮度, κa是物体外表对环境光线的反射系数,它在0到1之 间.
2.漫反射
具体光源在物体外表可以引起漫反射和镜面反 射。漫反射是指来自具体光源的能量到达外表上的 某一点后,就均匀地向各个方向散射出去,使得观 察者从不同角度观察时,这一点呈现的亮度是一样 的。
对于彩色外表,上述各公式也可以应用, 只需分别应用于对各颜色分量的计算。例如, 选择通常的红、绿、蓝颜色系统,这时上述 公式中有关亮度及反射系数等,就要看做是 三元向量。通过分别对各颜色分量进展计算, 就可以完成对彩色外表的亮度计算。
4.光的衰减
光在传播的过程中,其能量会衰减。光的传播过程 分为两个阶段:从光源到物体外表的传播及从物体 外表到人眼的传播。光的第一个传播阶段的衰减使 物体外表的入射光强度变弱,第二个阶段的衰减使 人眼承受到的物体外表的反射光的强度变弱.
这里可以假定反射光线的方向向量R和指
向观察点的向量V都已经正规化,即已经是
长度为1的单位向量,于是可以简单地利用
向量内积计算余弦值:
。对 ,
通 样常公c 根式o α 据可 经写s R 历 成•V 选 下取 面一 更个 容W常 易θ 数计算来的代形替式,:这
ks
• I I a .a k r I p k k d L • N k SR V n
《真实感图形的绘制》 PPT课件
本课件PPT仅供大家学习使用 学习完请自行删除,谢谢! 本课件PPT仅供大家学习使用 学习完请自行删除,谢谢! 本课件PPT仅供大家学习使用 学习完请自行删除,谢谢! 本课件PPT仅供大家学习使用 学习完请自行删除,谢谢!
第三 确定场景中的所有可见面。 〔消除隐藏面算法〕

计算机图形学真实感图形绘制

计算机图形学真实感图形绘制
图12 光线跟踪算法
41
光线跟踪算法步骤
从视点出发,确定穿过每个像素中心的光线路径, 然后,沿这束光线累计光强,并将最终值赋给相应 像素。
对于每一像素光线,对场景中的所有物体表面进行 测试以确定其是否与该光线相交,并计算出交点的 深度,深度最大(z值)的交点即为该像素对应的可见
点。然后,继续考察通过该可见点的从属光线(
pname取值 GL_LIGHT_MODEL_AMBIENT
默认值 (0.2, 0.2, 0.2, 1.0)
GL_LIGHT_MODEL_LOCAL_VIEWE GL_FALSE
R
GL_LIGHT_MODEL_TWO_SIDE
GL_FALSE
GL_LIGHT_MODEL_COLOR_CONTR GL_SINGLE_COLOR OL
P点对环境光的反射强度为
图1 环境光的反射
8
漫反射光(Diffuse Reflection)
一个粗糙的、无光泽的表面呈现为漫反射。
特点:光源来自一个方向,反射光均匀地射向各个方向 。
由Lambert余弦定理可 得点P处漫反射光的强度为:
图2 漫反射
9
漫反射光(Diffuse Reflection)
含义 整个场景的环境光成分 如何计算镜面反射角
单面光照还是双面光照 镜面反射颜色是否独立于环境颜 色、散射颜色
52
OpenGL材质属性
在OpenGL中,下面的函数用于指定材质属性
void glMaterial{if} (GLenum face, GLenum pname, TYPE param);
43
光线跟踪算法步骤
图13 光线跟踪及光线跟踪树
44
光线跟踪算法步骤

真实感实时绘制技术综述

真实感实时绘制技术综述
Ab ta t Re l t e l i er n e n s a t c nq ewh c c o sr c : a i i r — m e d r g i e h i u ih a c mp ih s r l tc r n e n n a d fn t e o ft sc a t i l e e i i e d r g i ei ie p r d o i s a s i i me u d rt ec n tan fc r e th r wa ea d g a h c ag rt ms A r d - f ewe n r a im n e l i e r a c s n e h o s r i to u r n a d r n r p i l o h . i ta eo fb t e e l s a d r - me p do m n e i a t c mmo e a s ft e c n ta n . I h a e ,t e f r mo t r b e n h ea e t t - ft e a t e o u i n r u — o n b c u e o h o s r i t n t e p p r h o e s o lmsa d t e r l t d s a e o -h - r s l t s a e s r p r o v y d a d d s u s d n h o t r e h i u sf re h n i g r l t e lt e d rn r t d e . e e n ic s e ,a d t e s fwa e t c nq e o n a cn e i i r - i r n e g a e su id a sc a me i
程志全 , 党 岗, 金士尧
CHENG h q a D Z  ̄ u n, ANG n , S i a Ga gJ h- o y

纹理映射技术

纹理映射技术

2. 如何映射
• 利用纹理坐标来定义从图片到几何的映射:
– 要将该纹理映射到一个三角形上, 需设置三角形的 三个顶点在图像空间上的纹理坐标[tx ty], 再对应计 算每个几何像素在纹理图像上的对应RGB颜色;
– 一般一个四边形的纹理坐标: (0,0)(0,1)(1,0)(1,1)
– 3D Game Studio.
3. 纹理插值
• 我们只指定了三角形顶点处的纹理坐标,中间每个象素 的纹理坐标(ti, tj)可用线性插值;
• 一般双线性插值;
• 从而三角形上每个象素点都可对应地到纹理图片上去 取颜色.
思考?
• 图像与几何体的尺寸不一致怎么办?
• 几何对应的纹理空间超出[0,1)纹理空间怎么办? • 几何物体本身有颜色怎么办?
(1,1)
t1
v1
y
t2 t0
(0,0)
x
Texture Space
v0
v2
Triangle (in any space)
纹理空间与模型空间的对应
基本实现步骤:
• Three steps
-Specify texture
• Read or generate image • Assign to texture • Enable texturing
Texture Space
(1,1) (0,0)
Mirroring
常用对应函数
• wrap or tile: 纹理图像在表面重复。例子:地上的大理石 贴图
• mirror: 纹理图像在表面重复, 但每隔一幅进行翻转 (flipped)。这样在纹理的边界处,纹理可以保持连续。
• clamp : 把[0,1)范围之外的进行截断。截断到[0,1)内的半 个纹素。

真实感图形的绘制

真实感图形的绘制



• 为了更好地表现出由于物体表面材料不同 而引起的不同视觉感受,表现光源形状、 颜色、及照明区域等因素对照明效果的影 响等,需要建立更能精确反映客观世界的 光照明模型。本章将要介绍的TorranceSparrow 模型和Cook-Torrance模型等就是 这样一些能更好地模拟自然界光照明物理 过程的光照明模型。而一些更为精确的计 算模型,如辐射度算法,则考虑了场景中 光源与物体表面间辐射能量的传递来计算 光强度。
• 包围盒技术是用几何形状相对简单的封闭表面 (如长方体、球、圆柱等)将一复杂景物包裹起 来,如图12.6中的虚线为最简单的椭球形包围盒。 • 优点:场景分层次表示法和包围盒技术用光线与 少量形状简单的包围盒的求交测试取代与大量景 物表面的求交计算,提高了算法效率。 • 缺点:这种方法的问题在于许多情况下简单的包 围盒不能紧密地包裹其中所含的景物,因此降低 了包围盒测试的可靠性。而复杂的包围盒又将导 致光线和包围盒的求交计算变得困难。
12.1.2 Whitted光照明模型
• 规则透射方向t可写成如下形式
t = k f (N 0 − V ′) − N 0
其中
| N0 | kf = [(η 2 / η1 ) 2 | V ' | 2 − | N 0 − V ' | 2 ]1 / 2
下面讨论如何确定 k f
12.1.2 Whitted光照明模型
σσ+
视点 图12.8 BSP树的遍历
Root 1 3 0 2 4 5 6 8 9 1 3 2 0 04 4 5 7 8 6 69 9 13 024 57 689 7 01234 56789
图12.9 二维场景及其BSP树
• 3. 基于网格剖分的光线跟踪 首先求光线在当前网格中的出口,然后将该点沿 光线前进方向做微小移动,使 P 点为光线即将进 入的下一个网格的一个内部点。根据光线前进的 特点,光线位于下一个网格内的区段上各点的参 数值一定大于光线在当前网格内各点的参数。设 光线在当前网格的出口点参数为t(当然它也是下 一个网格的入口参数)。这样只要将t加上一个很 小的正挠动量,就得到点 P 的参数值。确定了 P 的位置就可确定它所在的叶结点空间。然后将光 线与该叶结点空间中所含的景物进行求交测试。 若存在有效交点,则结束光线跟踪;否则继续跟 踪进入相邻的下一空间区域,直至该光线射出空 间或求得有效交点为止。

基于自然景物模拟的真实感图形

基于自然景物模拟的真实感图形
地用一组离散数据定义, uv R 和R 则通过差分来近似计算 。
以山的构造模型为例, 通过多边形细分的方法, 如在三角形的三 条边上随机各取一点.沿垂直方向随机偏移一距离后得到新的三点 , 利用纹理映射技术能方便地将平面花纹覆盖到任意景物表 再连接成四个三角形, 如此继续即可形成褶皱的山峰, 如图I 所示。 面上, 自然界中许多景物 , 但 如山脉 、 岩石 、 树木 、 云彩 、 平原 、 各种 2 分 形 几 何 . 植物表皮等 , 表面呈现 出随机的不规则 凹凸不平的情况 , 简单地 () 1分形定义 采用纹理映射技术无法得到满意的模拟 , 原因是纹理映射技术并 分形( at ) f c 1指的是数学 上的一类 几何形体 , ra 其每一个局部 不改变景物表面的几何性质 。为了用计算机绘制出各种真实的自 都可被看作是整体 图形的一个缩小的复本 。例如 : 最早发现的分
凹凸不平的景物。用它来模拟植物表皮具有很好 的效果 。该方法 引言 扰动” 。即在表面每一 真实感图形绘制技术综 合利用数学 、 物理学 、 计算机科学和 采用一扰动函数对常规 曲面的法向量进行“ 此 不影响 其他科学 知识 在计算机 图形设备上生成象彩 色照片那样 的真实 点上沿其表 面法 向方向附加一个新向量 , 向量 比较小 , 原表面的大致形状 ,但对表 面该点处的法 向产生较大的扰动 , 使 感图形 。在产品外形设计中 , 常需要制作实物模 型来检查设计效
由于R 很小, 上两式中第三项可忽略,P uP+ uN l l fQ =uR */ N l Q = vR * / vP+ vN J J N
所 rN = u Q 2 Q v
=uP+u NP) l +vP* ) l P vR ( *v/ Nl R (vN / Nl = + uNP )f + vP* )f ——② NR (*v/ N f R(uN / Nf ②式最后两项就是初始向量的扰 动因子 , 是 扰动后的法 N 向量 。扰动函数R( , ) U v 可取任何有偏导数的函数 , 也可以非解析

使用CAD制作逼真的表面效果图

使用CAD制作逼真的表面效果图

使用CAD制作逼真的表面效果图CAD(计算机辅助设计)软件在现代设计领域扮演着重要的角色。

它可以帮助设计师快速而准确地创建各种图形和模型。

在设计过程中,表面效果图对于展示产品或建筑物的外观至关重要。

本文将介绍如何使用CAD软件制作逼真的表面效果图,并提供一些实用的技巧。

首先,确保你已经熟悉所用CAD软件的基本功能和界面。

选择适合你项目的建模方法,例如使用实体建模或曲线建模。

在开始制作表面效果图之前,建议先收集一些参考图像和资料,以便更好地了解产品或建筑物的外观特征。

接下来,创建所需的几何形状。

你可以使用CAD软件提供的基本几何工具,如直线、圆、方形等,或者使用自定义工具来创建更复杂的形状。

熟练掌握CAD软件的绘图命令,使用准确的尺寸和比例来绘制形状。

确保使用正确的图层设置,以便更好地控制模型的可见性和编辑。

一旦形状创建完成,可以开始添加表面效果。

常用的方法是使用材质和纹理。

首先在CAD软件的材质库中选择适合的材质类型,如金属、木材、石材等。

然后将材质应用到相应的几何形状上。

你可以调整材质的光泽度、颜色和纹理属性,以获得逼真的效果。

另一种方法是使用纹理贴图,将现有的图片或图案应用到模型表面,增加细节和真实感。

在添加材质和纹理的同时,还可以调整光照效果。

CAD软件通常提供了多种光源设置,例如点光源、方向光源和聚光灯。

通过调整光源位置、强度和颜色,可以改变模型的明暗和阴影效果,增强逼真感。

注意光照和阴影的位置和方向应与场景中的实际光源相符合,以达到更真实的效果。

除了材质、纹理和光照,还可以使用CAD软件提供的其他效果来增强表面效果图的真实感。

例如透明效果、反射效果、折射效果等。

这些效果可以帮助模型更好地模拟实际物体的光线行为,从而更真实地呈现出来。

最后,当表面效果图制作完成时,可以对其进行渲染和渲染优化。

渲染是将模型呈现为逼真的图像或动画的过程。

CAD软件通常提供了渲染引擎或插件,可以根据需求选择合适的渲染方式,如光线追踪、辐射度分析等。

第十章真实感图形PPT课件

第十章真实感图形PPT课件



品红
图10-3 HSV正六边形
12
13
V
绿





品红
H S

图10-4 HSV 颜色模型
14
HSV六棱锥
HSV圆锥
15
色泽

纯色
灰色色调色深黑 Nhomakorabea图10-5 色泽、色深和色调的关系图
16
表10-1 RGB和HSV的对应关系 图10-5 Photoshop 软件中表示的RGB模型和HSB模型的转换 17
20
从上面的顺序中,可以很明显地感到各种油墨添加后的 效果。在印刷过程中,纸张在各个滚筒间传送,可能因为热 胀冷缩或者其他的一些原因产生了位移,这可能使得原本该 印上颜色的地方没有印上。为了检验印刷品的质量,在印刷 各个颜色的时候,都会在纸张空白的地方印一个+符号。如果 每个颜色都套印正确,那么在最终的成品上只会看到一个+符 号。如果有两个或三个,就说明产生了套印错误,将会造成 废品。
29
10.2.2 环境光模型
环境光是环境中其它物体散射到物体表面后再反射出来的 光。由周围物体多次反射所产生的环境光来自周围各个方向, 又均匀地向各个方向反射。
环境光的反射光强Ia可表示为
I e ka I a ,0.0≤ka≤1.0
(10-4)
P
图10-9 环境光几何表示
30
10.2.3 漫反射光模型
19
在图像交付印刷的时候,一般需要把这四个通道的灰度 图制成胶片(称为出片),然后制成硫酸纸等,再上印刷机进 行印刷。传统的印刷机有4个印刷滚筒(形象比喻,实际情况 有所区别),分别负责印制青色、品红色、黄色和黑色。一张 白纸进入印刷机后要被印4次,先被印上图像中青色的部分, 再被印上洋红色、黄色和黑色部分,顺序如下图:

8 真实感图形

8    真实感图形

void CMyView::WLineTo(float X, float Y, float Z,CDC*pDC)// 用三维 点坐标直接从当前点画线到一点的函数 { Project(X, Y, Z); // 将三维点作投影 XScreen = floor(0.5 + XProj * Scale +400); // 圆整(立体在 圆整( 屏幕上初始的X坐标位置 坐标位置) 屏幕上初始的 坐标位置 YScreen = floor(0.5 + 300 - YProj); // 圆整(立体在屏幕上初 圆整( 始的Y坐标位置 坐标位置) 始的 坐标位置) pDC->LineTo(XScreen, YScreen); // 画线到一点 }
void CMyView::Mydraw() { RedrawWindow(); ReadVertics(); ReadFaces(); // 绘出透视投影下的凸多面体图形 VisionPoint(); // 给出视点位置 DrawObject(); // 画出立体的图形 }
三.实验步骤: 实验步骤: 1.建立project; .建立 ; 2.选择欲创建的文档类型; .选择欲创建的文档类型; 3.根据真实感图形生成中的消隐技术,或光照技术,图 .根据真实感图形生成中的消隐技术,或光照技术, 形反走样技术,或阴影生成技术, 形反走样技术,或阴影生成技术,设计出一个具有真实感 图形的程序; 图形的程序; 4.编译,调试,运行,并检查是否得到预期结果; .编译,调试,运行,并检查是否得到预期结果; 5.按要求书写并提交试验报告. .按要求书写并提交试验报告.
void CMyView::NormalVector(int St1, int St2, int St3)// 此函数用表 面三个顶点调用求该表面的法矢 // St_i is the i_th point of a face. { float P1, P2, P3, Q1, Q2, Q3; // 求一个向量 P1 = St[St2][1] - St[St1][1]; P2 = St[St2][2] - St[St1][2]; P3 = St[St2][3] - St[St1][3]; // 求另一个向量 Q1 = St[St3][1] - St[St1][1]; Q2 = St[St3][2] - St[St1][2]; Q3 = St[St3][3] - St[St1][3]; //用向量积求法向量 用向量积求法向量 n1 = P2 * Q3 - Q2 * P3; n2 = P3 * Q1 - Q3 * P1; n3 = P1 * Q2 - Q1 * P2; }

第九章 使用MFC实现真实感图形绘制

第九章 使用MFC实现真实感图形绘制

第九章使用MFC实现真实感图形绘制真实感图形绘制是计算机图形学的一个重要组成部分。

它综合利用数学、物理学、计算机科学和其他学科知识在计算机图形设备上生成象彩色照片那样的真实感图形。

要用计算机图形设备绘制场景的真实感图形,就必须首先在计算机中建立该场景的模型,用这个模型来反映场景的特点和属性。

这一模型通常是由一批几何数据及数据之间的拓扑关系来表示的,这就是造型技术,它是真实感图形绘制技术的重要组成部分。

有了三维场景的模型,并给定了观察点和观察方向以后,就可以通过几何变换和投影变换在屏幕上显示该三维场景的二维图像。

为了使二维图像具有立体感,并尽可能逼真地显示出该物体在现实世界中被观察到的形象,就需要运用适当的光照模型,来模拟场景在现实世界中受到各种光源照射时的效果,这就是真实感图形的画面绘制技术,也就是真实感图形的生成技术。

用计算机在图形设备上生成连续色调的真实感图形大致可以分为以下四步:第一步,用数学方法建立所需三维场景的几何描述,并将它们输入至计算机。

这部分工作可由三维立体造型或曲面造型系统来完成。

场景的几何描述直接影响了图形的复杂性和图形绘制的计算耗费,因此选择合理的、有效的数据表示和输入手段是非常重要的。

第二步,将三维几何描述转换为二维投影图。

这可以通过对场景的投影变换来完成。

第三步,确定场景中的所有可见面,这需要使用隐藏面消除算法将被其他物体遮挡的不可见面消去。

第四步,计算场景中可见面的颜色,严格地说,就是根据基于光学物理的光照明模型计算可见面投射到观察者眼中的光亮度大小和色彩分量,并将它转换成适合图形设备的颜色值,从而确定投影画面上每一象素的颜色,最终生成图形。

前三步的相关知识在前面已经进行了介绍,本章将重点介绍如何通过MFC 编程的方式,利用光照模型计算场景中可见面的光亮度和颜色,并绘制最终的真实感图形。

实际上,现在OpenGL和DirectX等图形函数库提供了很多支持真实感图形绘制的函数,使用它们可以更轻松的完成真实感图形绘制。

真实感图形显示的基本流程和坐标系

真实感图形显示的基本流程和坐标系

真实感图形显示的基本流程和坐标系下载温馨提示:该文档是我店铺精心编制而成,希望大家下载以后,能够帮助大家解决实际的问题。

文档下载后可定制随意修改,请根据实际需要进行相应的调整和使用,谢谢!并且,本店铺为大家提供各种各样类型的实用资料,如教育随笔、日记赏析、句子摘抄、古诗大全、经典美文、话题作文、工作总结、词语解析、文案摘录、其他资料等等,如想了解不同资料格式和写法,敬请关注!Download tips: This document is carefully compiled by theeditor. I hope that after you download them,they can help yousolve practical problems. The document can be customized andmodified after downloading,please adjust and use it according toactual needs, thank you!In addition, our shop provides you with various types ofpractical materials,such as educational essays, diaryappreciation,sentence excerpts,ancient poems,classic articles,topic composition,work summary,word parsing,copy excerpts,other materials and so on,want to know different data formats andwriting methods,please pay attention!真实感图形显示是计算机图形学中的一个重要领域,它旨在通过计算机生成具有真实感的图形图像。

计算机图形学 第五章 真实感图形 (1)

计算机图形学 第五章 真实感图形 (1)
n i 1

m
矢量积形式
I K a I a I i ( K d ( N , L) k s ( N , H ) )
n i 1
m
20
Phong模型
Phong模型的光照明效果(Utah Teapot)
21
Whitted整体光照明模型

局部光照明模型的局限


仅考虑从光源直接发出的光线对物体表面光亮度的 贡献 没有考虑光线在物体之间的相互反射和透射 可模拟现实世界中 景物表面之间的 镜面反射和透射 现象
镜面反射和规则透射示例
24
Whitted整体光照明模型

Whitted整体光照明模型
I I c k s I s kt I t
Ic:由光源直接照射在表面上引起的反射光亮度 Is:沿V的镜面反射方向r入射到表面上的环境光在表面上产生的 镜面反射光 It:沿V的规则透射方向t入射到表面上的环境光通过透射在表面 上产生的规则透射光 ks:表面的镜面反射率 kt:表面的透射率

8
Lambert漫反射模型

漫反射光是物体表面对入射光线朝各个方向的 均匀反射

大小只与入射光的光亮度和入射方向有关 与漫反射光的反射方向无关
光源 N
均匀反射的光线
9
Lambert漫反射模型

漫反射光亮度和光源入射角(入射光线和表面 法向量的夹角)的余弦成正比
I d K d I e cos

Whitted模型:整体光照明模型

22
Whitted整体光照明模型

假设从某一观察方向V所观察到的物体表面某点 P的光亮度的贡献来自于三个方面:

计算机图形学报告

计算机图形学报告

. . . . .. . 优质资料 .. 计算机图形学 (2017年秋季学期)实验 报 告系别:计算机科学与技术 班级: : 学号:实验名称:2-真实感图形绘制2020-11-132/3《计算机图形学》实验报告实验名称真实感图形绘制 实验序号 2实验日期 2017.12.13 实验人 一、实验目的、要求与环境1.目的:通过实验,学生应掌握通过计算机程序进行真实感图形绘制的基本原理,特别是对三维显示对象进行纹理映射的基本方法,将理论和实际应用切实结合起来。

2.要求:对一个三维立方体进行旋转,对其6个不同的面进行6个不同图像的纹理映射,并进行投影变换与显示,分析增强后的视觉效果,提交实验报告。

3.环境:Windows 7操作系统Microsoft Visual Studio 2005OpenGL 函数库4. 自带位图文件(换成你自己的图像文件):总成绩:评语:日期:2020-11-1311/12二、实验容与步骤1. 准备相关图像文件。

2. 进行立方体各面图像与旋转速度的大体设计。

3.在Windows 7 操作系统上,打开Microsoft Visual Studio 2005,编写相关程序,完成程序主体框架结构。

4.编写六面体显示相关的程序代码。

5.编写六面体旋转相关的程序代码。

6.编写深度检测相关的程序代码。

7. 编写纹理载入功能的相关程序代码。

8. 编写纹理参数定义功能的相关程序代码。

9. 编写纹理映射功能的相关程序代码。

10.对程序进行相关调试,修改程序,去除其中的BUG 。

11. 观察纹理映射后的六面体的旋转显示,与预想的结果进行对比,修改相关程序参数。

12.截屏,保留实验结果,进行实验结果分析,并撰写实验报告。

2020-11-13 2/32020-11-13 11/12四、编译过程截图五、实验结果与分析(下面是一个例子,换上你自己的图)实验结果:实验分析程序通过glBindTexture(GL_TEXTURE_2D, lastTextureID);语句,完成了恢复之2020-11-13 2/32020-11-13 11/122020-11-13 2/32020-11-13 11/122020-11-13 2/3。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

(一)消隐技术
BSP算法(Binary Space Partition)
设置视点位置 选取空间中某一平面对场景中的组成平面进行二
值状态分离,根据视点位置,位于分割平面前的 组成面设置状态为前(Front),位于分割平面后 的组成面设置状态为后(Back)。对于与分割面 相交的组成面,将其分成独立的两部分。 继续选取分割平面对之前的分离结果进行更细致 的分离,直至每个子区域只有一个组成面或包含 的组成面容易进行深度比较为止 最终形成一个二值状态的二叉树
sn
Zw
s n PYwLx源自点光源LzLy
Xw
无限远光源
光源位置处于无限远处
入射光线平行:平面上任意一点的 入射角相同
模型参数:
光强 入射角
点光源
局部光源
用相关角度来模拟定向 光束的光照特征
模型参数:
位置 方向 光强 照射角
只有在光源照射范围之 内的空间点可以被光照 到
多边形着色方法
均匀着色(Flat Shading) 光滑着色(Smooth Shading)
L
反射光 R
N=10,30,50
n = 15
n=5
n=1
n 常规取值 5~20
光照效果比较
简单光照模型
简单光照模型
简单光照明模型模拟物体表面对光的反射作用。 光源被假定为点光源, 反射作用被细分为镜面反射(Specular Reflection)和
漫反射(Diffuse Reflection)。 模型只考虑物体对直接光照的反射作用,而物体间
相关因素:
光源强度 物体朝向 物体表面反射系数
光照方程:
Id Kd I pcos
漫反射(Diffuse Reflection)
点光源:向周围所有方向发射等强度的光 漫反射光是由物体表面的粗糙不平引起的,它均匀地向
各个方向传播,与视点无关
漫反射光在空间均匀分布,反射光强 I 与入射光的入射
因此,如果想有真实感地显示3D物体,必须在视 点确定后,将对象表面上不可见的点、线、面消
去。执行这一功能的算法,称为消隐算法。
(一)消隐技术
三维网格模型将三维物体的表面分解为一 组空间多边形,消隐算法就是研究多边形 之间的遮挡关系。
按操作对象的不同,可分为两大类:
对象空间方法(Object Space Methods) 图像空间方法(Image Space Methods)。
Phong模型特点分析
模型简单,便于实时绘制 是一个经验模型,可以达到一定的真实度 还具有以下的一些问题
用Phong模型显示出的物体像塑料,没有质感 环境光是常量,没有考虑物体之间相互的反射光 镜面反射的颜色是光源的颜色,与物体的材料无关 镜面反射的计算在入射角很大时会产生失真
镜面反射由于表面光滑的物体对入射光的反射形成的
对于理想镜面,反射光集中在一个方向,并遵守反射 定律。
对一般的光滑表面,反射光集中在一个范围内,且由 反射定律决定的反射方向光强最大。因此,对于同一 点来说,从不同位置所观察到的镜面反射光强是不同 的。
高光现象:镜面反射光在反射方向附近形成很亮的光 斑
境光反射系数记为Ka 。
光照明方程(仅含环境光):物体表面所呈现的亮度 Ie = KaIa
例如,透过厚厚云层的阳光就可以称为环境光。
Ka = 0.4
Ka = 0.8
反射模型
当光照射到物体表面时,光线可能被吸收、反射和透 射。
被物体吸收的部分转化为热, 反射、透射的光进入视觉系统,使我们能看见物体。 目前虚拟光照的研究主要针对物体对入射光的反射模型进行
虚拟场景着色方案:
为物体每个表面赋予固定的颜色,无论怎样观察物体 其颜色保持不变
尽可能模拟光源与彩色表面相互作用的效果
计算机图形学中,采用光照模型来计算景物表面 上任一点投向观察者眼中的光亮度的大小和色彩 组成,生成具有真实感的图像
光照模型:用来计算投射到人眼中光亮度大小的 数学模型。
照射方向
点光源
光源的照射角
环境光
是指光源间接对物体的影响,是在物体和环境之间多 次反射,最终达到平衡时的一种光。
我们近似地认为同一环境下的环境光,其光强分布是 均匀的,它在任何一个方向上的分布都相同,即在任
何位置、任何方向上强度一样,记为Ia
在分布均匀的环境光照射下,不同物体表面所呈现的 亮度未必相同,因为它们的环境光反射系数不同,环
光照方程: Is I pKs cosn I pKs (V R)n
Ks是物体表面镜面反射系数,它与入射 角和波长有关; α 是视线与反射方向的夹角; n 为镜面高光系数,用来模拟镜面反射 光在空间中的汇聚程度,它是一个反映 物体表面光泽度的常数;
镜面高光系数 n的影响效果
N 入射光
(一)消隐技术
表优先级算法(画家算 法)
优点:简单、易于实现, 并且可以作为实现更为 复杂算法的基础
缺点:只能处理互不相 交的面,而且深度优先 级表中的顺序可能出错
A
B
边界表示
画家算法之 先A后B
正确投影
画家算法之 先 B后A
只能把有关的面进行分割后再排序。增加了算法的 复杂度,因此,该算法使用具有一定的局限性
真实感图形绘制技术
主要内容
消隐技术 光照模型 透明处理 阴影绘制 纹理映射
(一)消隐技术
通常,我们看一个3D物体,是不能一眼看到其全 部表面的,只能看到该物体表面上的部分点、线、 面,而其余部分则被这些可见部分遮挡住。
如果观察的是多个3D物体,则物体之间还可能彼 此遮挡而部分不可见。
速排序
视点1 A
P2
视点3
B P1
D 视点2
C 视点4
P1 Back
Front
P2
P2
Front
Back Front
Back
A
B
D
C
Front
P1 Back
P2
P2
Back
Front Back
Front
A
B
D
C
P1 Back
Front
Back
P2
P2
Front Back
Front
A
B
D
C
(一)消隐技术
Z缓冲区算法又称为深度缓存算法,不仅需要一个帧 缓冲区(Frame Buffer)来存放每个像素的亮度值,而且 还需要有一个Z缓冲区(Z Buffer)来存放每个像素的深 度值,即Z坐标。这正是Z缓冲区算法名称的来历。
Z Buffer的大小由屏幕显示分辨率决定
优点:
Z缓冲区算法排序灵活简单,有利于硬件实现。
I Ie Id Is KaIa f (d )I p[Kd (L N ) Ks (V R)n ]
多个点光源:
m
I Ie Idi Isi i 1
m
KaIa
fi I p[Kd (Li N ) Ks (V Ri )n ]
i 1
如果有多个光源,则可以把各个光 源的漫反射光照效果进行叠加:
m
Id Kd I pi ( N Li ) i 1
环境光与漫反射光结合 方程: I I e I d I a K a I p K d ( L N )
例子:
镜面反射(Specular Reflection)
视点 A
D
P2 B P1
C
Front
P1 Back
A,B
D,C
P1 Front
Back
P2
P2
Front
Back Front
Back
A
B
D
C
(一)消隐技术
BSP算法(Binary Space Partition)
是一种决定场景可见性的有效方法 与画家算法类似,也是从远到近往屏幕覆盖画面元素 适合在场景不变,视点变化的场合中对景物表面做快
Weiler-Atherton算法
可见多边形裁剪 以位于最前面的景物表面为裁剪窗口,对后面的景物
进行裁剪,位于裁剪窗口之内的表面或表面的被遮挡 部分可以消去。位于窗口之外的表面组成外裁剪多边 形表,取表中位于最前面的表面为裁剪窗口,继续对 其他表面进行裁剪,直至外裁剪结果多边形表为空为 止。
(一)消隐技术
表优先级算法(画家算法)
1. 将屏幕置成背景色 2. 构造物体组成面的深度优先级表:把物体的各个面按
其离视点的远近进行排序,离视点远的在表头,离视 点近的在表尾 3. 由远到近进行绘制:从表头至表尾逐个取出多边形, 投影到屏幕上,显示多边形所包含的实心区域。
由后显示的图形取代先显示的画面,而后显示的图形 所代表的面离视点更近,所以,由远及近地绘制各面 就相当于消除隐藏面。这与油画家作画的过程类似, 先画远景,再画中景,最后画近景,因此将这种算法 称为画家算法。
在Z缓冲区算法中,屏幕上哪个像素点的颜色先计算, 哪个后计算,其先后顺序是无关紧要的,不影响消隐 结果。因此,该算法不需要预先排队,从而省去了排 序时间。
目前许多图形工作站都配置硬件实现的Z缓冲器算法, 以便于图形的快速生成和实时显示
缺点:
占用的存储容量大
(二)光照模型
18
19
(二)光照模型
从物体表面反射出来的光取决于光的成分、光源的几 何性质、物体表面朝向和表面性质等。由于物体表面 反射性质不同,可以将反射模型分为两类:
漫反射 镜面反射
漫反射
相关文档
最新文档