||
Lovell Charts科学绘图软件中的反走样(抗锯齿-Antialiasing)
Lovell Charts (3D plot) 软件的介绍详见前面的博文。
在采用新的像素点着色技术后,Java言语自带的抗锯齿设置随之失效,因此需要对生成的图片进行一定的抗锯齿处理,增加图形的柔顺和光滑感。
Lovell Charts中实施了两种基本的反走样(antialiasing)技术:
1. 对于线段,通过改进Wu Xiaolin算法,实现了对线段颜色和宽度进行控制的同时消除其锯齿。结果与经过反锯齿后的Java画线效果相当。这里Lovell Charts可以绘制各种给定宽度(thickness)的3D线段。线段的颜色可控制为单色、渐变色、颜色谱系覆盖。
2. 对于其他的图像,Lovell Charts采用了Multiple Sampling Antialiasing (MSAA)抗锯齿技术,在MSAA-2X时,可得到可接受的图片反锯齿效果;而当采取MSAA-3X时,结果与Java的自带抗锯齿结果相当。当进一步增加采样倍数时,反锯齿效果改进不明显。
得失:一方面,经过反走样处理,图片边缘和内部的锯齿现象均明显减弱,图片质量显著提升;另一方面,当图片中需着色的基础三角形数量巨大时,计算机在绘制图片会出现明显的迟滞。因为可以方便地修改采样倍数,如果在绘制图像后需要对其进行反复变换(旋转、缩放、平移等),可以先将采样倍数设定为1(即无MSAA),观察后再增大采样数。
需要说明的一点是,对于高性能计算机而言,上述的迟滞应该不会出现;而当计算机具有高分辨率时,上述反锯齿操作也是不需要的! 对游戏玩家而言,可利用Nvidia或AMD自带的各种后处理抗锯齿工具,实现如MLAA, FXAA或SMAA,的反锯齿效果。
下面是几组反走样处理的前后对比图:(任意一组对比图片中,前面一张为待处理图片,后面一张为已经经过MSAA处理后的图片;通过放大图片对比将更加明显)
对于线段的控制示例图如下:(图中的线段具有与相连球体关联的渐变色)
Archiver|手机版|科学网 ( 京ICP备07017567号-12 )
GMT+8, 2024-12-21 22:40
Powered by ScienceNet.cn
Copyright © 2007- 中国科学报社