前言

今天讲Texture Sheet Animation模块,先前我们已经讲了很多很多模块,通过上述模块可以实现很酷的效果,但是缺了一点真实感。比如说爆炸特效,仅指望单独的粒子来模拟真实的爆炸效果是不现实的,必须要有素材辅助。就像是复杂模型必须要有纹理贴图一样,复杂的粒子效果也要有纹理辅助,且可以是动态纹理(纹理序列)。

目录

  • 前言
    • 本系列提要
  • 一、Texture Sheet Animation
    • 1.播放模式 Mode
      • Grid模式
      • Sprites模式
    • 2.帧采样模式
    • 3.其他参数
  • 二、案例演示
  • 三、总结和参考资料
    • 1.总结
    • 2.参考资料

本系列提要

Unity粒子系统专题博客共分成十二篇来讲解: 【本篇为第五篇】

  • 第一篇(点击直达):粒子系统概述
  • 第二篇(点击直达):主模块
  • 第三篇(点击直达):Emission、Shape模块
  • 第四篇(点击直达):Renderer、Custom Data模块
  • 第五篇(点击直达):Noise模块
  • 第六篇(点击直达):生命周期相关模块
  • 第七篇(点击直达):Collision、Triggers模块
  • 第八篇(点击直达):Inherit Velocity、Sub Emitters模块
  • 第九篇(点击直达):Texture Sheet Animation模块
  • 第十篇(点击直达):Light、Trails模块
  • 第十一篇(点击直达):粒子系统力场(Force Field)组件和External Forces模块
  • 第十二篇(点击直达):案例与应用

前排提醒:本文仅代表个人观点,以供交流学习,若有不同意见请评论留言,笔者一定好好学习,天天向上。

Unity版本[2019.4.10f1] 梦小天幼 & 禁止转载

视频讲解:
【详解Unity】粒子系统(九) | Particle System | Texture Sheet Animation模块讲解 | 哔哩哔哩


一、Texture Sheet Animation

将一组纹理视为动画进行控制播放

1.播放模式 Mode

Mode 选择动画播放模式,Grid、Sprites

Grid模式

将粒子材质分割成多张图片控制播放,比如下面示例的纹理图,通过Tiles属性控制XY轴方向分别切割几份

  • Tiles: 纹理如何被切割
  • Animation: 指定动画帧如何被播放
    • Whole Sheet: 整页是一个动画序列,从左到右,从上到下对整张图片进行动画处理

    • Single Row:每一行代表一个单独的动画序列,单行从左到右产生动画效果

      • Row Mode 行模式 (如上图,每一行都可以作为一个单独的动画序列来播放,这种纹理就很适合使用行模式,而不是整页作为一个动画来播放)

        • Custom 选指定的一行来播放
        • Random 随机选取一行
        • Mesh Index 根据分配给粒子的网格索引 (Mesh Index) 选择某行,当你想确保特定网格的粒子也使用相同的纹理时,这个选项比较有用

Sprites模式

将渐变效果的纹理图转为精灵图并分割成多份,然后添加到当前模块,粒子系统便会根据这些精灵图来控制播放动画效果


2.帧采样模式

Time Mode 选择粒子系统对动画中的帧进行采样的方式

  • Lifetime : 在粒子的整个生命周期内使用动画曲线对帧进行采样

    • Frame Over Time:横轴是粒子生命周期,纵轴是精灵图索引(随着生命周期依次播放)
  • Speed : 基于粒子速度的采样帧。速度范围指定帧选择的最小和最大速度范围

    • Speed Range: 通过动画将定义范围内的速度重新映射为0-1值。
  • FPS : 根据指定的每秒帧数值对帧进行采样

    • FPS : 指定每秒帧数

3.其他参数

属性 作用
Start Frame 从第几帧开始
Cycles 帧动画序列在粒子生命周期内重复的次数
Affected UV Channels 指定哪些UV通道将被动画化

二、案例演示

思路:通过本篇学到的Texture Sheet Animation模块,其实就足以做出效果了,但是还需要加上一些辅助模块,以求达到最好的效果(当然这个效果也很拉。。。)

1.火星是又单独加了一个粒子系统,改了颜色,加了Noise模块,简要修改了一下参数即可
.
2.火焰本身的光源则是使用了Light模块,Ratio设置为0.5即可,随着火焰粒子的消亡与新生,就可以做出这种忽明忽暗的效果
.
3.火焰粒子加了Color Over LifeTime模块,并没有改动太多,只是在粒子生命周期开始和结束部分加了透明,做到渐显渐隐的效果,更加柔和不突兀
.
4.火焰粒子也使用了Noise模块,不需要位置做变动,在生命周期内变动一下大小和轻微的旋转即可
.
5.最后是主模块和发射器以及Shape模块的设置,初始速度设0,初始大小来一个随机,粒子生命周期设置5-10即可,然后Rate Over Time设置2,每秒发射两个粒子足以,太多看着太满,不真实,Shape没啥设置的,发射粒子的方向朝向天空即可。
.
要是看不懂,请去看本系列的其他几篇有关讲解(。^▽^)


三、总结和参考资料

1.总结

无总结

2.参考资料

[1].Unity官方.官方手册-粒子系统-Texture Sheet Animation module
[2].GAMES Webinar-王希.游戏引擎中的粒子和声效系统 | GAMES104-现代游戏引擎:从入门到实践

详解Unity中的粒子系统Particle System (九)相关推荐

  1. 详解Unity中的粒子系统Particle System (二)

    前言 上一篇我们简要讲述了粒子系统是什么,如何添加,以及基本模块的介绍,以及对于曲线和颜色编辑器的讲解.从本篇开始,我们将按照模块结构讲解下去,本篇主要讲粒子系统的主模块,该模块主要是控制粒子的初始状 ...

  2. 详解Unity中的粒子系统Particle System (三)

    前言 上一篇我们详细讲解了有关主模块的全部内容,已经对粒子系统的基本运作有了足够的了解,本篇就来讲一下被粒子系统默认启用的Emission.Shape.Renderer模块又在粒子系统中扮演着怎么样的 ...

  3. 详解Unity中的粒子系统Particle System (一)

    前言 游戏中很多炫酷效果的背后都离不开粒子系统,比如击中.爆炸.火焰.崩塌.喷射.烟雾等等.Unity也我们提供了强大的粒子系统,模块化的设计,上百个参数供我们调节使用,足以创造出非常震撼的效果了,本 ...

  4. 详解Unity中的粒子系统Particle System (七)

    前言 本篇来讲一讲Collision和Triggers模块,这两个模块主要用于粒子系统与物理世界的交互,一个是碰撞器,另一个是触发器.有了这两个模块我们又可以做出更炫酷的粒子效果啦! 目录 前言 本系 ...

  5. 详解Unity中的粒子系统Particle System (四)

    前言 上一篇我们主要讲解了Shape形状模块,以及Emission发射模块,这是粒子系统中最为重要的两个模块,学会了它们我们足以做出惊艳的效果,比如霰弹枪的发射,蘑菇蛋的冲击波等等.本篇讲的内容依旧重 ...

  6. 详解Unity中的粒子系统Particle System (十一)

    前言 今天讲最后一个模块--External Forces,该模块需要和Force Field组件配合使用,作用是模拟物理的力对粒子的影响.至此,Unity内置粒子系统的最后一块物理砖补齐,理论上来讲 ...

  7. 详解Unity中的粒子系统Particle System (八)

    前言 书接上回,咱们继续讲粒子系统,本篇该说Inherit Velocity和Sub Emitters这两个模块,依旧是重量级选手,特别是Sub Emitters这个模块,有了它,我们的粒子效果可以做 ...

  8. 详解Unity中的粒子系统Particle System (六)

    前言 今天写粒子系统的第六篇文章,讲到这,一些主要模块其实已经讲完了,剩下的就是一些无关紧要或者更加高级的模块了,比如涉及到物理碰撞模块的,涉及到光照系统模块的等等.今天先把剩余无关紧要的模块给讲了, ...

  9. 详解Unity中的粒子系统Particle System (五)

    前言 通过前几篇的学习,我们已经知道了粒子系统的几大基础模块的设置,有了这些模块的知识,我们足以做出惊艳的效果了.今天我们再学一个新的模块,叫做Noise模块,中文译为噪波.噪声.湍流模块等.这个模块 ...

最新文章

  1. Mysql5.5配置主从复制
  2. 防止我们账号被盗的5个方法
  3. bzoj 2119 股市的预测 —— 枚举关键点+后缀数组
  4. [YTU]_2475( C++习题 多重继承)
  5. Akka并发编程——第二节:Actor模型(一)
  6. POJ3751 时间日期格式转换【日期计算】
  7. Python SQLAlchemy --3
  8. Java学习资料汇总(JavaSE+JavaEE+数据库+框架+笔试题+面试题)
  9. jmp连mysql_令人迷惑的ATT的jmp:直接跳转和间接跳转 [转]
  10. 前端程序员怎么面试找工作?前端面试技巧分享
  11. C++_sizeof关键字_实型(也叫浮点型)---C++语言工作笔记011
  12. LINUX SHELL使用while循环数组
  13. 高仿网易评论列表效果之界面生成
  14. 题目:在C语言中,表达式23|2^5的值是()
  15. 【阅读笔记】Deep Mutual Learning
  16. 计算机组成原理 Computer Composition Principle唐朔飞 全书梳理(备忘自用 基本完结)
  17. 哈尔滨工业大学软件构造课程笔记第三章第四节
  18. 用 Ruby on Rails 实现适应各种平台的在线 Office 文档预览
  19. 求业之精,别无他法(曾国藩)
  20. 库存管理习题:第三章

热门文章

  1. 自闭症的白质微观结构研究
  2. android控件显示在最上层,「总是可见的时钟和备忘录」永远显示在屏幕最上层的贴心助手(Android)...
  3. 从逐利到协力 「DAO」阻且长
  4. rog魔霸新锐2022款 评测 怎么样
  5. django Mezzanine uwsgi nginx 配置
  6. 晶飞FLA5000光谱仪.FlaSpec格式解析批处理导出CSV文件
  7. js统计字符串中字母个数以及统计最多字母数
  8. 小狗钱钱跟着钱钱学理财
  9. 计算机组成及linux基础
  10. 内存泄漏导致的浏览器崩溃