环境 unity 2019.1.8f1
在有UI界面的2D游戏中,若直接添加粒子系统,则会因为渲染层级的关系被遮挡,从而无法在游戏场景中显现。
解决方法:
- 更改Canvas设置
Canvas—>Canvas—>Render Mode—>Screen Space - Camera
将Main Camera拖动至Render Camera - 新建粒子系统
GameObject—>Effects—>Particle System - 新建一个材质 material,更改材质的shader为Particles/Standard Unlit(不受光材质)
Rendring Mode —> Cutout
贴图Texture Type—>Sprite(2D and UI)
将贴图拖动到material—>Maps—>Albedo
将material拖动到Particle System—>Renderer—>Material - 更改参数
效果预览
Canvas中三种Render Mode
- Screen Space - Overlay
UI置顶,UI永远出现在所有摄像机的最前面 - Screen Space - Camera
需要提供一个UICamera,游戏特效物体位置位于Canvas和摄像头之间
若要粒子显示在UI之前,调整粒子的 Order in Layer大于Canvas