一 前言
这是一个Unity引擎中比较强大的粒子系统,由于引入了GPU计算,使得VFX可以同时计算数以万计的粒子运动和受力情况,因此VFX可以整出很多花活。
资源链接 | ||
---|---|---|
官方文档 | https://docs.unity.cn/Packages/com.unity.visualeffectgraph@13.1/manual/index.html | - 英文版,目前没有中文翻译,但是有节点的解析; - 这玩意最好还是当词典用; |
magic ball | https://www.bilibili.com/video/BV1Wf4y147go?spm_id_from=333.337.search-card.all.click | - 字幕纯垃圾,英文能听清楚,建议听原文; |
magic ball lily | https://www.bilibili.com/video/BV1bB4y1w7qe/?spm_id_from=333.788.recommend_more_video.-1 | - 另一种实现方式; |
魔法图书馆 | https://www.bilibili.com/video/BV1K64y1U7D8/?spm_id_from=333.788.recommend_more_video.0 | - 粒子和角色互动; |
课上链接 (待验证) |
- 啊对对对 |
|
花瓣飞舞 | https://www.raywenderlich.com/20964535-making-hearts-fly-with-unity-vfx-graph#toc-anchor-029 |
二 原理解析
2.1 基本原理
1)纵向逻辑
这个部分指粒子的生命周期,即 生成-实例化-每帧如何动-输出颜色 这样一个过程。
2)横向逻辑
指如何通过简单的数学计算或者连连看确定参数数值,以此控制粒子的不同样态。
3)名词解释
- System:下面几个contexts相加成为一个system;
- Contexts:每个context各司其职,分别掌管实例化、生成、每帧运动、外观中的一项;
- Blocks:普通的node节点,拥有一种特定的能力,用于控制粒子的某种性质;
- Operators:运算符,比如上图的乘法;(可以理解为在框外面的自由运算符,除了算数运算符外,还有逻辑运算符、时间获取等等……)
2.2 节点翻译和记录
Turbulence 湍流
用于施加一个力,让粒子相对自然地运动。三 效果实例
3.1 magic ball
1)效果解析
这个效果有三个部分:金色拖尾粒子围绕球心和球面做往返运动、中间球体随着时间呼吸亮暗、周围粒子在球体周围受噪声图扰动而形成不规则的运动。2)抄作业素材
3)优化历程
下图一个是教程的成品图,一个是我自己做的效果,能看出来效果本身还是差了很多,接下来我将对这个效果进行优化。to do…