1 需求实现

粒子系统ParticleSystem 中介绍了粒子初始化、粒子发射、发射器形状、渲染器、碰撞、子发射器、拖尾等粒子系统的基本用法,本节将基于粒子系统实现烟花特效。

​ 实现需求如下(资源见→Unity3D烟花特效预设体文件):

  • 粒子发射阶段,只有一个粒子(记为 Spindle 粒子系统),其速度递减,颜色随机,有拖尾特效;
  • 粒子上升阶段,在 Spindle 周围有环绕的粒子(记为 Around 粒子系统),其速度随机,颜色随机,方向随机;
  • 爆炸阶段,粒子向四周爆炸(记为 Blast 粒子系统),其速度随机,颜色随机,有拖尾特效。

​ 综上,需要设计 3 个粒子系统(在 Hierarchy 窗口右键,依次选择【Effects→Particle System】,可以创建一个粒子系统),如下:

​ 其中,Spindle 粒子系统与 Around 粒子系统并行发射粒子,Spindle 粒子系统与 Blast 粒子系统串行发射粒子。

​ 烟花在黑夜中燃放更好看,因此,需要将相机的 Clear Flags 属性设置为 Solid Color,Background 属性设置为黑色,如下:

2 Spindle 粒子系统设计

1)初始化模块

2)发射模块

3)发射器形状模块

​ 4)生命周期内粒子速度变化模块

​ 速度系数由 1 变化到 0。

5)子发射器模块

5)拖尾模块

7)渲染器模块

​ 其中,Mi 材质球由一个 “米” 字图片生成,如下:

​ 注意: “米”字之外无像素,不是黑色填充,图片需要保存为 png 格式。

​ 材质球的 Shader 属性需要设置为 Particles/Additive,如下:

3 Around 粒子系统设计

1)初始化模块

2)发射模块

3)发射器形状模块

4)生命周期内粒子大小变化模块

5)生命周期内方向变化模块

6)渲染器模块

4 Blast 粒子系统设计

1)初始化模块

2)发射模块

3)发射器形状模块

4)生命周期内粒子大小变化模块

​ 大小系数由 1 变化到 0。

5)拖尾模块

6)渲染器模块

5 运行效果

​ 声明:本文转自【Unity3D】基于粒子系统实现烟花特效

【Unity3D】基于粒子系统实现烟花特效的更多相关文章

  1. Unity3d 基于物理渲染Physically-Based Rendering之最终篇

    前情提要: 讲求基本算法 Unity3d 基于物理渲染Physically-Based Rendering之specular BRDF plus篇 Unity3d 基于物理渲染Physically-B ...

  2. CSS3实现烟花特效 --web前端

    烟花特效,比较简单,直接贴代码了…… <!DOCTYPE html><html lang="en"><head> <meta charse ...

  3. [原]Unity3D深入浅出 - 粒子系统(Particle System)

    粒子系统是在三维空间渲染出来的二维图像,主要用于烟,火,水滴,落叶等效果.一个粒子系统由粒子发射器.粒子动画器和粒子渲染器三个独立的部分组成. Unity中自带了一些粒子效果,在Assets>I ...

  4. Unity3D 基于预设(Prefab)的泛型对象池实现

    背景 在研究Inventory Pro插件的时候,发现老外实现的一个泛型对象池,觉得设计的小巧实用,不敢私藏,特此共享出来. 以前也看过很多博友关于对象池的总结分享,但是世界这么大,这么复杂到底什么样 ...

  5. 10款web前端基于html5/CSS3应用特效

    1.jQuery百叶窗效果焦点图 多种百叶窗动画方式 对于百叶窗动画效果,我们介绍的不是很多,目前就介绍过一款CSS3百叶窗图片切换.这次要给大家带来一个基于jQuery的多种百叶窗动画效果焦点图,焦 ...

  6. [Unity3D]Unity3D游戏开发之刀光剑影特效的实现

    大家好,我是秦元培,欢迎大家关注我的博客,我的博客地址是blog.csdn.net/qinyuanpei. 我实在不明确有的人为什么不喜欢武侠/仙侠类游戏,也许是因为武侠/仙侠类游戏身上被永远烙上的国 ...

  7. Unity3D 基于ShadowMap的平滑硬阴影

    前言 传统的ShadowMap在明暗边缘处都会有很难看的锯齿,因此一般得到的结果会比较难看,常规的解决办法都会在使用ShadowMap渲染阴影的时候通过背面剔除把这种缺陷隐藏掉,最后剩下一个影子.但是 ...

  8. 墙裂推荐4款js网页烟花特效

    以下是几款网页特效和一款软件: http://keleyi.com/keleyi/phtml/jstexiao/1.htm  http://keleyi.com/keleyi/phtml/jstexi ...

  9. GJM : Unity3D - UI - UI边缘流光特效小技巧 [转载]

    感谢您的阅读.喜欢的.有用的就请大哥大嫂们高抬贵手"推荐一下"吧!你的精神支持是博主强大的写作动力以及转载收藏动力.欢迎转载! 版权声明:本文原创发表于 [请点击连接前往] ,未经 ...

  10. JavaScript实现HTML5烟花特效

    烟花效果如下(请使用支持HTML5的浏览器查看):点击这里查看效果:http://keleyi.com/keleyi/phtml/html5/14.htm 源代码如下: ;}</style> ...

随机推荐

  1. anaconda navigator启动时一直卡在 loading applications 页面解决方法

    anaconda3\Lib\site-packages\anaconda_navigator\api\conda_api.py 行1364 把 data = yaml.load(f) 改为 data ...

  2. ANSYS Electronics Suite 19.2下载地址及其安装教程

    ANSYS Electronics Suite 19.2下载安装教程 1.下载地址https://getintopc.site/ansys-electronics-suite-19-2-free-do ...

  3. Leecode-每日一题-题目448. 找到所有数组中消失的数字

    今天重新开始刷leecode 为了致敬我的偶像,还是选择把做题笔记发在博客园上 题目448. 找到所有数组中消失的数字 给定一个范围在  1 ≤ a[i] ≤ n ( n = 数组大小 ) 的 整型数 ...

  4. 关于Java字符串、字符与数字之间的相互转换

    一.数字转字符串 //将整个数字转化为字符串 int i=456; //方法一 String str1=Integer.toString(i); System.out.println(str1); / ...

  5. mysql查询mapper返参类型为List

    List<String> lists = mapper.select(); 返参类型为List,查询没有数据的时候,lists不会为null,lists.size() 为 0.

  6. Date 对象 定时器

    日期对象 Date 概述:date是表示日期时间的对象,主要的方法是获取时间和设置日期时间. date声明 使用new Date声明 有4种方式 1.不设参数 是获取当前的本地时间 var date ...

  7. @Conditional注解分析,SpringBoot自动化配置的关键

    基于SpringBoot 2.1.5.RELEASE分析 @Conditional系列注解 @Conditional系列注解是SpringBoot自动化配置的核心要点之一,主要用于设定条件,在达到一定 ...

  8. 4组-Beta冲刺-5/5

    一.基本情况 队名:摸鲨鱼小队 组长博客:https://www.cnblogs.com/smallgrape/p/15608986.html github链接:https://github.com/ ...

  9. 4组-Alpha冲刺-5/6

    一.基本情况 队名:摸鲨鱼小队 组长博客:https://www.cnblogs.com/smallgrape/p/15563236.html 小组人数:8人 二.冲刺概况汇报 组长:许雅萍 过去两天 ...

  10. tp 获取器的使用中应该怎么append 自定义数据

    $data = model('organization_area')->getListByNoPage($where, 'create_time asc');foreach ($data as ...