How to create character-related VFX

One of the most important aspects of character-related FX systems, like a stream of drool hanging from a dog’s mouth, is control. More often than not, animators will want to be able to control the effect without needing a degree in fluid simulations. This set-up combines nCloth and nParticles for an animator-friendly system.

  • Download the source files for this tutorial here
  • Read all our Maya articles here

The approach is simple. For the drip that hangs suspended from the dog’s mouth, I decided to use nCloth because of its easy-to-control dynamic properties, such as Stretch, Stickiness and Bend Resistance. For the drips that come off of the end of the stream, when the dog is moving its head and the drool is whiplashing around, I decided to use nParticles emitted from the nCloth surface.

Starting inside the dog's mouth, draw a curve that is roughly the length you want your drool stream to be. Rebuild the curve with 30 or 40 spans - so that your final surface can deform freely - and a parametric range of 0 to 1. The nParticles will move along the final surface according to its parameterisation, and values from 0 to 1 will help simplify things. Now draw a profile curve, and extrude it along the first curve to produce a poly mesh. Scale the profile curve down to about 0.01 to make your extruded surface very skinny. This will cause your emitted nParticles to travel in a very tight stream.

Now convert the extruded surface into nCloth. The stream of drool needs to conform to the shape of the dog’s mouth, so convert the dog's teeth and gums, etc, into passive colliders. It's not a bad idea to create a custom piece of geo for just the collision area to reduce simulation time. Advance the simulation a few frames, to allow the nCloth to conform to the shape of the collision objects and then set the initial state. Finally, apply an nCloth Transform constraint to anchor the nCloth to the dog's mouth.

Once you have the nCloth hanging from the dog's mouth it’s time to start adjusting the nCloth Settings. I found that the default settings were pretty close to what I needed, but reduced Stretch Resistance to 3, and Compression Resistance to 10. Critical attributes, such as Rest Length Scale, can be connected to custom attributes on a Locator, to provide easy control to animators.

Once you have the drip swinging below the dog's chin, it's a good idea to cache the nCloth. If all you wanted was drool that dangled from the dog's chin, but never detached, you could just render your nCloth surface.

This article originally appeared in 3D World issue 173.

Liked this? Read these!

Thank you for reading 5 articles this month* Join now for unlimited access

Enjoy your first month for just £1 / $1 / €1

*Read 5 free articles per month without a subscription

Join now for unlimited access

Try first month for just £1 / $1 / €1

The Creative Bloq team is made up of a group of design fans, and has changed and evolved since Creative Bloq began back in 2012. The current website team consists of eight full-time members of staff: Editor Georgia Coggan, Deputy Editor Rosie Hilder, Deals Editor Beren Neale, Senior News Editor Daniel Piper, Digital Arts and Design Editor Ian Dean, Tech Reviews Editor Erlingur Einarsson and Ecommerce Writer Beth Nicholls and Staff Writer Natalie Fear, as well as a roster of freelancers from around the world. The 3D World and ImagineFX magazine teams also pitch in, ensuring that content from 3D World and ImagineFX is represented on Creative Bloq.