一、模板的作用
模板缓冲区可用作一般的的每像素遮罩,以便保存或者丢弃像素。【官网】所以有时候需要做图片的遮罩或者是裁剪就可以使用模板
二、实现原理
模板缓冲区通常是每像素 8 位整数。该值可以写入、递增或递减。后续绘制调用可以根据该值进行测试,以确定在运行像素着色器之前是否应丢弃像素。
三、渲染管线的环节
https://www.cnblogs.com/SouthBegonia/p/11564407.html
四、语法
Stencil
{
Ref 1//Reference Value ReadMask 255 WriteMask 255 Comp Always //Comparison Function Pass Replace
Fail Keep
ZFail Replace
Comp comparisonFunction
Pass stencilOperation
Fail stencilOperation
ZFail stencilOperation
}
Ref:表示参考值,当参数允许赋值时,会把参考值赋给当前像素
ReadMask:表示对当前参考值和已有值进行mask操作,默认是不用
WriteMask:写入Mask操作,一般不用
Comp:表示比较方法。那Ref参考值和当前像素缓存上的值进行比较。默认是Always.表示不进行裁剪。
comp的参数数值有如下:
- GEqual - 大于等于
- Less - 小于
- LEqual - 小于等于
- Equal - 等于