• 基于3d计算机图形学理论(五)


    第四章 片元处理和输出合并操作

    1.由光栅器生成的片元属性通常包含深度值,法线向量,RGB颜色值以及一组纹理坐标。
    2.纹素:独立的纹理实体。 纹理通常可以描述为一个2d纹素阵列。
    3.纹理地址(u,v)采用标准化的坐标数据。
    4.纹理地址VS实际地址

    4.1.2 表面参数化操作

    1.纹理坐标与多边形网格之间的赋值过程为表面参数化操作。 需将3D表面延展为2D平面域。
    2.Direct 3D中将(u,v)映射为纹素地址(tx,ty):
    tx=(u x sx )-0.5 ; ty=( v x sy -0.5 【sx和sy表示分辨率,若分辨率为4x4则,sx=4,sy=4.】

    4.2 输出合并

    1.最终阶段与硬件处理有关,通常称为输出合并。
    2.片元程序的输出结果常称作RGBA片元。【“A":Alpha通道,表示透明度,”Z"表示深度值】
    3.决定视口中某一像素由2个三角形折叠而成,该显示谁的颜色——>位置前后来判断——>z轴——>z缓冲区(深度缓冲区)
    4.z缓冲区与颜色缓冲区包含相同分辨率,并记录存储于当前颜色缓冲区中的z值。
    5.片元从片元程序传递时,其z值将与位于(x,y)处的缓冲区进行比较,若该片元包含较小的z值,其颜色值和z值将分别更新位于(x,y)处的颜色缓冲区和z缓冲区,否则表示该片元不可见,丢弃。

    4.2.2 Alpha混合

    1.前讨论基于三角形不透明的基础上,若片元与像素之间呈现为透明状态,可通过在片元颜色值与像素颜色值之间执行混合操作得以实现。称为Alpha混合操作。
    2.特点:无法以任意的顺序进行渲染,透明对象应执行排序操作
    3.Alpha通常与颜色通道包含相同位数,eg.R通道包含8位,则可以用32位表示颜色值RGBA数据。
    5.Alpha通常可表示256种不同级别的透明度,不用【0,255】,使用【0,1】。
    6.常见的混合方程: c=a cf+(1-a) cp 【c:混合颜色值;a:片元透明度 ; cf:片元颜色值 ; cp:像素颜色值】

    4.3.2 z剔除操作

    1.将z>1的扔掉不进行后续操作。
    2.单元剔除:维护一个单元表 eg 一个单元由nxn个像素构成。找到nxn像素中z的最大值zmax 根据输入的3个顶点计算该三角形的zmin ,若zmax<zmin,则该片元被完全遮挡,不会进入片元处理阶段。
    3.z值可以人为进行预写。

  • 相关阅读:
    AI---ListPicker的使用
    AI---Screen & Notifier
    Android---开发环境
    Android---App Inventor环境搭建
    OS---host文件
    JAVA---接口与抽象类
    JAVA---类成员的访问权限
    JSP---一个Servlet处理多个请求操作
    hdu 6016
    hdu 6019
  • 原文地址:https://www.cnblogs.com/katy0308/p/11557413.html
Copyright © 2020-2023  润新知