ScrollRect裁剪ParticleSystem粒子(UGUI)(一)
UGUI的ScrollRect可以正确的裁剪包括Image,Text等UGUI自身的组件,但是不能正确裁剪ParticleSystem粒子,这给客户端和美术人员造成了很大麻烦,今天我们就通过修改shader的方式,解决裁剪问题 环境搭建 创建新的场景,添加ScrollView,并将子对象Viewport的Mask替换成Rect Mask 2D(重要) 创建UI摄像机,修改Projection为Orthographic,Culling Mask仅选择UI 修改Canvas的RenderMode为Screen-Space Camera,并绑定2中创建的摄像机 在ScrollView的content下添加一个ParticleSystem 运行 可以看到此时,粒子从ScrollView的边缘穿透出去 修改Unity原生particle shader 下载Unity对应版本 shader代码 (如果链接失效,可以直接去Unity官网找下载),我使用的是unity5.5.1版本 打开并定位到Particle Add.shader文件,复制一份命名为UIParticleAdditiveClip.shader保存到Asset文件夹中 修改UIParticleAdditiveClip.shader中的shader名称为“Custom/UI/Particle_Additive_Clip”