Simon Trümpler - VFX Sketchbook


  • Improved sparkles
    • They can better translate from “card world” to “real world” now (see tutorial)
    • More sparkles are pushed out when dragon lands in the “card world”
  • First Dragon Breath Tests
    • Instead of using NormalizedAge I’m calculating the distance to the ground and use the DistancedTraveled property from the particles to calculate DistancedTraveledNormalized to scale and colorize the particles. I also kill the particles if they reached the currently max distance to the ground to avoid that they are visible too long.
    • The particles have a little “delay” as it takes a bit to travel from mouth to ground…I need to find a solution how I can sync this with the impact particle system which is placed by blueprint based on mouth orientation.



The Renderer Visibility Tag is a really handy attribute especially when you want 2 particles to move the exact same way. This reminds me that back in Unity, I would write a script to generate a random int value and assign the variable to the emitter seed of different particle systems for the similar effect. However in UE Niagara, the emitter random seed is not scriptable, so it’s kinda like a constant parameter? Perhaps it’s just that they have different design philosophies.


I answered in the youtube video, but I had more issues with this since a coworker needed to tweak a material I was modifying from sequencer so I tried another half-baked solution.

What I did was to create a Blueprint where I set the material instances to the meshes and each time I wanted to modify the materials I would pause the sequencer and hit the “Reset Instance Changes to Blueprint Default” option of the actor so it would grab the original materials again.

This is still far from ideal, just another workaround for the same problem, let’s hope someone finds a better way or Epic implements an alternative approach, like animating the Custom Primitive Data directly form Sequencer. I didn’t try all the solutions suggested in the comment section of your video though.

1 Like

Update: Iteration on Dragon Breath




  • Improved Dragon Breah
  • Added Impact + Burned Ground “Decal”



  • clean shader
  • Fire Material Example
  • fix impact direction
  • add swoosh when card flips second time
  • rework sparkles
  • card impact on ground
  • pop-out vfx when dragon leaves card
  • add trails coming out of card
  • improve turn swoosh
  • improve swoosh-trails (better material, add elements like sparkles)
  • improve card environment
  • bigger fire breath impact
  • “light source”-particle to impact
  • add cam shake when spitting fire
  • add sparkles to glowing border
  • clean project


Fx when dragon pops out of

Fx when card drops down

Burning fire on ground:



I like this fire on earth and the fiery stream. Сool job Simon.

1 Like

I gave the class and it went very well. Total length was 2.5h. Approx. half of it was a breakdown of the project (looking at the setup of the project and how everything was animated) and a look on how to use the super duper shader to create different materials very quickly.
The other half was used to actually build an example shader. This resulted in a nice little flame-vfx without the need of flipbooks but more importantly: It thaught the main techniques of the super duper shader and will help that people can open the super duper shader and actually understand whats going on in there.


  • Test with some magic trails coming out of the card