♥,.*,.♥,.*,.♥,.*,.♥,.*♥,.*,.♥,.*,.♥,.*,.♥,.*,.♥,.*,.♥,.*,.♥,.*,.♥♥,.*,.♥,.*,.♥,.*,.♥,.*♥,.*,.♥,.*,.♥,.*,.♥,.*,.♥,.*,.♥,.*,.♥,.*,.♥
目录
1.曲面消隐
2.曲面消隐算法——图像空间算法
3.曲面消隐算法——对象空间算法
♥,.*,.♥,.*,.♥,.*,.♥,.*♥,.*,.♥,.*,.♥,.*,.♥,.*,.♥,.*,.♥,.*,.♥,.*,.♥♥,.*,.♥,.*,.♥,.*,.♥,.*♥,.*,.♥,.*,.♥,.*,.♥,.*,.♥,.*,.♥,.*,.♥,.*,.♥
1.曲面消隐
消除隐藏的曲面。
原图:
此时很难判断物体之间的位置关系。
消除隐藏的线和面:
对于曲面消隐算法,根据消隐空间可以分为两种:
- 图像空间消隐
- 景物空间消隐/对象空间消隐
2.曲面消隐算法——图像空间算法
图像空间消隐是在图像坐标系进行设备变换(已经完成了投影变换,已经从三维转换为了二维)时的消隐。是二维坐标系下的消隐。
图像空间算法的特点为:
- 受分辨率限制
- 算法复杂为O(nN),n是多边形的数目(图元的数目),N是像素的数量
常用的算法有Z-buffer、扫描线算法。
(1)Z-buffer
Z-buffer算法,称为Z缓冲算法,即存储了Z轴的深度信息。选择离视点最近的点将其绘制。
投影面为z=0,投影类型为平行投影。
举例:
紫色的三角形为第一个多边形,它是一个深度均匀的图形,深度均为5.
橘色的多边形为第二个多边形,它的深度是不均匀的,在第一个多边形的基础上,更新颜色信息。
如果某个像素点已经是紫色了,但是橘黄色多边形离视点更近,则将其用橘黄色多边形替换。如果橘黄色多边形离视点更远,则该点的颜色不变。
如果某个像素点还没有颜色,则将其绘制为橘黄色。