Monday, December 22, 2003

Seasonal distractions are slowing down and I am again able to focus on the tiger. I've been trying to animate him using the mixer and am experiencing difficulty. The reason I want to use the mixer is because the tiger needs to be carefully timed around the canary's actions and if I were to keyframe in the standard way, I'd be moving a lot key frames around so this seems like a good job for the mixer.

I've hit the same problem I had in September when storing and applying poses on the Moose - if a joint is straight when you store the pose, the bone will flip and bend backwards. I'm trying to keep the joints with a slight bend. Today I discovered there is a special command for skeleton poses that's in the skeleton menu. Create > Skeleton > Store/Apply skeleton pose, using this command may avoid the problem previously mentioned. I haven't tried it yet.

Originally I had been selecting the tiger model in branch mode and storing the pose (using the Actions > Store > Transformations command) .. this is not what you want to do ... it takes all the SRT values from every bone and chain and messes up the IK result.... I changed to selecting the effectors and controllers (the upvector objects, the hip cube, shoulder cube and whole tiger cube). This works much better, and is probably what I'll continue using as I am storing animation / fcurves and not only poses (The Store/Apply Skeleton pose thing is for poses only not animation ... I may try a few tests with that now that I know about it. My original tests with poses were disastrous because of the above-mentioned issues!).

I also realized that if you use the Store > Animation command ONLY those objects selected that have animation on them will be stored. If you want Animation and transform values of unanimated objects (i.e. if you want your pose to be stored in addition to the animation) then you need to choose Store > Local Transformations - All Animation or Current Values.

Back to the tiger.

Monday, December 01, 2003

I've been working on polishing the Tiger. Using painted vertices for the stripes works well, it took a bit of fooling around with the settings in the render tree for the Mix2Colors node .. The stripes still have a strange green glow around them. I suspect that it doesn't have to do with the mix node at all, but instead its the alpha channel that was generated when I painted the vertices that isn't correct ... I'll have to go back and check that. I also have to add the "real" stripe on the tiger's head ...

I had a problem with the orientation of the eyes (and all objects that are constrained to clusters on the body), when rotating the entire tiger ... his first position is on the floor asleep and as soon as I rotated his body, his eyes lost the correct orientation. Fixed that by making them the child of the subdivision surface. Had the same problem with the nose, belly (yellow spot) and eyebrows. All were easy to fix except for the silly eyebrows which just wouldn't pay attention to anything I did ... HA! I fooled them by making them children of the eyeballs, which doesn't make sense to me but it worked !

Tuesday, November 25, 2003

The tiger is IKed and enveloped .... I didn't use the prepackaged rigs, my characters are not human like (the tiger has a tail and has no knees!!) so I decided to move along with my own IK, which is quite an easy rig to create anyway ... the skeleton is not the time consuming thing ... its the enveloping that takes forever!! It took me about 3 tries ... there is never an automatic way of enveloping characters, there are always many points that have to be reweighted one by one ... and it seems more difficult when working with a polygon mesh that has a subdivision surface. Since the polygon mesh is the one that is enveloped, it can be deceiving when weighting the points on it ... when you look at the subdivision surface, the points need to be tweaked more ... I'm tempted to freeze the subdivision surface and just work on that, but then it will be slower to animate (and at this point I'd have to reweight the points again !)

My next step is to add eyes, nose, and stripes to the tiger.

Thursday, November 20, 2003

I've uploaded the rough render of the first scene (remember not all elements are there yet, I've only modelled and animated the moose and the canary so far). watch scene1 rough (1.5 MB MP4)

I have the second scene rendered too, but I'm not happy with the timing, so I'll be tweaking it before uploading it. Its kind of a drag, I should have noticed the problems with the timing before, but I was concentrating on the fire on the sofa (particles) that wasn't rendering ... it was because the color animation type was still set at birth rather than at age%... now I've got the fire but the timing is wrong.

I've modelled the tiger and am quite happy with him so I'm going on to IKing, this time trying the pre-packaged bi-ped rigs, although its going to take some adjusting, since he really doesn't resemble a human.

Due to popular demand, I've changed the mouse pad available in the online store to a moosepad ... I'll be adding a 2004 Calendar of my most popular comics in the store soon... get it for your favorite computer geek.

Sunday, November 16, 2003

The canary has jumped out of his cage, walked over to the cigarettes on the floor and picked one up. Now he's got to light it and I've decided to have him light it off a stray flame from the newspaper. I've been working on smoke and fire in a separate scene and have got it figured out. But now I realize that I just can't import the model of particles, because there are key frames on the smoke and flames and I'll have to move them all ... there there's probably a tool to automatically offset all my keys and but it'll take me a day to figure out how to use it ... so it'll be easier just to recreate the smoke and flames after noting the values ... I hope ...

I've also been trying to make a small QuickTime file of the animation so far (a few friends have asked to see it), but I'm having trouble compressing it down to a decent file size. I'll keep trying. Hopefully you'll see something soon.

Tuesday, November 11, 2003

I've left the moose aside for the moment and have moved onto the Canary. The Canary was pretty easy to model, but still it took a couple of tries before getting it right. I ended up using a polygonal sphere, moving lots of points, subdividing the area for the wings. At first I tried modelling the beak in the same model as the body but ended up just creating two half cones and closing the slice. The legs were modelled seperately. All parts were polygonal and then converted to subdivision surfaces.

The IK for the bird is quite simple as well since he doesn't move that much. His legs, wings and beaks, required simple skeleton. His bend is controlled by a cube at his "hips".

The hardest part of animating the canary is something I've struggled with for the moose as well. Using constraints and then turning them off, or on. The moose needed them for holding on to the newspaper, to the phone, to the sofa and to the cigarette. The canary needs the constraint for the cigarette. Its probably the nature of the beast, but it seems to take a lot of tweaking of keyframes to get the switch made from the object being constrained to another object to the object being animated with keyframes ... I don't have an answer other than perseverance.

Now, I have to look at particles again, because the newspaper must catch fire. I decided to take a look at the doc and tutorial again hoping that I could get further along than my first attempt. Low and behold, Softimage has provided sample scenes!! Not only for particles, but there is one that shows how to create the image with an alpha channel! Here is the path: XSIinstallation\Data\XSI_SAMPLES\Scenes\*

I'm looking at the Simulation_Particles_SmallFlame scene right now to see if it will help me make my fire!

Monday, November 03, 2003

The moose is pretty much animated. I'm spending a lot of time tweaking the f-curves and I suspect I need to go and do something else because I am too close to him (and am too critical!). I tied to do exactly that last Thursday, thinking that I would try to use an animated texture to create the smoke from the Moose's cigarette.

Creating an animated texture is quite easy, although at first I used an animated gif painted in Painter only to discover the alpha channel wasn't coming into XSI... so I tried instead with a tif and used Fireworks to animate it so I would have control over the spline ... it was great, until I tried to get XSI to use the alpha channel. It just wouldn't work! I checked the docs, the tutorials both on the CD and from the web and tried and tried and tried ... (sigh).

However my good friend Pierre Tousignant came over this evening to take a look at it with me and he asked if I was using compression on the tif file .. of course Fireworks compresses Tif with LZW compression on. Bringing the file into photoshop and resaving it with LZW turned off, makes XSI happy to give me the alpha channel ... This is kind of annoying, because the file size without compression is much bigger and Photoshop is not easy to animate in ...

Here is what you need to do if you want to use an animated texture with alpha channel in XSI:

1. Animate your image in Fireworks and export to tif 32 format
2. Bring your images into Photoshop and resave, toggling off the LZW compression
3. In XSI, apply a phong material to your object
4. Choose your Texture support for the object
5. Apply the sequence of images as a texture
6. In the phong property page on the transparency/reflection tab click on Connection Icon to the right of the RGBA sliders for the mix color and choose image, reselect the image sequence
7. In the phong property page go to the transparency/reflection tab, toggle on "use alpha" (*you may need to toggle on "invert" depending on your alpha)

I wasn't able to get the alpha channel on the animated gif files to work ... but I didn't spend a lot of time trying to troubleshoot (I tried lossless, alpha transparency).

I can't thank Pierre Tousignant enough for helping me out!

Monday, October 27, 2003

Still animating the moose .... progress is slow. Haven't decided what to do about graphics card, so for now I'm still animating frame-by-frame with the help of hand written exposure sheets, capturing the frames then dumping them into a premiere file where I can preview with the sound track.

Today's lesson though is about having too many keyframes! The two items that the moose holds and drops and in the case of the phone, he picks up, holds, then drops have proved to be difficult to animate. I'm trying with pose constraints. In the case of the phone, I've animated the blend weight of the constraint to be at zero to begin, then at 1 when the moose picks up the phone and back to zero when he drops it as he dies. (Originally I had animated the active parameter but this did not work .. the timing was wrong... see previous blog). After switching to animating the blend weight, I noticed that the phone was floating/moving on the floor before the moose picked it up. When I investigated in the animation editor, the curves were set to spline so I switched to linear but the phone still moved, even though I confirmed the keyframe values were the same at zero as they were at frame 1200 when the moose picks the phone up and the blend weight of the pose constraint switches to 1. The phone wasn't moving a lot but it was moving ... since I had duplicate key frames at frame 1199, I deleted the keyframes that were at frame 0. This fixed the problem ... a good thing to know!

Monday, October 20, 2003

It really seems that this Moose just doesn't want to smoke. I haven't posted anything in a bit because I'm finding XSI on my machine quite slow and I've been trying to figure out the best way to see the animation that I'm working on ... my friend wotomoro tells me that my problem is an old graphics card, and it is old ... 4 years now. He says if I had a newer card with more GPUs I'd be able to see me animation almost in real time ... my problem is I don't have the money to buy a new graphics card ... This is a real catch 22 because I think the film would go along much faster if I were able to see my animation in XSI.

He did give me a trick to at least render quicker and in hidden line. There is an option in the viewport/camera menu to capture so, I've set up a camera turning off all the display of the chains, effectors, texture support and other support objects and set the type to hidden line with the hidden line option to use the color of the objects. When doing a capture you can go directly to QuickTime, this will reduce a step for me.

I still have the eyes to animate, as well as the fine tuning on the hands. I'm having a problem with the animation of the newspaper. THe moose is holding the newspaper until he drops it to pick up the phone and dial 911, I had tried to use constraints and then turn them off when he picks up the phone, but this isn't working well. Tomorrow I will turn off the constraints and just keyframe the newspaper.

I will have to tweak the animation of the legs in the animation editor, I didn't get the extreme movement I was hoping for.

If I didn't mention it, I'm leaving particles for later!

Soon I will post a link to the animation of the moose.

Monday, October 13, 2003

Discovered that you can export to a QuickTime Movie from the Flipbook, so this makes it a bit easier to get from XSI into Premiere... I'm still looking for a quick and easy way to render ... for now I've cut the resolution in half (320 x 243) and have reduced the anti-aliasing to 0, turned off shadows. It still takes a bit of time to render out.

I've made good progress today, I've almost finished with the primary animation of the moose. I'd forgotten to model the tongue, so I went back and did that and added the phone while I was at it ... because the moose has to pick up the phone ! Its a cheap-o phone and took less than 10 minutes to model. Of course the moose doesn't have any ears to listen to the phone but I'm skipping that, its not like its a photo-realistic film or anything.

I had to fudge around with the constraints of the eye rigs to the head, 'cause by the time the moose died the eyes were no longer on the surface of the head .. fixed by messing around with the offsets in both tangency and normal pages of the object to cluster constraint property pages.

Sunday, October 12, 2003

I'm still trying to figure out "how to animate" a coughing moose in XSI. Here's how I'm trying to work. I have my leica reel in Premiere, which is cut up into shots, so I am trying to animate shots and then drop them into Premiere in place of the storyboard. Should be simple... but the first problem I ran into was with the timing of the cough. I'm hoping its just that my animation is really rusty. I'm rendering the second attempt. Between the two animation attempts, there were a few things that didn't go as nicely as I had hoped.

The first sound clip I loaded in was too complex, it contained all the audio for the first part of the film. Instead I loaded in only the cough sound clip and animated the lower jaw to the cough.

I can't find how to render to hiddenline (or outline). I was hoping to render a line drawing of the animation, so that it would go much quicker between XSI and Premiere. After searching in the docs and on the web, it seems the only way to do something close to this would be to use the Toon Shader... I decided to go back and spend my time trying to get better animation timing, than trying to get the toon rendering working (and risk that it would take just as long if not longer as the shaded rendering).

So I rendered the animation of the lower jaw coughing and brought it into Premiere. Not good (I suppose I shouldn't expect so much on my first try). The timing is off. I thought I would be able to get away without real exposure sheets to break down the action frame-by-frame (in traditional animation they call this Sheet Direction). Its possible that I can do some of the animation without the old paper exposure sheets, but for the cough I had to break it down frame by frame. I'm quite curious to know if the big production houses have Sheet Directors or if the Animator's do their own sheets, if they do them at all!

I attempted using the mixer to animate the cough, but quickly went back to "simple" keyframing. I thought that I might be able to set up pose-to-pose animation but somehow this ended up getting more complicated that I thought it would... so back to keyframing... starting with the upper jaw this time. This seemed to work better.

XSI can be a bit annoying in that sometimes, you're trying to move something and the item won't budge, but if you close XSI, re-open and reload the scene, voila the item will move wherever you want it to (grrrr). Of course its probably my fault and not XSI's!

I'm not using the synoptic view as I thought I would ... mostly for reasons of screen real estate, I don't have two monitors and using that view took up too much space ... Instead I made a custom tool bar with buttons that select the objects that I want to animate.

I don't know if I'm on the right animation path yet. I'm still waiting for the render ... I have to find a faster way to get the images into Premiere to view the test animation.

Thursday, October 09, 2003

There are some great tools in XSI for animation! The synoptic view is amazing! Simply put it allows you to take a snapshot of a character and assign hotspots to areas that you will need to select often to animate, for example a character's wrist, just click in the synoptic view on the hotspot and the correct object in your scene is selected. No more zooming in to see and select the right thing. I learned about this by doing Tutorial 8 "The Walk Cycle - Beck Takes a Walk". You will also learn about Transformation setups which allow you to create your own default settings to tools associated to your selection, so in the case of a wrist, you know you want to animate the translation in XYZ, in view mode, so you can set it up so that when you select the wrist in the handy-dandy synoptic view mentioned above, XSI will switch to Translate, XYZ, view mode.

I've also done the tutorials 9, 10 and 11 all about Animation. I'm not sure that I'll use the Mixer for the Moose's animation, however I will be using shape animation for his eyebrows and possibly for the cigarette smoke path. If you are new to animation and XSI, you probably want to run through Tutorial 5 before doing any of the others, so you'll get the basics down first.

I spent a bit of time outside of XSI planning my animation. On paper I've listed the primary, secondary, eye and prop animation that I need to create for the Moose. Under primary I have lower jaw, head and arms. Secondary animation includes antlers, chest, stomach, and foot. Eye animation includes blinks, closing eyes, bugging eyes and eyebrows. Prop animation includes cigarette smoke, cigarette amber, cigarette roll, newspaper, and newspaper smoke and fire. I have started creating custom property sets and proxy parameters for all of these parameters. Each of the different categories will have its own property page, and of course the first animation to be done will be the primary animation. This will allow me to keep one property page open when animating, rather than hunting and selecting and keyframing, then hunting, selecting and keyframing. Tutorial 5 will show you how to do this.

Although I have a leica reel, I had not yet prepared dope sheets and because I've made so many traditional animated films I didn't feel I could just start animating ... I felt kind of lost without the timing sorted out on paper first so I have broken down the timing (to the second, not yet to the frame) for the moose's actions. I've also saved the audio for the first part of the film and will use that for the specific frame by frame breakdown (which is kind of what I would have done if I were doing this traditionally .. I would read the sound track on a Steenbeck and indicated at exactly what frame the cough was at and how the cough itself would be broken down... but I can do this directly in XSI ... well I'm hoping I can!).

Monday, October 06, 2003

I've spent the last couple of XSI sessions enveloping and re-weighting the moose. The first BIG lesson I learned, is never to staighten your chains before enveloping. Its not enough to draw them with the natural bend, you must keep that bend otherwise you may find that the joint bends in the opposite direction. I discovered this happens when applying a stored action. Its a good idea to store an action of the IK hierarchy so that you can always return to the default pose. Just make sure you have a slight bend to those joints!

I used inclusive bounding volumes to help with the point assignment on the envelope. This made the weights correct on most parts of the moose. There were only a couple of problem areas that I had to reassign points by hand, the jaws caused a problem, the points where the top and bottom jaw meet were too close, I just zoomed in really close and reassigned locally.

Another thing that was quite handy was a custom toolbar that I setup to switch between the wireframe view of the polygon moose and the shaded view of the subdivision moose, so that I could easily switch and test the subdivision model's behaviour. (The envelope is applied to the polygon model, not the subdivision model, this will allow you to animate the polygon with a better refresh rate than if you were to animate the subdivision model). Its actually easy to set up these custom buttons, don't be afraid of scripting, its really just drag and drop. See Tutorial number 25 "Scripting, Repeating Commands" for steps on how to do this.

In getting ready to animate the moose, I've added his eyes. The lesson I learned here, is when creating clusters make sure you have only the points you want selected... I wasn't watching and ended up with some a large offset using the object to cluster constraint, then I realized that the cluster contained additional points to what I thought. Two places to look out for this on the Main command panel, just below the name of the object, the points will be listed by number. On the Status bar at the bottom left of the screen, XSI will tell you how many points you have selected.

My friend Wotomoro, gave me a "recipe" for an eye rig. Use a Null that is constrained to a one point cluster on the head. Make the null (rename it Left_eye_Rig) the parent of the eyeball and the eyelid. Make the pupil the child of the eyeball.

The cigarette is made in three parts. The main part is simply a cylinder with a texture, the ash part which is another shorter cylinder, randomized a bit to give it an ash look, and another even shorter cylinder that is placed between the ash and the cigarette which is the amber (you won't see this until the moose drags on the cigarette, when the amber will change color to orange/red). I painted the vertices on the ashes rather than using a texture, how to do this is perfectly described in the user guide "Shade.pdf" on page 283 "Painting Colors on Vertices".

Now that I'm ready to animate, I'm going to do Tutorial 8 "The Walk Cycle" to prepare myself.

Friday, October 03, 2003

The idea for my SmokingMoose Film came to me in the early 1990s. It wasn't until 1996 that I drew the storyboard.

smoking moose storyboard

To help me "realize" the characters I made plasticine models of the 4 characters.

smoking moose plasticine model

tiger plasticine model

canary plasticine model

raccoon plasticine model

Since then, I've started to make the film in many different versions of different 3D software. Somehow working for a living gets in the way of making short animated films ;o). However throughout the past 15 years I've made a number of traditional animated films and one digital paint animated film (using Eddie), this is my first attempt at a 3D computer animated film. 3D computer animation isn't foreign to me though, I have created a number of interactive 3d pieces for the web.

In 2000, I scanned the storyboard drawings and created a "leica reel" or animatic (a timed video of the storyboard). I recorded and gathered sound effects. BTW, the best place to buy sound effects online is at SoundDogs.

Obviously, many people have heard about "my smokingmoose film" as I've been talking about it for so many years. It seemed appropriate to make it the name of my portfolio website. It is such an interesting and unique name.

In July of this year (2003) my good friend Pierre Tousignant convinced me to restart the film using XSI this time. Pierre also suggested that I "blog" my experience in producing a short animated film using XSI. In this first post I'll describe what I've done so far and what my current approach is. In the upcoming posts I'll describe what I'm working on, problems I'm facing and how I'm solving them. By the way, this is an independent film, and I am not independently wealthy, so if you'd like to support it you can buy smokingmoose paraphenalia at the smokingmoose online store!!!

I spent most of August re-aquainting myself with XSI. I hadn't used it since December 1999 when it was still in beta (before the release of version 1.0). To get back into it I read the fundamentals chapter of the user guide and this helped a lot.

My approach to making the film is to work through the film on a character by character basis. I don't want to get tied down in making the background look pretty now .. I can do that later. For this film, what is most important are the characters, including their personalities. I think it is important for the animation process to follow the modeling process quickly and to stay focussed on each character individually rather than trying to complete each scene in its entirety before moving on to the next scene. This is pure intuition on my part, we'll see in a few months if this method works.

For modeling, I looked at the tutorials provided with XSI but realized they weren't going to help me model the moose, which I wanted to model first. I found a modeling tutorial on modeling a dog using subdivision surfaces on XSI base that really helped me. Once I had done this tutorial, I was able to model the moose and the first results weren't too bad.

For the character setup, I followed Tutorials 6 and 7 in the Softimage documentation called "Beck's Skeleton" and "Beck's Envelope". These taught me quite quickly how to create the IK, apply the envelope and edit the weighting of the points on the Moose model.

September arrived and I decided to put the Moose aside and try to create particles, as the film has many particle effects in it... the first of which is of course the moose smoking a cigarette. The amount of information in the particle property pages was overwhelming at first and although the tutorial for particles is good, it too was just a bit daunting with all the properties and parameters. However, XSI base again provided a tutorial on creating smoke, that was more on-target for me ;o)

When I went back to the moose model to put the cigarette in his mouth, I discovered that the model was not behaving correctly at the chin (underneath the jaw of the moose). There was an indentation between the jaw and the head. A few tests revealed it was somehow related to the number of points on the jaw versus the number of points on the head on the polygon model used to create the subdivision surface. A few more tests revealed I had to remodel from scratch. This time I started with a polygonal sphere rather than a cube. I increased the subdivisions on the polygonal sphere so that I would not have to split polygons and remodelled the moose.

Rather than redraw the IK, I created a Model from the IK Tree of the first moose scene and merged it into the new moose scene. I've applied the envelope and am currently re-weighting the points.