说一下 用shaderforge的制作方法,
谈谈看完教程后的理解
制作思路是对模板测试Stencil buffe的运用,设定同样的(Ref referenceValue参考值)使shader处于同一个参考值下,然后通过comp对比默认的缓存值,若这两个一致则渲染像素,
想做到这点需要两个shader,一个用来设新缓存等于我们希望的的参考值,也就是个遮罩。另一个需要判断缓存区是否等于参考值,是就显示否就抛弃像素,先设置渲染顺序,从外到内,第一步刷新mask面片的默认缓存为Refc参考值,然后设置角色的缓存等于参考值,由于处在同一个参考值层级下,在角色模型进入缓存区后,角色缓存会等于我们为mask面片设置的新的缓存值,角色生成像素的条件成立,相交区域的像素就会被渲染出来
不只是ASE有设置stencil的相关选项,shaderforge也有,找到左侧blend的最下方开启stencil buffer你就会看到Ref,comp,和pass等关键参数了 |