简单方式处理特效UI夹层
来源:互联网 发布:项目开发计划软件 编辑:程序博客网 时间:2024/05/01 15:15
为了增加界面效果的美观度,我们经常需要在面板上面添加粒子效果,但是粒子效果属于 3D 对象,以前我们做过在 NGUI 面板上面显示 3D 模型(查看详情),但是粒子效果又不等同于 3D 模型,他们在 NGUI 上面显示还是有一点点的区别的,主要原因是粒子效果的 RenderQueue 比较特殊。
搭建测试环境,我们先来看看例子中使用的粒子效果在 3D 视图中的效果,如图:
下面建议一个 NGUI 的面板,再次观察效果,这时候完全看不到粒子效果了,如图:
这是因为 NGUI 的 Camera 的 Depth 要大于 Main Camera 的 Depth,如图:
这时候我们把粒子效果拖到 NGUI 对象的 UISprite 对象中,其中需要注意的要设置粒子效果的 Transform 的 scale 属性足够大,因为 UIRoot 的缩放比较非常的小,另外粒子效果的 Layer 要为 UI 层,如图:
现在运行游戏,粒子效果不能很好的显示,或者说显示的并不是我们期望的那样,这个时候修改粒子效果的 Z 坐标有时候也能达到预期的效果,但是这种办法比较麻烦,我们使用另外的办法,如图:
我们选择图中的 Panel(PhysicsPanel),然后在 Inspector 选项中找到 UIPanel,选择 EditScript 选项,如图:
然后我们在 UIPanel.cs 的中间位置,找到 int rq = 3000; 代码,修改 rq 的值为 3000 以下,这儿我们修改成 1000,如图:
这时候我们运行游戏,粒子效果的显示就是我们期望的了,如图:
到这儿我们还有个问题没有解决,就是如果显示多个面板,我们期望另一个面板在上面的时候,能盖住粒子效果,但现在还不能做到,我们新建立一个 UIPanel,观察效果,如图:
问题出现了,那就要去解决,现在我们修改新建立的 UIPanel(OtherPanel)的 Render Q 属性为 Start At 属性,把里面的值设置为 3000 以上,如图:
最后再运行游戏,这样多个面板的显示粒子效果也顺利解决了,如图:
- 简单方式处理特效UI夹层
- Bitmap的简单特效处理
- UI 特效
- UI特效
- 数组的简单处理方式
- 夹层的生存逻辑
- 圈圈套圈圈(夹层)
- QT UI特效
- android UI 特效
- Android UI设计特效
- Android开发UI特效
- 关于Android 特效 ui
- UI特效文字飞
- UGUI-UI添加特效
- Android UI特效集锦
- 安卓中炫酷的UI特效
- android 5.0UI特效
- UI特效层级管理
- JAVA8 十大新特性详解
- css sprites
- java第一章
- poj 3624 Charm Bracelet
- LeetCode:Fraction to Recurring Decimal
- 简单方式处理特效UI夹层
- HDU 2546 饭卡 (动态规划01背包)
- 关于ssh报错:Agent admitted failure to sign using the key.
- mysql 时间字段自动更新
- 常用数学符号的 LaTeX 表示方法
- 本科教育忽略的黄金C++<7> 无序容器
- 是否可以从一个static方法内部发出对非static方法的调用?
- 半年总结——2015下
- Spark源码分析之九:内存管理模型