成都网站整站优化,山网站建设,wordpress是什么东西,如何用php数据库做网站在Unity使用Mask是剪裁不了粒子特效的#xff0c;之前有想过RenderTexture来实现#xff0c;不过使用RenderTexture不适合用于很多个特效#xff0c;因为RenderTexture依赖Camera的照射#xff0c;如果在背包中每种道具都有不同的特效#xff0c;那使用RenderTexture则需要…在Unity使用Mask是剪裁不了粒子特效的之前有想过RenderTexture来实现不过使用RenderTexture不适合用于很多个特效因为RenderTexture依赖Camera的照射如果在背包中每种道具都有不同的特效那使用RenderTexture则需要不同特效都用一个Camera。明显是不合适的。
先看下剪裁不了的显示。 解决办法在粒子特效的shader中添加剪裁的代码。可以参考官网的说明https://docs.unity3d.com/cn/2019.4/Manual/SL-Stencil.html
添加下列代码
Shader UI/Default
{Properties{_StencilComp (Stencil Comparison, Float) 8_Stencil (Stencil ID, Float) 0_StencilOp (Stencil Operation, Float) 0_StencilWriteMask (Stencil Write Mask, Float) 255_StencilReadMask (Stencil Read Mask, Float) 255_ColorMask (Color Mask, Float) 15}SubShader{// ...Stencil{Ref [_Stencil]Comp [_StencilComp]Pass [_StencilOp]ReadMask [_StencilReadMask]WriteMask [_StencilWriteMask]}// ...}
}
展示一下剪裁后效果