效果

在之前的可视域分析升级了一下 ~

可以支持动态修改

实现

这里重新写了一个Primitive

需要修改ShadowMapShader.js

1
2
3
4
5
6
7
8
9
fsSource +=
' if(visibility>0.5) \n' +
' { \n' +
' gl_FragColor = vec4(' + visiblyColor.red + ',' + visiblyColor.green + ',' + visiblyColor.blue + ',' + visiblyColor.alpha + '); \n' +
' } \n' +
' else{ \n' +
' gl_FragColor = vec4(' + invisiblyColor.red + ',' + invisiblyColor.green + ',' + invisiblyColor.blue + ',' + invisiblyColor.alpha + '); \n' +
' } \n' +
'} \n';