Enhancing player experience with VFX


Hi! I'm Ian Lee, one of the artists working on this project, Iconoclast! I am responsible for environments, prop creation, and VFX. Today I am going to be showing off the VFX created for this project, how they were created, and how they improve player experience.


First off, let's talk about fire. How are we supposed to light an interior medieval-like setting? With fire! Of course, throwing down a simple point light would be easy, but we have to make it look like fire. Introducing: Unity Particle systems!

Making the fire look great requires four different particle systems, each contributing to a specific part of the fire. 


We have:

Fire  ADD: creates the "white-hotness" of the fire at the center

Fire ALPHA: creates the main flames

Glow: gives the fire some bloom and eminence.

Embers: emits small particles to simulate fire embers

Smoke (Optional): for ambience in larger fires. In level one, the player must past over the fire, so smoke is added to create an atmosphere from the fire.

Sconce Model by Samantha Burke

The fire particle system itself is pretty simple. Start out with large particles, and slowly turn from the color orange > red > fade out to black.

Now that we've talked about fire, let's talk about an important game mechanic. Breakable objects.

How is the player supposed to know what can be broken? 

To make the object look broken, while still utilizing the textures of the object, I created a modular shader. This shader allows the user to plug in textures, and instantly have a parallax crack texture overlaid it. By plugging in the textures of the object to the shader, as well as a monochromatic cracked texture, we can make the object look broken, while also 3D. Here is what the shader graph looks like:


You can also have the cracks slightly animated in order to bring attention to the object. In the case of breakable objects, I attached a sine wave function to the variable that controls how deep the parallax goes. I also utilized the same method in order to make the tablets slightly glow in and out.


How do we make an object "break"? 

Pretty simple actually! Just requires an exact mimic of the object - just shattered. Creating the shattered version of the object was done in blender with the cell fracture tool.

Now, to actually make it break, all we have to do is as soon as the player comes into contact with the breakable object, instead of outright deleting the object, we replace it instantly with the fractured version. Mix in a little rigid bodies, colliders, and physics, and you will have the pieces of the object fly when the player makes contact. Pretty cool.


This week we are turning in the Beta, and things are shaping up really nicely. The team and I are really proud of what we've made, and are looking forward to polishing and distributing. I hope you enjoyed this deep dive into the VFX of Iconoclast and thank you for reading!


Get Iconoclast

Leave a comment

Log in with itch.io to leave a comment.