分类: LINUX
2012-12-23 21:31:16
在Directx10中,增加了Alpha to Coverage。它是多采样技术的应用,对渲染多个重叠多边形,比如树叶等很有用。Alpha to Coverage是一种Dithering-like Transparent 算法,可以实现一定程度上的OIT(Order-independent Transparent)。
通过设置ID3D10BlendState的属性AlphaToCoverageEnable为true,可以打开alpha to coverage功能。注意:不管渲染状态中多重采样是否开启,如果设置了AlphaToCoverageEnable为true,都会开启alpha to coverage功能。
Alpha-to-coverage利用PS之后像素(rgba格式)的a分量,产生一个n-step(n位,这儿n是采样数量)的coverage mask,这个mask和多重采样的mask进行and操作,决定那个采样会被更新,从而传到下一操作阶段。在这个操作过程中,像素的a值本身并不会有任何改变,所以不会影响下一阶段的alpha blend操作。