|  Home   |  About   |  LW Resources   |  Tutorials   |  Software   |  Projects   |  Gallery   |  Links   |  Site Map   |  Contacts  |
 

Introduction:  In this tutorial we will attempt to turn an object into a dusty smoke effect using hypervoxels derived from a solid polygon object. The same thing can be done to create a object to liquid effects. Later I'll show you how you can use this same basic concept to create particles which will give you even more power. That will be in the Dust in the Wind 2 tutorial. So what can you do with these effects? Well for you Buffy fans with a little work you can create the vampire to dust effects. You can create a Terminator to liquid metal effect using this method. Anybody ever watch 'Charmed' when the characters orb in/out, yep you can use this technique for that. Of course there's the heavy weight champs in this class. The dust storms in 'The Mummy', Anubis's army turning to dust in "The Mummy Returns' as well as other similar scenes from these two movies. Then there's that little guy from a movie a couple years back, something called a Balrog. Ever heard of him? Maybe in a future tutorial I'll show you how I use this technique for a fire drake character I'm developing for a personal project of mine, 'Twilight Warrior'. This scene took me less then a half hour to put together including making the Smiley face from scratch.

Note: While I will be using LW8 for this tutorial earlier versions of LW can be used to accomplish the same effects you will just have access a couple of the tools differently such as getting to and working with Morph Mixer.

1 – The first thing I did was create a quick little logo to use - Mr. Smiley. He's short, sweet, simple and really lets you see what's going on quickly. I gave the Face a surface named 'Face', the eyes a surface named 'Eyes', and the smile a surface named 'Smile'. Then I saved him as SmileyFace.lwo. If you want to follow along with this tutorial I have included a zipped package at the bottom that contains all the files for this tutorial.

2 – Next I copied him into a new object file and saved it as SmileyFaceMorph.lwo. You could just move him to a different layer but since we'll be using Mr. Smiley in other tutorials I made sure I had him saved to be used later.

3 – Using Polygon Statistics (hit 'w' while looking at Polygons) selected the Eyes surface (by going down to Surf:(none), right clicking, choose Eyes, then click on the '+'. If I had made these selections into a selection group I could have done the same thing under the Part:(none) row.

4 – Cut and paste the eyes to a new layer.

5 – Repeat the process to select the 'Smile' surface, cut and paste to a new layer.

6 – The reason I did this was so that I could surface my HV's differently when in Layout. You don't have to do this if you want your hypervoxels to have the same surfacing effect. say turning to a confluent smoke or a metallic liquid. In this tutorial I want to show you a little of the power this technique has to offer you so we'll setup different layers.

7 – I believe that no matter how small or simple the project is you should always have clean, self explanatory files. You never know when you need to come back to them and try to reverse engineer what you did. Having said this open the Layers Panel, Windows->Layers Panel or F7. Expand the layers for the SmileyFaceMorph object. Double click on the first layer and name it 'Face', leave Parent set to 'None'. Hit OK. Select the second layer, name it 'Eyes', set Parent to '1: Face'. Select the third layer, name it 'Smile' and set the parent to '1: Face'. Also remember save often, save incrementally. It will save you some day I promise you! Of course I really should have started with having you setup a proper content directory for all of this first but oh well.

8 – Now Subdivide (Multiply->Subdivide->Subdivide or Shift-D) each of these objects with Subdivide set to Smooth and leave the defaults the way they are. Do this a couple of couple of times. You can monitor the number of points (which is what we are really after here) by having the Point Statistics panel (alt-w while in Points mode) open while subdividing. The key here is to get us a healthy but not devastating number of polygons which will give us a fairly decent coverage of points over our object. I stopped the face at 4226 points, the Eyes at 1298 points, and the smile at 674 points. This gives a fairly uniform set of points for each object. Yep, you can do more easily and the effect can look really sweet with more points but for this tutorial we'll keep it a little low for speed and clarity on what's happening. This is how you would create an object using only hypervoxels and no polygons. In fact I have done entire complex scenes with no polys and no lights using this method. No lights? I used high luminosity, glows and radiosity.

9 – Next select the first layer (Face), select all of the points then do a Cut (ctrl-x) then paste the points back in (ctrl-v). (NOTE - if you are using my files then please note I have copied the first three layers into the first three layers of the second bank of layers. This will allow you to see what I have done a little easier if you need it. If you open the Layers Panel you will see them in layers 11,12, and 13 with _Pts appended to the layers name. I have also unchecked the view (dots under the little eyeball icon, so the first layers will not load into Layout.)

10 – I now cheated and copied the points for each of these layers into new separate temporary layers for reference, you'll understand why in a minute.

11 – With my main point layer in the foreground and my temp layer in the background I did a little jittering using 'gaussian' jitter (Modify->Transform->Jitter or shift-j) and an radius of something like 20mm a few of times. The reason we want to do this is to give the effect a smooth and random pattern to work from. If we tried to do this with non-jittered points it would look very manufactured and well rather icky.

12 – Resize the point cloud with the Size tool (Modify->Transform->Size or shift-h) so that basically fits the same size as the background points. You might need/want to use the stretch tool and/or even drag stray points into place. Kinda like dealing with a bad hair day when you have an important meeting to go to. This is so when we do a fade in our animation we won't get points appearing from thin air! Its a little hard to see this in the image but you'll understand when you try it.

13 – Now do the same thing with the Eyes and Smile layers. When finished, go ahead and delete those temporary layers.

14 – You can now leave these just as points which we will for this tutorial. You could also make the points into polys, which we will do in the next tutorial.

15 – Now for the really fun and personal part. This is where the magic comes in!!

16 – Start with the Face layer and go into the Morph map (press 'M' in the lower right of Modeler) then where its says 'base', scroll down and select 'new'. This will open the 'Create Endomorph' panel. Name this one 'Smoke.Face' and leave the 'Type' set to 'Relative'. Now all the work we will be doing to this object will be for the morphed image of it and not the actual base layer.

17 – Since I want this one to look sort of like a blown away dust in the wind effect I moved the face's points up on the y-axis, did a few jitters, added a little vortex and twist them, gave them a couple more jitters then resized it a bit. Say what? You did not follow all of that? The point here is to move your points to give you the end point effect you want. This is where the artistry and experimenting comes into play with this method. Remember when doing morphs you basically start with a start point and create an end point with the morph. Then in layout you can 'tween' your object between your start (base) point and or end (morph) point. Also, if you want some points to move faster then others you need them to move farther then the others. This is key if you want a watery effect where some parts melt/dissolve faster then others. Here I wanted the high point on the eyes, smile, and face to move first and faster so I moved them further (hint - think stretch tool here). Remember each point will move over the same number of frames so the farther we move them, the more area a point has to move over that time to get to its end point, hence it appears to move faster. Also note that you need to move the points far enough that you will have them move off screen in layout or to where ever you want them to go to.

18 – If I had text or a complex object and wanted to do something like Anubis's army in 'The Mummy Returns' I would create several layers then use the magnet or stretch tool or just select and move my points so the first points move the farthest (hence fastest and first) then move to the next layer and try to key them into one fluid morph. There's also a pseudo way of doing this with weight-maps. You can also create a chain of endomorphs to give you different types/directions of movements.

19 – OK back to the task at hand. With the Face done I moved to the Eyes layer, created a new morph named it 'Smoke.Eyes', moved the points around like I did for the face. Randomness is key here so don't worry too much about getting the same settings/order you did for the face.

20 – Then I did the same thing for the Smile naming it 'Smoke.Smile'.

21 – There we're done in Modeler. Make sure you save your object and lets move to Layout.

22 – First load up the 'SmileyFace.obj' and set up a basic scene. First I moved it back on the x axis -1m then rotated 'press y' the smiley object abit.

     H = -65
     P = -70
     B = -5

and set a keyframe at 0.

23 – Next I set up a very basic and non dramatic lighting setup. I'm not overly concerned with lighting here I'm more interested in showing off the HV effects. I left the default light as a distant light, no need for nice soft shadows here. I moved it to

     X = 250 mm
     Y = 2 m
     Z = -300 mm

and then rotated it to face our object with these settings;

     H = 290
     P = 45
     B = 0

I set the color to a nice warm color using the 'Kelvin' color selector. My RGB colors values are

     R = 255
     G = 230
     B = 210

I set the light intensity to 130%. As the great Nicholas Boughen would tell you. This is just a number. 100% means little to nothing. You can drop down to negative values to suck (subtract) light from a scene or crank it well into the thousands. All that matters is that you get the intensity where you want it. Speaking of Nicholas he would really hate this simplistic rig but he'd also agree that there is really no need for an evil three point light setup here. Evil, I called it evil but we all use it. Yeah well we are all usually lazy too. Great lighting often takes just as long as everything else in a great scene setup.

24 – That does it for the lighting in this scene.  Please add more as needed for whatever you are really working on.  Please note that you will not want one directly behind your object. It will cause some problems when you animate the fade from the solid to the HV's.  This problem can be easily resolved easily using the graph editor.  

25 – Now that we have a basic scene setup make sure you save it.

26 – What I plan on is a short 3-second clip here so I set the end keyframe point to 90 (30 frames per second times 3 seconds). I want to show the smiley face to see it's a normal solid object then have it poof out the into dust blowing in the wind effect. What we need to do is see the real object then the HV's so we need to do a fade. We'll do this one after about 1 second (roughly frame 30) we want a fade so its not an instant change making one gag at the fakeness of what's happening.

27 – So with our SmileyFace object selected, open it properties (hit 'p') and go to the Render tab.

28 – For the 'Object Dissolve' set an envelope by pressing the 'E' to open the graph editor. Make sure that the point at frame 0 has its value set to 0% because we want to see him to start with. Now add a keyframe (first click on the little key icon just above the tabs) at frame 27. If you are off on your clicking that's OK you can set it to 27 in the 'Frame' field. Set its value to 0%. This is where we will start the fade. Add a third keyframe at 35 with value of 100% to completely fade Mr. Smiley face. Finally with the right mouse button pressed, rubber band around our 3 keyframes and set the TCB Splines Tension to 1 to give us a nice smooth fade and transition. Remember we don't want the change from our object to smoke, liquidity or whatever to be instantaneous so we start a little before and then went a little past the point where we want the transition to be to smooth it out abit.

29 – There, that's all for Mr. Smiley Face except for surfacing him. It's a very generic guy so I just set the basic colors, cut the diffuse a touch and added a little specular and glossiness to give us some highlights that's it. If you really want to see what I did (not that I would really understand why, its about as blah as it gets) you can check out the surface settings in the supplied SmileyFace.lws file.

30 – Next load your SmileyFaceMorph.lwo object into the scene.

31 – The very first thing you need to do is move it to perfectly match the settings of you original SmileyFace. If you had been smart and saved the objects all into one file and parented them properly you could have avoided this step. But we had other goals in mind. So select the 'SmileyFaceMorph:Face' object (or 'SmileyFaceMorph:Face_Pts' if you are using my file) and move and rotate it to the same settings we used above. Since the eyes and smile are parented to the face they'll tag along as well. See parents are useful after all! Also notice how easy it is to figure who's what and where since we named those layers.

32 – Before we work on the morph effects lets create the hypervoxels so we can see what we are doing. We'll just get them set right now and come back to dressing them up later. One way to get to the hypervoxels is to go to the Windows->Volumetrics and Fog Options. While on the volumetrics tab click on the 'Add Volmetrics' dropdown button and select 'Hypervoxels'. I personally created my own Dynamics tab to  provide a faster workflow when working with Dynamics but that's a different story for a different day.

33 – For now just double click on the SmileyFaceMorph:Face(_Pts), turn 'Show Particles' on and switch 'Object Type' to 'Sprites'. Then repeat for both the eyes and smile. Why sprites when we are doing dust? Well how about dust like, sprites are fast and easy to see what we are doing. By all means use whatever settings (hint - peek at the preset shelf) you want for your dust.

34 – Good now that we can see the HV's lets play with them. With the SmileyFaceMorph:Face(_Pts) selected open its properties panel and move to the 'Deform' tab. Click on the 'Add Displacement' button, scroll down and select the 'Morph Mixer' tool. Double click on the new control and expand the panel till you see the slider for you Smoke.Face morph. So what we are going to accomplish here is the second half of our transition and the dust blowing off from the solid smiley to the dusty, HV, smiley. Again we want the transition to occur at 1 second but after the solid face starts to fade out (which we started at frame 27). So set a keyframe at 0 with a morph value of 0. Add a new keyframe at 30 also with a value of 0. That's 3 frames into our transition (it needs to be a quick transition to fool the eye. We wanted this animation to last 3 seconds (90 frames) and we want the smoke/dust to just move out of range at the end so set a new keyframe at frame 90 with a value of 32% found by playing around with my view set to Camera View. I also suggest keeping the Graph editor open (press the 'E' button). to make sure the keyframes are getting set right for you. Plus I would also recommend selecting the points and setting the TCB Tension to 1 for smoother transitions.

35 – Repeat this process for the SmileyFaceMorph:Eyes and SmileyFaceMorph:Smile objects. But you might want the Eyes and Smile to move a little farther/faster so go ahead and play a little to get the movement you want.

36 – That does it for them morphs. Now back to setting up the HV's themselves.

37 – Yet again we need to think about our transition. We want it to go from a smooth solid object to patchy HV's so we don't want them to just appear suddenly. Remember with just the Smiley Face we started the transition at frame 27 and ended the transition at 35. We need to do the same thing here only make them fade in instead of fade out. So for particle size I created an envelope by pressing the 'E' to open the graph editor. At frame 0 I have a value of 0m. I added a new keyframe at frame 27 with a value of 0m. Then another new keyframe at frame 35 with a value of 80mm (remember we are creating the size of the hypervoxels here.) I again made sure that the keys at frames 27 and 35 were set with a tension of 1 with a TCB Spline.

38 – I wanted a little variety so I created an envelope for Size Variation ranging from 0 at frames 0 and 27 to 50% at frame 35.

39 – I also threw in a little stretching along the velocity vector with a stretch amount 0 at frames 0 and 27 to 200% at frame 35.

40 – For shading I just set the HV's colors to match that of the objects turned down the luminosity abit and did not do any HyperTexturing for this tutorial. Again please fell free to add whatever texturing you want (again Hint - look at the preset shelf!)

41 – I then did the same thing with the same for the SmileyFaceEndo:Eyes and SmileyFaceEndo:Smile objects (making sure to match my colors for the shading that I used on the solid object.)

42 – That's basically it for this tutorial. I rendered with Enhanced Low and motion blur turned on.

43 – There are many different ways to set this up and it all depends on what you want the final effect to look like. The first thing I would recommend to really sprucen this up is to add real textures to both the SmileyFace solid object and to the HV's. This is about as basic a use of this technique as you can get. Adding more morphs unto the objects give you alot more control over more complex paths. Later I'll show you how to use this technique to actually do the liquefy effect and that one will actually look like something and have real texturing and shading. I'll also show you a more powerful form of converting a solid object into actual particles which we can then use effectors on such as wind and gravity.

Please feel free to contact me with any questions, problems or comments: aurora@auroragrafx.com

Project Files: The project zip file contains the 'SmileyFace.lwo', 'SmileyFaceMorph.lwo files', the completed LW8 scene file 'SmokenSmiley.lws', and a render of the final project comped as a DivX file, 'ditw1.avi'.   DITW1_ProjectFiles.zip

--Top of Page--