Transcript 第三讲

注意!
– 坐标系不是顺序产生的
– 而是一开始就设定好, 然后才能
计算出相应的转换关系
3D 建模
3D 渲染
3D2D
观察转换
其它处理

建模坐标系
-> ->单个对象位置、方向变换,多个对象的装配

世界坐标系
-> ->光照计算(颜色),纹理坐标计算
-> ->观察变换(投影变换)

观察坐标系
-> ->裁剪,
-> -> 消隐,透明
-> ->设备坐标扫描转换为二维像素坐标, 定下每个像素颜色
2D 显示
2-1

设备(屏幕)坐标系
第3讲 彩色图形显示
1 光栅扫描原理
2 帧缓冲器
3 其它
1. 光栅扫描原理
2-3
阴极射线管(CRT)
 阴极射线管(CRT: Cathode-Ray Tube)是图形显示器的核心

早期电视机中的显像管都是CRT

大多数视频监视器的操作都是基于标准CRT而设计
荧光粉层
电子枪
控制栅
加速电极
玻璃屏
红 绿
偏转系统
导电涂层
电子束
灯丝
阴极
聚焦系统
水平偏转
垂直偏转
阴极射线管(CRT)剖面图(穿透式)
2-4
偏转距离
玻璃屏
荧光粉层
电子枪
控制栅
加速电极
红
偏转系统
绿
导电涂层
CRT工作原理
电子束
灯丝
阴极
聚焦系统
水平偏转
偏转距离
垂直偏转
阴极射线管(CRT)剖面图(穿透式)
 由电子枪发出的电子束(阴极射线),通过聚焦系统和偏转
系统,射向涂覆荧光层的屏幕上指定位置
 在电子束冲击的每个位置,荧光层发出一个小亮点,而产
生可见图形
 电子枪:在控制栅极上的电压电平控制下,产生带负电荷
的自由电子,通过聚焦、加速冲向荧火屏
 聚焦系统:用来强制电子束在轰击荧光屏时会聚到一个小
点,保证电子束轰击荧光屏时产生的亮点足够小
 加速电极:加速电极加有正的高电压,使经过聚焦的电子
束高速运动
 偏转系统:控制电子束使其在荧光屏的适当位置绘图
2-5
荫罩法显示彩色的原理
 荫罩法彩色CRT是在荧光屏每个光点处呈三角形排列着红、
绿和蓝三种颜色的三个荧光点


CRT有三支电子枪,分别与三个荧光点对应

2-6
由于三个荧光点很小,且靠得很近,所以每个光点所显
示的是一个具有混合颜色的光点
每支电子枪发出的电子束专用于轰击某一类荧光粉

荫罩栅格被安置在紧靠荧光涂层的地方

荧光屏上的荧光点、荫罩栅格上的小孔和电子枪被精确地
安排处于一条直线上,使得由某一电子枪发出的电子束只
能轰击到它所对应的荧光点。三个电子束经聚焦偏转之后
,穿过荫罩栅格上的小孔,激活该小孔对应的三个荧光点
荫罩法结构示意
电子枪
光点
荧光点
荫罩栅
荧光粉
2-7
点状
栅格式
沟槽式
大多数球面与柱面显像管
Sony的Trinitron显像管
Mitsubishi的Diamondtron显像管
LG的Flatron显像
管
荫罩法彩色原理
 三支电子束的强度等级可控制荫罩CRT显示的彩色

调节各电子枪发出的电子束强度,即可控制各光点中三
个荧光点所发出的红、绿和蓝三色光的亮度

彩色取决于红、绿、蓝荧光层激活的总量
 荫罩法常用于光栅扫描系统

它能产生的彩色范围很大
 图形系统的彩色CRT设计成RGB监视器

2-8
这些监视器采用荫罩法,且不经任何中间处理,直接从
计算机系统取得每支电子枪(红、绿和蓝)的强度等级
2. 帧缓冲器
2-9
光栅扫描显示的帧
 在刷新式CRT光栅扫描方式中,电子束总是不断地从左到
右、从上到下反复扫描整个屏幕

电子束从左到右(横向)扫描一次为一条扫描线


从屏幕顶部到屏幕底部(纵向)的扫描线构成一帧图像


2-10
在每条扫描线末端,电子束返回到屏幕的左边,又
开始显示下一条扫描线
一帧图像是显示系统执行一次全屏幕循环扫描(一次
屏幕刷新)所产生的图像
每帧终了,电子束返回到屏幕的左上角,开始下一
帧
光栅扫描显示的帧
 在扫描过程中,只要在对应时刻、对应位置控制电子束
的强度就能显示所要的图形
2-11
光栅扫描的逐行扫描
 扫描线在屏幕上自上而下一条一条地扫描。当电子束从左
到右到达屏幕的右边在每条扫描线末端,电子束返回到屏
幕的左边,又开始显示下一条扫描线。在回扫过程中,电
子束几乎不发射出电子,而且速度也很快
 水平回扫(horizontal retrace):每条扫描线扫过后,返回
到屏幕左端
 垂直回扫(vertical retrace):当电子束到达屏幕底部时,
又返回到屏幕左上角,从头开始扫描下一帧
2-12
水平回扫
垂直回扫
光栅扫描的隔行扫描
 某些系统采用隔行(interlaced)刷新方式,每帧显示分
为两趟:

第一趟:电子束从顶到底,一行隔一行地扫描

第二趟:垂直回扫后,电子束则再扫描另一半扫描
线
 以这种方式的隔行扫描使在逐行扫描所需时间的一半时
就能看到整个屏幕显示
奇场
2-13
偶场
光栅扫描刷新频率
 光栅扫描显示器每秒刷新的循环数称CRT的刷新频率

一般,光栅扫描显示器的刷新是按每秒60到80帧的速
率进行的,但有些系统设计成更高的刷新速率
 刷新频率以每秒多少周期或赫兹(HZ)为单位来描述:

一个周期对应于一帧

每秒60帧的刷新频率为60HZ
 注意:刷新频率与物体的复杂度无关,也不会因物体的复
杂度而影响其显示的质量
2-14
光栅扫描显示的帧缓冲器
 光栅扫描显示器显示图像或画面是由像素组成
 图像所有像素的强度值都要存放在一个存储器中

2-15
这个存储器称为帧缓冲器(frame buffer)或刷新存储器
(refresh buffer),俗称显示存储器
帧缓冲器与屏幕象素
 光栅扫描系统能较好地适用于包含细微阴影和彩色模式的
场景的逼真显示,因此,光栅扫描显示器具有丰富的灰度
和色彩,能产生真实感很强的复杂图形
 光栅扫描的帧缓冲器对屏幕每一点都有存储强度/颜色信息
的能力。帧缓冲器的单元个数至少与显示器能显示的像素
总数相同,且存储单元一一对应于可寻址的屏幕像素位置
2-16

在每像素一位(二值)系统中,每个屏幕点或亮或暗,只
需一个二进位来控制屏幕位置亮度,这时的帧缓冲器通
常叫做位图(bitmap)

彩色显示和单色多灰度显示时,要能显示彩色并且强度
可变,就需附加位,每个像素需要使用多个二进位表示
,此时,帧缓冲器常常视为像素图(pix-map)
帧缓冲器与颜色种类
 帧缓冲器每一个存储单元的位长决定了一幅画面上能同时显
示的不同灰度的数目或颜色的种类
– 若帧缓冲器存储单元的位长为n,那么,帧缓冲器能支持一幅画面上同
时显示的灰度等级或颜色种类数为2n:
–高质量的光栅图形系统的帧缓冲器中每个象素对应24位,即每个
电子枪发出的电子束的强度有256个等级,则该显示器能显示28
×28×28 = 224 =16兆种颜色
–每个光点具有24个存贮位的RGB彩色系统通常称为全彩色系统或真
彩色系统
– 在采用彩色表之前,
• 物理屏幕一幅画面上可以同时显示的颜色种类数?
• 该显示系统最多能够显示的颜色种类数?
2-17
帧缓冲器、分辨率与颜色种类
 假定显示器的分辨率为m×n,需要同时显示k种颜色,那
么帧缓冲器的容量v至少要求为:
v  m  n  lg k 
 或者,假定显示器的分辨率为m×n,帧缓冲器的容量为v,
那么,可以同时显示颜色种类数k可表示为:
k 
2-18
v
2 m n
帧缓冲器、分辨率与颜色种类
 通俗地讲:帧缓冲器的容量一定时,分辨率越大,帧缓冲器
中每个单元可分配的位长越小,可同时显示的颜色种类也越
少
 例如:具有1M字节的帧缓冲器:
• 若分辨率为640×480,则帧缓冲器每单元的位长就为
24位
• 若分辨率为1024×768,则帧缓冲器每单元的位长就
为略多于8位
2-19
帧缓冲器的位平面
 位平面结构:

像素的每一位各自存放在不同的存储体,这样,一幅画面
上所有象素的相同位存储在同一存储体内,这就是位平面


一般情况下,帧缓冲器的每个单元有多少位就可分成多少
个位平面

2-20
由于使用多个存储体,可一次同时读出更多的像素信息
,降低了对帧缓冲器工作速度的要求,在中、高性能的
图形显示器中得到广泛采用
位平面的数目就是帧缓冲器的深度,也就是颜色的深度
(灰度等级或颜色种类)
多灰度显示的位平面
位平面 3
数模转换
黑白两种颜色
8 个灰度等级
位平面 2
位平面 1
帧缓冲器、位平面与多灰度显示
即:若帧缓冲器的位平面的数目为n,则屏幕上一
次可同时显示的颜色种类/灰度等级数是2n
2-21
彩色显示的位平面
 用于高分辨率彩色显示时所需要的帧缓冲器的开销是相
当高的
 作为帧缓冲器可能要求几兆字节存贮量,这由该系
统的分辨率决定
 每个像素24位,而屏幕分辨率为1024×1024的系统
需要1024×1024 ×24 ÷ 8≈ 3MB存贮量作帧缓冲器
蓝
蓝
8位
位平面
绿
红
绿
24 位
位平面
8位
数模转换
红
位平面
8位
1024X1024X24=25165824 位
2-22
帧缓冲器与彩色显示
帧缓冲器的分页
 帧缓冲器的容量往往比一幅屏幕画面的像素图大得多

这时,帧缓冲器区域分成若干页面,每个页面存放一幅
屏幕画面

帧缓冲器可以同时存放多幅画面的像素图

通过控制器实现不同画面的切换
 页面的大小可以划分得比屏幕位图大得多,甚至是整个帧
缓冲器

2-23
从程序员的角度来看,可输出显示的画面将远大于实际
的物理屏幕,此时,物理屏幕仅是一个窗口,它显示的
不过是全部画面的一部分
彩色查找表技术
 彩色查找表或颜色索引技术:
2-24

在帧缓冲器与显示屏的数模转换器之间增加一个查色表
(Color Lookup Table,又称调色板),对显示的颜色进行
索引

不增加帧缓冲器存储容量而得到更多颜色
彩色查找表的结构
 彩色查找表(彩色表)可看成是一
维线性表


2-25
每一项(元素)对应于一种颜
色
帧缓冲器中每个单元存储的
是对应于某一像素颜色在颜
色表中的地址(索引),而
不是颜色值
0
(
象
素
颜
色
种
类
)
彩
色
表
地
址
196
255
彩色表元素
(帧缓冲器单元位长)
彩色查找表的结构
 彩色表的地址长度由帧缓冲器每个存储
单元的位数决定
 这确定一幅画面能同时显示的颜色
种类数
 彩色表的元素位长由帧缓冲器每个存储
单元的基色数决定
 这决定显示器可选择显示的颜色种
类总数
2-26
0
(
象
素
颜
色
种
类
)
彩
色
表
地
址
196
255
彩色表元素
(帧缓冲器单元位长)
彩色查找表标注
 例:帧缓冲器单元位长为8,彩色表的元素位长为24位(每
一个基色位长为8位),这样,一幅画面上能同时显示256
种颜色,而可得到1600多万种颜色的可能性

这称为:1600多万种颜色中同屏显示256种颜色

记为:256/16777216
蓝
来自帧缓冲器
绿
红
红
绿
蓝
8位
8位
8位
数模转换
红
8位
2-27
绿
8位
蓝
8位
彩色查找表其它功用
 彩色表的使用还增加了一些附加功能。如:
•
彩色表内容全部置成背景色可快速清除屏幕画面;
•
假如帧缓冲器中的三个位平面中存放着三幅不同的单色
图像,可通过彩色表来选择其中的任意一幅进行显示,
也可将其中的两幅或三幅叠加显示
•
2-28
彩色表在动画中应用更加广泛
液晶和等离子
液晶显示:通过电流来改变液晶面板上的液晶分子排列,
使它能阻塞或传递内部光源发出的光 。
等离子显示:依靠高电压来激活显像单元中的特殊气体,
使它产生紫外线来激发荧光物质发光 。
 刷新速率, 响应时间
 色彩
——每个像素都由三个单元构成,分别负责红、绿和蓝色的显示
——彩色萤光粉
 分辩率
 亮度和对比度
 视角,屏幕尺寸 ……
2-29
前景像素与背景像素的颜色融合
可见面判别
面绘制(渲染)
 假设透明度系数0<=tn<=1
 P = tF + (1 − t)B
 P = t0F + t1B1 + (1 − t0 − t1)B2
2-30
OpenGL的颜色处理函数
 RGB,RGBA(RGB+α透明度系数)模式

glColor* (colorComponents);
 glColor3f (0.0, 1.0, 1.0);
 glColor3i (0, 255, 255);
 glColor4i (0, 255, 255,0.2);
 颜色表模式:



glutSetColor (index, red, green, blue);
glEnable (GL_COLOR_TABLE)
glIndexi (196);
 颜色混合(调和):不作用于颜色表模式


glBlendFunc (sFactor, dFactor);
(Sr Rs + Dr Rd , SgGs + DgGd , Sb Bs + Db Bd , Sa As + Da
Ad )
 glGetFloatv (GL_CURRENT_COLOR, colorValues);
2-31