一 前言

这是一个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
- 粒子和角色互动;
课上链接
(待验证)
image.png
- 啊对对对
花瓣飞舞 https://www.raywenderlich.com/20964535-making-hearts-fly-with-unity-vfx-graph#toc-anchor-029

二 原理解析

2.1 基本原理

1)纵向逻辑

这个部分指粒子的生命周期,即 生成-实例化-每帧如何动-输出颜色 这样一个过程。
image.png

2)横向逻辑

指如何通过简单的数学计算或者连连看确定参数数值,以此控制粒子的不同样态。
image.png

3)名词解释

  • System:下面几个contexts相加成为一个system;
  • Contexts:每个context各司其职,分别掌管实例化、生成、每帧运动、外观中的一项;
  • Blocks:普通的node节点,拥有一种特定的能力,用于控制粒子的某种性质;
  • Operators:运算符,比如上图的乘法;(可以理解为在框外面的自由运算符,除了算数运算符外,还有逻辑运算符、时间获取等等……)

    2.2 节点翻译和记录

    Turbulence 湍流

    用于施加一个力,让粒子相对自然地运动。

    三 效果实例

    3.1 magic ball

    1)效果解析

    image.png
    这个效果有三个部分:金色拖尾粒子围绕球心和球面做往返运动、中间球体随着时间呼吸亮暗、周围粒子在球体周围受噪声图扰动而形成不规则的运动。

    2)抄作业素材

    image.png
image.png image.png image.png image.png
image.png

3)优化历程

下图一个是教程的成品图,一个是我自己做的效果,能看出来效果本身还是差了很多,接下来我将对这个效果进行优化。to do…
image.png