使用Unity制作2D游戏时,给UI添加粒子效果

环境 unity 2019.1.8f1

在有UI界面的2D游戏中,若直接添加粒子系统,则会因为渲染层级的关系被遮挡,从而无法在游戏场景中显现。
解决方法:

  1. 更改Canvas设置
    Canvas—>Canvas—>Render Mode—>Screen Space - Camera
    将Main Camera拖动至Render Camera
  2. 新建粒子系统
    GameObject—>Effects—>Particle System
  3. 新建一个材质 material,更改材质的shader为Particles/Standard Unlit(不受光材质)
    Rendring Mode —> Cutout
    贴图Texture Type—>Sprite(2D and UI)
    将贴图拖动到material—>Maps—>Albedo
    将material拖动到Particle System—>Renderer—>Material
  4. 更改参数
    在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
效果预览
在这里插入图片描述

Canvas中三种Render Mode

  • Screen Space - Overlay
    UI置顶,UI永远出现在所有摄像机的最前面
  • Screen Space - Camera
    需要提供一个UICamera,游戏特效物体位置位于Canvas和摄像头之间
    若要粒子显示在UI之前,调整粒子的 Order in Layer大于Canvas

版权声明:本文为xx_yan原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。