计算机图形学视觉外观浙江大学.ppt_第1页
计算机图形学视觉外观浙江大学.ppt_第2页
计算机图形学视觉外观浙江大学.ppt_第3页
计算机图形学视觉外观浙江大学.ppt_第4页
计算机图形学视觉外观浙江大学.ppt_第5页
已阅读5页,还剩83页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Chapter 3. Visual Appearance 视觉外观 金小刚 Email: 浙江大学CAD当a Require “n” passes for all geometry # of passes is practically unbounded T-buffer Require 1 pass for all static geometry # of samples depends on implementation limits Multiple rendering for moving objects # Could be 2-4 for slow moving objects # More for fast moving objects T-buffer 和 Accumulation buffer比较 T-buffer 和 Accumulation buffer与FSAA(全屏 幕反走样)相比的共同优点:在一个象素单元内 ,采样模板不一定是均匀的。 每个Pass与其它Pass无关,因而可采用均匀模板 外其它的模板,如(0,0.25), (0.5,0.0), (0.75, 0.5), (0.25,0.75)。 上述模板称为旋转网格超采样(Rotated Grid Super-Sampling, 简称 RGSS),这种模板对于接 近水平或垂直的直线能提供更好的反走样效果, 而这也是应用中最需要的。 T-buffer 和 Accumulation buffer的优点 各各 种种 象象 素素 采采 样样 模模 板板 RGSS A-buffer Multisampling:在单个pass中对每个象素采样多 次的方法。 A-Buffer是一种Multisampling方法,由 Carpenter提出。通常用于在软件中生成高质量 的绘制结果,但不能实时生成。它的主要思想是 计算覆盖象素网格单元的多边形逼近。 是一种边反走样方法,可以绘制透明物体。 在硬件A-buffer中,为了节省计算量,象素网格 单元对应的多边形光亮度值只计算一次,所有象 素网格单元内的采样点共享该光亮度值。因此, 基本的A-buffer算法不能处理纹理和阴影的反走 样。 在A-buffer中,对于每个屏幕网格单元,每个绘 制的多边形生成一个Coverage Mask(完全或部分 覆盖象素单元) 多边形的角 部分覆盖象素网格单元,网格单元细分为 4X4的子网格。覆盖的子网格单元为1,其余为0。16 位的mask为:0000 0111 1111 0111 0 0 0 0 0 1 1 1 0 1 1 1 1 1 1 1 NVIDIA的Quincunx方法 一般的反走样方法一个采样点只影响一个象素 , NVIDIA的Quincunx方法单个采样点影响的 象素多于一个。 1/2 1/81/8 1/81/8 由于共享,每个象素 平均只需2个采样点 ,但是效果却比2个 采样点的全屏幕反走 样好不少。 随机采样(stochastic sampling) 由于场景中可能包含在屏幕上投影非常小的物 体,因此规整的采样模板总会存在某种形式的 走样。 解决方案:把采样点在象素内随机分布,每个 象素有不同的采样模板。这种方法称为随机采 样。 随机采样原理:用噪声取代重复性的走样现象 ,人的视觉系统更能接收。 Jittering(抖动) 最常用的随机采样方法为Jittering,这是一种 分层采样(stratified sampling). 原理: 假设每个象素需要n个采样点,我们把象 素区域分成n个面积相同的区域,把每个采样 点随机地置于其中的一个区域。象素的最终颜 色取为采样点的加权平均。 一个典型的Jittering模板 每个象素划分成3X3的子单元,每个采样点在子 单元内随机出现 交替采样(Interleaved Sampling) 采用交替随机采样可以把由于每个象素采用相 同模板引起的走样缺陷最小化。 采用累积缓存反走样, 每个象素采样四个点 每个象素的采样模板不相 同,模板交替。效果好! 可见重复模板走样现象 透明、Alpha和合成 v在实时绘制中,透明效果的处理通常是简单化和 有限的。 v如下效果通常没有:折射、透明物体厚度引起的 光的衰减等 v有一些透明效果总比一点透明效果都没有好! v通过把表面颜色与其后面物体的颜色相混合,实 时绘制系统确实提供了绘制半透明表面的能力。 Alpha Blending v为了把透明物体的颜色与其后面物体的颜色相混 合,需要Alpha Blending v当物体绘制到屏幕上时,除了RGB颜色值、Z深 度外,还可以有一个可选项(RGBA或者RGB )。 v值用来描述物体在给定象素的不透明度,1.0表 示不透明(完全覆盖); 0.0表示完全不被隐藏; v为了使一个物体看起来透明,我们把它绘制到已 有场景的上面,其值小于1.0; vBlending通过over操作来实现: v很显然,当=1,即物体不透明时,该象素的颜色变 为当前物体的颜色. v为了绘制透明物体, 场景通常需要排序。首先绘 制不透明物体,然后把不透明物体以Back to Front的次序与其进行混合。由于混合操作是与 次序有关的,以任意次序绘制会导致不正确的结 果。 以任意次序绘制透明物 体,结果不正确 以后向前的次序绘制, 结果正确 以任意次序绘制透明物 体,结果不正确 从后向前的次序绘制( 采用depth-peeling技术) ,结果正确 例:透明的直升飞机 v当无法进行场景排序时,最好用Z缓存进行排序 测试。但绘制透明物体时,其Z值不更新。这样 在绘制结果中,至少所有的透明物体都会出现。 v不需要排序的方法: 采用该方程,由于透明物体的Alpha值不影响目 标物体,绘制次序可以任意。但结果看起来不自 然。 合成(Compositing) vover操作在真实场景和虚拟场景的混合中非常有 用。这个过程称为合成(Compositing)。 v在合成中,每个象素除了RGB值外,还有Alpha 值。 vAlpha通道有时也称遮罩(matte),它显示了物 体的轮廓形状。 v存贮RGBA图像的最常用方法为预乘Alpha(pre multiplied alphas)。在该方法中,RGB值在存 贮之前,先乘上Alpha值。此时over操作变得更 有效: Chroma-Keying(色键) 与Alpha通道相关的另一个概念为色键技术。 演员在篮色、黄色或绿色屏幕前拍摄,然后与 背景混合。其原理为把该颜色当成透明色。 在电影工业中,该过程称为Blue Screen Matting. Fog(雾) 在实时图形学中,雾是一种可加到最终图像的 大气现象。 无雾效果有雾效果 采用雾效果的目的 增强室外场景的真实感 由于雾的效果随着离视点距离的增加而真强, 因此它有助于帮助观察者判断物体的远近。 有助于提供光滑的通过远平面实现的物体剔除 。如果把雾的效果设置成在接近远平面的地方 由于浓雾而不可见,则在远平面外的物体看起 来可自然隐退。如果没有雾的效果,远平面外 的物体会突然出现或消失。 雾的效果可用硬件实现,不会或带来很少的额 外计算量。 雾效果的计算方程 假设雾的颜色(由用户指定)为cf,雾因子( fog factor)为f,待绘制物体的颜色为cs ,则 象素的最终颜色cp为: 在上述方程中,f 的值不是很直观,它随离视 点的距离而递减。这是OpenGL和DirectX采用 的方程,其好处是可使计算f的方程变得简单 。 另一种描述方式为f = 1- f 指数雾(Exponential Fog): 平方指数雾(Squared Exponential Fog): 其中df为控制雾浓度的参数。计算得到 f 以后 ,把结果截取(clamp)到0,1 雾因子衰减曲线 查找表在计算雾因子中的应用 在硬件加速中,有时采用查找表来实现雾函数 。 对于给定的一些深度值,先计算并存贮好其雾 因子的值。对于任一深度值,雾因子从查找表 直接读取(或为最接近两个值的线性插值)。 查找表中可以存贮任意值(而不仅仅是上面的 线性或指数函数),从而生成一些特殊效果。 雾既可以在顶点层也可以在象素层计算。 顶点层:雾的效果在光照明方程计算,其它地 方用Gouraud Shading插值。 象素层:用每个象素对应的深度值计算。 象素层计算的效果比顶点层要好! 雾效果中深度值的选取 在传统的软件绘制流水线和大部分图形加速卡 中,z值是非线性计算的。 若直接采用该深度值计算雾因子,计算的结果 并不符合我们的预想。因此有些图形卡支持 eye-relative depth来正确计算深度。为了使深 度线性变化,把透视变换的效果撤销。 z-depth vs. Radial fog View-axis-based fogRadial fog 视点旋转后,物体2从没雾状态进 入有雾状态! 视点旋转后, 结果仍然正确 质量最高的雾效果: pixel-level radial fog Gamma 校正 v当一个象素的值计算好后,我们需要把它显示在监视器 上。 vCRT中电子枪的输入电压与输出光亮度的关系 其中V为输入电压,a和(Gamma)为与显示器相关的常 数,为显示器设置的black level (brightness), I为生成 的亮度。 Gamma值的范围为 2.3,2.6。 v输入电压与输出光亮度之间不是线性关系!需要校正 电压与亮度的 关系(已归一化) 所需的Gamma 校正曲线 两曲线相乘得到 正确的线

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论