VFX Assets

Introduction

The following work is to demonstrate my skills in Unity VFX Graph, mainly in four skill sets: Particle Effects, Mesh Effects, SDF and User Interaction.

Pokemon Fireworks

It is a stylized firework that supports arbitrary patterns (not just Pokemon!) based on point cache. Artists can easily adjust all properties including the pattern, color, speed, time of explosion and so on; and apply them in their work. It mainly made up of four particle systems:

  • the main firework
  • the trail
  • the explosion pattern
  • the explosion trail
Step Breakdown
Add Firework Base
Add Firework Trail
Add Point Cache
Add Explosion Physics

Particle Mesh

It is a very common effect in games and actually a quite advanced feature combining mesh, rendering, animation and particles. Using my workflow, artists can easily build this effect for all types of meshes and models and adjust the color, animation and duration. The main components are:

  • Mesh Rendering
  • Mesh Animation
  • Parameterization & Control
  • Particle Trails
Step Breakdown
Add Model and Animation
Add Rendering
Add Decay Controller
Add Particles

Signed Distance Field (SDF)

Signed Distance Field is an advanced but very useful mathematical representation for objects. We can achieve various stunning visual effects with high performance using SDF. The famous GI solution:Limen in UE5 uses SDF for pseudo-ray tracing. Here we demo a simple but appealing visual effects made in SDF. The main components are:

  • SDF Baking
  • Sampling Particle Position from SDF
  • Force Field over SDF
  • Color and Trail sampled from SDF
  • SDF Transformation
Step Breakdown
Create SRC SDF
Create target SDF
Sample Position from SDF
Sample Color from SDF
Sample Force from SDF
Add Trails
Add SDF Transformation

Interactive VFX

Sometimes our VFX needs to have interaction with user inputs. In the demo it shows a lightening ball following the mouse position from the user in real time.

  • Particle Interaction
  • Trail Interaction
  • Pseudorandom Functions (PRF) for Lightening
Step Breakdown
Create Constant Particle as core
Set up mouse tracking
Create Lightening Pattern with PRF
Add lightening trace