is SOuP healthy?

On the other day I was skimming through vimeo videos of FX and other cool stuff and I saw something I had long forgotten. let me explain:

Back at Escape Studios, when my class was learning about maya fluids we mentioned that there was a really cool open source plugin which could be almost magical. I mean SOuP.

Lets start from the beginning, shall we? SOuP is a plugin that introduce to maya extra nodes. These nodes allow maya users to have a Houdini-like workflow of non-destructive pipeline. You’re thinking about history on Maya, making it procedural and not destructive. Ok, you’re right up until certain point. Lets say you want to blow up something.

You model the geometry, break it to pieces and then for you to use nCloth for the rigid bodies dynamic you will combine all the pieces together which means… correct. goodbye maya history!

I haven’t tried this myself (next to do on the list) but the workflow with SOuP can vary a bit and give much more control to the user. We model, we use a SOuP node to scatter some points over the geometry, pipe that info to a SOuP shatter node and bam! apply nCloth do your awesomeness and if need, you can still go back and modify the scatter points/shattering.

Now back to the point of the post. I started to fiddle around with a few nodes and what they do and whatnot. I end up wanting to do some fluid FX. A flame perhaps? At this point I created a simple scene and containers and I came up with a really quick result (5min worth of work)

Then I applied the SOuP upRes node and messed with it to figure out the possibilities and came up with this “end” result.

bottom’s line, SOuP isn’t healthy just for your body but for Maya as well! It can change, in some ways, how you interact with maya: improve your methods, speed up the whole process and, above all, increase your possibilities.


‘rendering’ curves

My first interaction with the 3D world was with 3D Studio Max and I used to love the fact that the renderer is able to render splines.. [make curve renderable option]. Then I jumped to the wonders of Maya world.

How in the world can I render a curve?! create a new NURBS circle and whatnot thus being able to extrude it… right… it was a 5 seconds job before…  Ah.. interesting, I can also use Paint FX.. that is quite nice and you have an amazing control of it!

So I decided I wasn’t going to do this any more.. way too long (extrusion) or way too confusing (paint fx, because you have a lot of control but you do have to go through a lot of parameters in the attribute editor) for a simple, lets say: power cable. So I came up with this script done in Python, though I do not have a full control over the extrusion shape – for anything between a triangle and a circle it does the trick.

Now I have all the control I need for a fast job, right there, in the channel box.

The alley

Here the project was to create some kind of FX in a real backplate. (Escape Studios VFX TD project)

The first problem with this shot was the fact that a third of the footage doesn’t have colour information. Thus making hard doing a good track solve without a few manual frame by frame track markers.

The second problem to overcome was to choreograph the floor break-up. This was done using multiple ramps, connected to each other, controlling the Attraction maps of the nCloth objects. In addition to this I needed the bricks to react with the liquid underneath so they could emit smoke on collision. To do so, I created particles sticked to the bricks that would collide with a plane (positioned on a mid level of the liquid) therefore creating a new particle that would live and emit it for as long as i needed. This process was a lot faster and easier to calculate than simulating all from scratch and using all the nCloth collisions.

The major issue about this project was to balance the simulation time, cache space on the HDD and simulation accuracy.


please check the showreel for the full shot.

Jubilee extension

With this project the aim was to create a set extension/replacement. (Escape Studios VFX project)

After creating and placing all the geometry and lights, I wanted to start adjusting the settings on the lights – changing the decay formula. As I couldn’t make this change of about 100 lights in one go, my teacher introduced me to MEL scripting. After this was done, to add more reality to the scene and not having everything in perfecting sync, I created a script to change the intensity randomly between two given values.

With this, the major problem was balancing all those lights to match the footage. Also having into account that the render time would be a huge problem. Overall, after optimising the scene – mapping the final gather, adapting texture size and manually adjusting the raytracing options and acceleration method, the render time went from an average of 40min per frame to about 12 min.


please check the showreel for the full shot.

Eristoff Vodka

I wanted with this project to do something a bit more comercial.

In this still the the main issue was dealing with Maya fur.

For starters, to get the shape wanted I had to use two sets of fur descriptions. With this I had to make sure both were properly aligned and it would match evenly. Also getting a nice detailed shadow of it took a bit of time and adjustments.

The coat basic mesh was done in Maya and then I sculpted the rest in zBrush. The goZ tool was giving problems which, at the time, I made the choice of manually linking all maps (texture, displacement and normal, which is not that much of trouble) in Maya. To get the detailed cloth material on it, I used a combination of the normal and bump mapping; Where the normal gave me a bit more of the stitching and the bump the cloth.

Black&Decker Drill

The goal of this project was to do an object an integrate it in a real life backplate, with as much as we could inside Maya. (Escape Studios Maya Core project)

The major issue with this still was matching the lighting and shadows to the real footage. In addition to all the matching work in Maya I had to use a bit of post work on it (shadow wise).

Apart from this, the balance between the bump and the displacement map was crucial so the render time wouldn’t suffer.

The texturing was the hardest to overcome, due to the fact of the object being so close to the camera I couldn’t hide or ignore almost anything and the UV maps had to be really well done.