首先要知道为什么粒子系统不能显示在UI上。

原因是,Canvas的默认渲染模式是Screen-Overlay,也就意味着,Canvas在屏幕空间中渲染,会显示在场景的最上方,遮住除UI外的一切物体(粒子系统是在世界空间中渲染的,受摄像机影响)。此时Canvas的渲染不受Camera影响,场景中没有摄像机也能正常渲染。Canvas的大小随着分辨率和视口的改变而改变。

所以我们必须修改Canvas的渲染模式(Render Mode)。还有两种模式:Screen-Camera和World Space。

Screen-Camera模式下:需要给Canvas指定一个渲染摄像机,渲染的过程受摄像机的参数影响。此时Canvas相当于距离摄像机一定距离的一个Plane。UI大小和到摄像机的距离无关,而是随着摄像机的Field of View的变化而变化。还可以有透视/平视效果。

因为此时Canvas是距离摄像机一定距离的Plane,因此,如果有物体比这个Plane距离摄像机更近,就会显示在Canvas之上,反之,则显示在之下。 假如我们把粒子系统拖到Canvas下面,成为它的子物体,把Local Position归零,就可以看到粒子系统显示在UI之上了。把它的Z轴修改地距离摄像机更近一点当然也是可以的。(这样做,会把粒子系统的Transform变成RectTransform,不过这个对它的位置没有没有任何影响,只是表示方式变了而已)

World Space模式下:Canvas就相当于场景中的一个Plane,只不过Canvas使用的依然是Rect Transform而不是Transform。

具体操作如下:
1.新建一个UI渲染相机,需要修改的地方有如下两点(如果是2D游戏,也改第三点):

clear flags改成Depth only是为了让该摄像机的图像与主摄像机的图像融合。
culling mask是渲染筛选
projection是放映方式

2.将Canvas(UI层)属性渲染模式改为Screen-Camera,然后把粒子系统也的layer层改为UI也放入Canvas中。

3.将粒子系统中的sort layer改为高层,以免被游戏中背景物体遮挡。

然后就大功告成了,如下效果:
参考博客:https://blog.csdn.net/qq_36622009/article/details/79966233

【Unity】如何让粒子系统显示在UI上?相关推荐

  1. Unity中将3D模型显示在UI上或者显示在UI前面

    标题 Unity中将3D模型显示在UI上或者显示在UI前面 一.将3D模型显示在UI上-使用RawImage和Render Texture组合实现效果 1.创建一个RawImage控件 2.创建一个R ...

  2. 【Unity】如何让粒子系统显示在UI上呢?

    首先要知道为什么粒子系统不能显示在UI上. 原因是,Canvas的默认渲染模式是Screen-Overlay,也就意味着,Canvas在屏幕空间中渲染,会显示在场景的最上方,遮住除UI外的一切物体(粒 ...

  3. Unity的ScrollRect如何裁切粒子特效,以及如何使粒子特效显示在UI上

    在功能开发中,有时候为了更好的效果会在UI上添加一些特效,比如在头像框上增加一个圆环的粒子特效,但由于粒子和UI的渲染方式有些不同,导致会出现UI和特效之间穿插,显示上不理想.并且如果在ScrollR ...

  4. Unity中实现粒子效果显示在UI上

    一:为什么默认模式下粒子效果不能显示在UI上 因为Canvas的默认渲染模式是Screen Space-Overlay,这种模式下的Canvas在屏幕空间中渲染,会显示在场景的最上方,也就是说一切UI ...

  5. Unity初级案例-愤怒的小鸟:六:17把粒子系统显示在UI之前+18让星星一颗一颗的显示+19添加暂停动画

    目录 一.目的 1.想知道:愤怒的小鸟:如何制作 2.做好学习笔记,方便下次查看 二.参考 1.SIKI学院 三.注意 1.版本 操作:1:17把粒子系统显示在UI之前 1.知识介绍 1.设置 把粒子 ...

  6. Unity读取图片并显示到UI中

    Unity读取图片并显示到UI中 方法一:将图片转换成字符串 代码 解释 效果图 方法二:将图片转换成字节数组 代码 解释 效果图 对比 在进行Unity开发时,经常会遇到将读取磁盘中图片显示到UI上 ...

  7. UNITY把3D模型显示在UI层级上的思路

    一般UI是处理于显示最高层级的, 因此这里的做法是 使用镜子效果,做镜子可使用renderTexture 然后启用一个摄像机对renderTexture进行数据填充, 然后在ui上使用Raw Imag ...

  8. unity 将3D物体显示在UI前面(保姆级 超容易)

    将3D物体放置在UI界面 在网上看了一些教程,这篇文章就是在前人的基础上稍加简化. 总结下来,其实只需要: 加一个相机 加一个Render Texture 加一个Raw Image 接下来是详细步骤 ...

  9. Unity发布PC平台,接入微信开放平台网页应用,扫码登录不拉起浏览器直接显示二维码在UI上

    文章目录 一.前言 二.登录微信开放平台,申请网页应用 三.抓取授权二维码原理 四.测试 五.核心代码 六.补充:如何知道用户扫码成功 一.前言 Unity发布PC平台,如果在PC平台想要使用微信登录 ...

最新文章

  1. Pytorch自定义Loss
  2. ASP.NET自定义控件组件开发 第一章 第二篇 接着待续
  3. XmlDocument类
  4. 智能一代云平台(二十九):通用mapper的改造
  5. AS3多人游戏开发—同步人物移动2
  6. miui怎么用第三方图标包_Burn安卓手机图标包 手机美化从图标开始
  7. JS初学者使用jQuery开发一款弹幕射击游戏
  8. 《你好啊,区块链!》读书笔记
  9. 免费无损高品质音乐下载器V3.5
  10. 关于M0、M1、M2货币最近所学
  11. 南航率先启用“手机登机”
  12. [Leetcode/Python3] 第204场周赛题解
  13. win10系统分区方案教程
  14. 汉明码(计算机组成原理)没听课也能懂
  15. 新建好的网站如何被搜索引擎(Google和百度)收录?
  16. 算法笔记——基数排序
  17. C++类重载 operator()
  18. 海尔集团CEO张瑞敏演讲语录
  19. SuperMap iClient for OpenLayers图层组控制实现方法
  20. 宝宝吃母乳的一些的谣言辟谣

热门文章

  1. DR-CAN的动态系统建模与分析学习笔记(3)拉普拉斯变换的收敛域(ROC)与逆变换(ILT)
  2. docker升级至指定版本
  3. 用Python绘制棒棒糖图表
  4. Overlay网络与Underlay网络
  5. ajax同步请求 和 表单验证submitHandler
  6. $.cookie( ) 用法详细解析
  7. 中高端投影仪推荐,当贝F3 Air成4000元最值得买的投影仪
  8. 痛苦网安学习之RootKit
  9. php 数据图形,PHP生成数据流GIF和PNG透明图形教程及源代码
  10. 做好本地门户网站在于扬长避短走出自己的特色