走样的定义:
在光栅图形显示器上绘制非水平且非垂直的直线或多边形边界时,或多或少会呈现锯齿状或台阶状外观。这是因为直线、多边形、色彩边界等是连续的,而光栅则是由离散的点组成,在光栅显示设备上表现直线、多边形等,必须在离散位置采样。由于采样不充分重建后造成的信息失真,就叫走样(aliasing)。
osg里面可以使用多重采样来解决这个问题。就是这个函数osg::DisplaySettings::instance()->setNumMultiSamples()。
这个一般用到哪儿里了呢,其实是赋值给了osg::GraphicsContext::Traits里面的samples变量(构造函数里赋值的,所以要在其创建前设置才能有效)。
可以通过下面的方式获取到这个对象:
osgViewer::Viewer()->getCamera()->getGraphicsContext()->getTraits()。
关于这个值的设定,不同的显卡支持的不一样,我的电脑16就支持不了,8能够支持,而且比4的效果高大上很多。