Continuing our Visual Effects building blocks lessons, today we will use a dynamic parameter module in Cascade to control the values of the material functions we created in the previous lesson at runtime.
Dynamic Parameters are a powerful way to control a material behavior over the lifetime of an effect. With this technique, one can modify any material parameter at runtime. Dynamic Parameters are even more powerful when coupled with a Blueprint and can be used to modify a material in a Particle System based on game conditions.
Obviously, I can already think of a few things that this might be good for, but what are some specific cases that YOU would use this for in a game? I always like to hear the original uses of interesting mechanics from the people who come up with them.
In the case I outline here using DepthFade, lets say your particles start out small, and fairly opaque. You want them to sit tight to the ground, so they feel integrated, especially if they are shadow casters. But as they get larger and dissipate, you want that intersecting edge to soften…I often use this trick with Depth Fade, a Dynamic Parameter, and a Constant Curve over the life of my particles.
Another commonly used trick would be to add to a Texture Coordinate to explicitly pan a texture over the UVs of a mesh (say you want to move a mask through a volume like in a sword slash, or a lightning strike.) Once you get started with Dynamic Parameters you will quickly find tons of uses for them. I often times run out of them and have to get creative and use the G,B,A channels if necessary. You can see some of this in action in the VFX created for the Effects Cave content which you can get for free in the marketplace. If memory serves me correctly, the fire FX in particular make use of the DynamicParameter.