Thursday, 29 October 2009

ritalin - so maya cam remembers where to look at

a very handy script made by my colleague Stefan Kubicek

- it automatically puts the cameras pivot point to your selection
- basically it always presses "f" when you select something without actually moving the cam
- its is 100% not noticeable or annoying (you will notice when its gone tho)

especially when you are very close to your character it is a huge time and frustration safer.

here are some Vids

With Ritalin

Without Ritalin

check for updated versions on google code

Wednesday, 11 February 2009

Exporting Sorensen3 with newer Quicktime versions

Some quicktime functions like the ability to see frame numbers are great, but for some reason apple stopped showing the ability to export with sorensen3 videocodec.

Whats the big deal ?

Sorensen3 in my opinion is by far the best codec for animation.
  • its very fast on export
  • very small filesize
  • and most important - very fast on back and forth time scrubbing or frame by frame.
  • and very compatible with older qt versions (h264 sometimes needs the newest qt version)

The good news:
quicktime is only NOT SHOWING the ability. It is still there ! !
you need to tell quicktime to show legacy codecs 
funny that they call it a legacy codec - i guess it has to do with their their new h264 codec

You have to go into the System Settings QT options to change that seeting.

Afterwards you can export sorensen3 as usual.

Saturday, 31 May 2008

little ghosting sphere script

I created a very simple ghosting script to check arcs for maya

select the object you want to trace and click the button for the script
it brings up the ghosting panel. set it the way you like and hit ghost
nothing special, but speeds up workflow. stable ghosting with a click

feedback or suggestions welcome
download v0.1

Thursday, 29 May 2008

workflow life savers

some things i found to help MASSIVELY when it comes to workflow in animation

use digicam instead of video cam for reference
- no need for recoding resizing importing

use tools that can draw over video and save only your drawings out as an image sequence
- bauhaus mirage - flipbook by koshigaya

grease pencil tool by jason schleifer for drawing in maya

blocking all poses out in the beginning - so not timing the poses
whole shot has 10 keyposes - you have all those poses on the first 10 frames

timing those poses out and setting interpolation to "step tangents"

going from stepped to copied pairs
(having all keys interpolation on linear - hold the keyposes for certain ammount of frames with a 2nd copy of that pose)

color coding the important poses in the timeline with the special key tick color function
1 Select Window > Settings/Preferences > Colors > Animation.
2 Choose a Time Slider Tick Special color and click Save.
3 In the Graph Editor, select the keyframe(s) you want drawn in the Time Slider Tick Special color.
4 In the Command Line or Script Editor, enter the keyframe MEL command with the -tickDrawSpecial(-tds)
flag as follows:
keyframe -tds on
The keyframes you selected and set the -tds flag for are now drawn with Time Slider Tick Special color in the Time Slider.

use tween machine by justin barret to help creating rough inbetweens
then make them nicer

make a lot of inbetweens - put overlap and follow through into inbetweens
break up the spine and head and arms and hands in the inbetweens
every 4th frame a pose - every 2nd frame a pose
then go to spline

use video software that allows drawing frame by frame over the playblast/capture
like flipbook by koshigaya or mirage or tvpaint or fcheck(rightclick draws in WIN(not osx))
to give yourself feedback on your animation
doing that in 2d instead of in the 3d app helps a lot and drawing it on the video even more


there is also a tool calles AnimTools by dimos that has a couple of nice features mentioned here all in one package
but its not free like the ones i mentioned

other softwares like xsi or 3d studio max may have the same tools
i know for a fact that xsi has the grease pencil tool and the tweenmachine - just google them

Saturday, 8 March 2008

drawing on screen apps

there are various ways of tracking your arcs and spacing and it is essential for animators.
onion skinning / ghosting or trajecory tools in the animation package

or the good old fashioned drawing over your animations on screen

its an old "trick" for animators to draw with a dry erase marker on crt screens
and then wipe it off again
which is probably the nicest way because its so tactile

on tfts its a bit more problematic because they are not as resistant as crts with their glass surface
therefore some companies do not allow to draw on their TFTs

so a lot of animators tape acetate sheets on the top of the monitor and then flip it down onto the screen to draw on it
but thats a bit cumbersome
and the sheet is usually about 1cm away from the screen therfore the line changes with the perspective

luckily there are some applications that allow drawing over your
animations or any other windows, they are usually called
annotation software - or screen drawing software



in maya you can parent a sphere to the body party you want to track
and then ghost it
or use cMotionTrail to get a 3d curve

Sunday, 6 January 2008

most annoying "features" in cgi apps

i tried to keep this blog positive and just write about the good features of apps and that other apps should incorporate them into theirs.


when working with apps day and unfortunately also nights you just end up swaring at a few very annoying things in various apps

so here is the list of frustration:

i am using houdini for 3 weeks now and i LOVE it
there are however some really annoying "features" that dont fit the otherwise very good user interface experience:

- there is this yellow box that pops up when you write code to help you against typing errors or show what you can do with the letters you have already written
its generally a great tool BUT it often locks the input so you cant type anymore. and it works very differently in different aereas of the app
- the editors and coding windows need a total rewrite (you can feel my frustration)
edit expression editor (alt+e in a channel) does not support the yellow box - it shows up and tells you what you can write but it again often locks input and worst of all it does not allow you to select stuff from that box
- the edit operator type properties scripts editor when you are using the python hom model
this editor is just a pain to code in
copy paste works very weiredly if at all
the yellow box gets into your way way to often
no code highlighting or coloring
no proper debugging
it would be cool to be able to drag and drop channels from the preferences pane
it would be cool to have tabs where you can copy and paste code inbetween and say this or that code tab is active when i call the script

since houdini is really good for techy stuff it would be cool if Sfx would improove coding usabilty

- some stuff wont undo while other things do - if you make a connection with the conneciton editor it will not be undoable.
-Hiding menues via ctrl+m and shift+m is great
they stay accessible through the space bar menue (pressing space bar)
but not in the script editor (-horray)
- does not memorize the open file setup - so if i want to set the open menue up in a way that i see the files in chronological order i always have to click twice (why doesnt it memorize that from the 50 times i did that before)
also a recent folders list like in xsi would help greatly to decrease amount of clicking.
- maya looses the selections when you save the file
thats particularly annoying when you have a complex selection
eg select certain bodyparts for export and you want to save first because the exporter sometimes crashes maya
- skinweighting - man thats so annoying in maya
change the bone/deformer: you can up and down the deformers if you click in the tool options box and hit up and down arrow key
but if you then paint in the viewport (change focus to viewport) the arrow up and down actually goes up and down the object hirarchy
so you always have to click in the tool options again
representation of the weight: black and white very hard to read small numbers - its close to impossible to see something like a 5% weight - would be good to have more colors instead of just grayscale
add/replace/subtract/smooth are all different buttons in the tool options so you always have to go into the tool options and change it - would be good to have it on mousebuttons or ctrl shift or something
its an awesome tool but one thing is TOTALLY screwed up
in OSX you can export a playblast as a movie file (really handy when you want to save it) in windows you cant
in windows you can draw on top of the playblast with the left mouse button in OSX you cant
now these are in my opinion two equally essential features but they are unique to either osX or Win

- translation is keyed in parent worldspace
so if you rotate the controller which is parented to another one then your translation will be handled in parent worldspace so in the f courve editor the keys do not make a lot of sense
- no hirarchical bone view on skinning

- with S as nav tool its really easy to unintentionally safe the file when you for example smooth skinwheits with CTRL and you smooth - navigate - smooth - navigate - bamm you press ctrl and s at the same time for a split second and you overwrite the file
- standard settings for animators pretty much useless
maybe thats me coming from maya
but it takes me an hour to set up xsi from the standard settings for things like graph editor to work in a useful way
- either i am stupid or the schematic view is a piece of shit
- xsi always changes the screenlayout when you want editors to be in special windows - why doesnt it just stay a 4 view layout
- the focus change is really annoying (happens very often using a wacom) you want to delete something in an editor and wham you delete the whole object because the coursor changed the focus (especially in writing scops and expressions)

Tuesday, 20 November 2007

dummy guide to a useful rig

since i had to work with some really crappy rigs lately i will post the bare essentials of a useful rig here

- have a working "select all" button !!
that actually selects ALL the keyable attributes !!!
and ONLY the keyable attributes !!
it should select every single keyable parameter to lock down a pose
if you delete every key in the graph editor after pressing that button you delete the animation and not break the rig with it.
if you move all the keys in the graph editor - fcurves editor it retimes your animation without breaking the poses.
also dont forget about hidden controllers (fk/ik for example)
.. that can also be done without a button
if you dont have any hidden controllers. if you drag select the whole model and it only selects the controls (need to be curves/splines and rest has to be unselectable)
- ALL keyable nodes should be represented by a spline curve
so if you select all splines in the scene you only selected animateable objects
therefore you can switch your app to select only splines in animation
- splines should maybe somehow represent the different objects
hip/root spline should look different from the spine splines
left and right main foot control should look different from the rest of the bodies splines
all spine controls can look the same
all arm controls can look the same
colorcode left and right controls
- custom attributes should work the same in any position or orientation of the object.
dont use "off sets" or orients because they will work different depending on the position of the mastercontroller
have a way to really pose every part of the finger
so you can really grab things in a proper way
not ONLY have a general straight/curl control on fingers or the whole hand

- upvector on ik bones like knee orientation
parent it to the foot
and not to the hip
so if you rotate the foot - the knee will look in the same direction
if you rotate the hip
the knee orientation does not change

- if you have ik and fk on hands
ik on hands should lock down the whole hand position in space
one ik from the shoulder to the wrist is not enough,
because the hand position will change when you move the rest fo the body
- gui picker/synoptic view/or however you call it
not really obligatory
helps though
have a select all button there
have a key all button there
have a translate character button there (hip,feet,ik arms - autoswitch to global translate)

- put all mouth shapes on one controller (jaw controller for example because it also does the mouth open / close)
all the eye lid / brow controlers to another controller
dont put them all on one controller or on 10 controllers
unless its a bone driven setup of course

Tuesday, 24 July 2007

cool features in other animation applications

things i encounter when working in other animation packages
i write it down for you and also for me to remember what i liked and disliked before getting used to the app too much.
First off - i will always prefer maya over those packages - but they have some cool features that could be brought to maya or other apps like the hopefully soon released reflex

- distance to camera (very easy just go view and tick that and every obj you select shows a number with the distance - not really animation specific but its great and simple)
- great reanaming (select a couple of objects and rename them all at once - auto nr at end)
- very good and flexible frame counter built in (KA slate)
- mouse buttons context menue on different commands (eg constraining -middle=to, right=from)
- middle or rightclick on hirarchies selects all in branch or all below
- high level editor in graph editor (advanced sort of lattice for fcurves)
- open multiple independent graph editors (for one or multiple object)
- rotation order (check gimbal lock post) can be keyed and changed during animation (halleluja)
- great keyboard mapping settingpage (doesnt do multiple assignments though)
- custom toolbars can be saved as a seperate file and is easily accessable (wont save with the scene but better than nothing)
- playblast aka capture in quicktime sorensen3 !!! (now thats something great innit ?)
- memo (little buttons that allow you to save viewport settings - unfortunately not the showed components (poli, curves . . ))
-Paths on save and open
(saves paths you used - very annoying if you have to surf there every time you save or open a file like in maya)
-color code via artist panel (you can colour code stuff VERY quickly)
- keeping frame forward backward buttons pressed will play the animation (maya has seperate button)

- holding ctrl over any button or command gives you a quick help window on what it does
superbly quick and convenient way of tackling the "what does this do again" problem

- animation layers - damn, thats powerful !
- highlighting of keyed parts - when you scrub the timeline and move over a keyframe
the controls which are keyed on that frame light up - very nice, never annoying, visual feedback
- adjusting the timeline size can be done by dragging over the start and end frame button
nice for quick adjustments
- camera navigation is quite nice (one mouse button with "shift and ctrl", "shift", "control")
- graph editor navigation has GREAT usability - especially resizing
- arcs tool - trajectory -animation curves works great
- nice way to work with keyframes in the timeline (dopesheet kind of way)

3D Studio Max
-trajectory (animation curves, arcs tool)
works nicely and intuitively
- character studio
really bad for high quality stuff - but good for quickies
not everything is tripple A or feature film quality
interesting footroll pivot solution
unfortunately no squash and strech/scaling and you cant use graph editor
- CAT havent tried it yet but its some pimped, modular version of character studio
a lot like The Setup Machine in maya
- resizing the playback range is nice
- copy a key in the timeline via shift + mousebutton (nice and fast)
- selection sets are a very well designed feature
- skinning (over all it sucks but some cool features)
color, bone envelopes (for superquick tests only), the mirror mode is great
- camera has a walk through mode (3d shooter like camera)
great for positioning the camera
- doesnt change anything when you save the file (maya does some sort of refresh- changes selection)

Thursday, 19 July 2007

rigging checklist for animator friendly rigging

a lot of rigs are super cool and can do tons of things
but often even animators who rig forget about important little things that makes animating with a rig easier and streamlined - therefore help to produce more and better animation in the same time, and doesnt frustrate the animator.

gimbal lock rotation order
set the rotation order of the objects in a way that helps to prevent gimbal lock
and to make sense in terms of how axis get aligned (really think about that) (check jason schleifer dvd)
XYZ is the standard - if Y is used a lot then change it (the middle one is the dangerous one)
check my earlier post on that topic

pickwalk up and down ability on controls
maya has a nice "feature" that allows you to go up, down and sideways in hirarchies with the 4 arrow buttons.
enable that on the spline animation controls
so that i can pickwalk up and down on for example a tail with 6 controls

no redundant controls
two controls doing the same thing
resulting in two f curves describing the same motion

often found in hips area
3 controls very close to each other
main root - hip rotation - uper torso rotation
so this would be two controls affecting the uper torso rotation
doing pretty much the same thing
so the main hip controller should also be the root rotation of the upper spine - no need for an extra controller

or rotation of hands if they have a fk ik switch

controls should be visually unique and simple
it often happens that you cant really say which control is which when you have some weired view on the model (zoomed in view from the top right or something)
then you have 3 circles (rig controls) and you often grab the wrong one
so eyes can be eliptical - body like hands and legs and torso can be circles - left and right different color - ik orientation points (where the knee / elbow bends to) be a simple arrow or something
just to keep things really simple and obvious
3d sort of controls like boxes and spheres or 3d arrows arent really ideal because that would mean more lines that clutter up the view

rotations and values should make sense
if you rotate something forward - it should give you positive rotation values in the Graph Editor
if you rotate it backwards - it should give you negative values (check jason schleifer dvd)
custom parameters: a swivel foot that rotates the foot -180 to 180 should not have values from -1 to 1 - instead it should represent in the GE what the foot is doing therefore have values -180 to 180

its got to be fast - as fast as possible
check whats the fastest way to calculate things in your app (a rig is basicly just a big calculator)
nodes are faster than expressions in maya
expressions are faster than scops in xsi (i am not 100% shure but thats what people say)
calculating distance built in nodes/objects is faster than if you have to write code
segment the geometry for each skinbone and just parent it to it to have a proxy

think outside the box
a rendering node may be the thing that calculates what you need for your rig (rgb - xyz blend color node instead of blending between two constraints)
other useful maya nodes (invert)

to be expanded
please help to expand this list

Friday, 6 July 2007

what i would like to have from an animation tool

wishlist for an animation application

- Games workflow
in games one hast to animate very short animations and cycles
so the animation file ends up beeing like 3000 frames long
with 100 different animations
it becomes a mess quite quickly
I would love to have the ability to seperate these animations in the app,
so that i can look at one single animation in the graph editor.
name the animation so i can easily find it again. (maybe like the video editing apps)
define start and end poses and find those again once you want to change them - (there is a lot of from this animation endpose to that animation startpose
so your idle start/end pose will end up beeing used VERY often as the beginning or end of other animations

- games exporter for most common engines and middle ware

- proper 2D drawing and animation with a wacom
(like reflex, alias studio, alias sketchbook, tv paint, not weired splines but nice bitmap or vector lines)
- FULLY and very easily customizeable interface
(easy load and change - for colleagues, ability to save it with the file)
ability to change camera navigation
for using wacoms it sucks to do something intricate with middle or right mousebutton
would be a lot better do do it with tip AND rmb or tip AND lmb
- map frame by frame buttons to every sort of input device
- realtime playback
- custom buttons with code execution
(like mel shelf buttons) but lay it out in the scene and save it with the file (every shot is different)
- marking menues (also save with file)
- ability to split animations representation into shots
..if i hit "f" in graph editor it only focuses and shows the animationcurves of the current shot and not all 1000 frames
some of the animations are totally independent from each other - like game animation
you should also be able to save that framerange (for example "walk", "idle" "shot1") and come back to it with a simple click.
this should also save with the file
- save config and code with every file and not in seperate file
some of the above features need a different sort of saving configs and code
usually this is saved seperately from the animated file
but i think it would be cool if you could save scripts, code, buttons(which execute code), configuration of the app (bring up a warning that the file calls different config and give animator the choice of taking 6 outofthe 11 local configs for say camera fcurves editor and so on)
- realtime, stable and EASY TO USE onionskinning (coming and past frames different color, drawing strength changes with proximity to actual frame nr. ability to tell app how many frames)
- more intelligent selection of handles and controllers (highlight on mouseover and so on)
.. current technology ends up in a mess quite often because of too many controllers
.. one controller beeing hidden by another or geometry, two look exactly the same and you often select the wrong one - modify it and not knowing why the the part of the character does not change
- stable, fast, intuitive, modular autorigging functionality (setup machine, face machine, cat)
thats an easy way to standardize rigs and that helps to add advanced rig functionality
standardizing should not mean unflexible
ability to rig an octopuss aswell as a simple human game character, cartoony daffy duck or realistic beowulf, biped, quadruped, hands on the end of tentacles, tails, ponytail . . . . .
- ability to insert reference video INTO the scene (eg. on a plane). with realtime playback (ram player)
- save selection of channels in graph editor
(on handles like the hand it sometimes becomes quite a mess with all the custom attributes, or all rotations on the spine only)
- change representation of rotation vs translation and custom attributes in graph editor
(rotations have very high values whereas translation often doesnt change more than 5 units, so in the GE you cant really see tranlation and rotation because the values are too different. same with custom attributes)
- ability to colorize (or some other sort of visual feedback) certain frames
start and end frames of a loopable animation that is embeded in bigger animation. (games)
keys, breakdowns, extremes . . .
start end frames of a shot or a move that you want to focus on
ability to hide everything but that part of the animation, focus GE on that part and so on
- easy and convenient set start and end time for timeline
thats something that you need ultra often and you always have to double klick some textfield and enter values. why does no software support (use current frame for start of range/end of range. with hotkey like shift left arrow/right arrow)
- quickly copy keys and poses in Graph editor and timeline
3dstuidomax has this cool thing where you just have to shift drag a keyframe and it will copy it to where you drag it
since you do that a lot in animation
that saves you the akward strg c strg v thing
- local global gimbal (rot trans)
only gimbal will tell you what you are actually changing (in the graph editor)
only local on trans (depending on app) will show you what the app will do under the hood
easy way to switch it
quick way to see what you are using right now
- well copied features from other packages/plugins
I prefer well copied features over brand new ueber features ANY time.
In the end its about workflow and usability, and that something that only Animators can say/see while working on a pruduction shot.
Devs should check out how features work or dont work in other apps and then incorparating them in your own app.
I think ambitious developers are sometimes afraid of shamelessly copying features.
please ! don't giveashh..
- graph editor having a way to tell what which courve is
sometimes you select the whole character
and you see a weired courve and you cant really tell which object it belongs to
you have to slowly scroll down a huge list and look very closely to find it

to be expanded . . .
please add your thoughts on functions that should be embedded in current animation applications.
there is still a lot to improove from the usability point of view

Friday, 30 March 2007

shuttle xpress - animators friend ?

i just got myself one of these:

you can assign every sort of keystrokes with it
unfortunately it doesnt do two buttons at once (like the wacom)
check the settings window
5 buttons
15 states "jogring" (neutral, 7 left, 7 right)
endless jogwheel in both directions

in quicktime i am now able to very very conveniently check out my playblasts
forward backward in various speeds
frame by frame with the jogwheel

in maya i can do the same
but unfortunately maya sort of "stores" the frames you change
so you if you rotate it faster than maya can display the frames
maya sort of plays catch up with you

Saturday, 17 March 2007

how to avoid gimbal lock in rigging

Gimbal is a major pain in the rear . . .

. . . everybody knows that.
even if you animate in gimbal (set rotation tool to gimbal) you often have problems with it

"Gimbal" or "Euler" is how most 3d packages "think" about rotation values
it is a hierarchical system with rotation orders
the default rotation order is usually ZYX
If you Rotate in Z: X and Y rotate with it
If you Rotate in Y: X rotates with it but Z stays where it is
If you Rotate in X: Y and Z stay how they are

<- check it out

this is what happens under the hood when you have gimbal lock (ZYX)
maya does not know what axis you want to rotate when X and Z are overlaying

You can set the rotation order in the attribute editor
XYZ YXZ . . . .

The only thing that causes Gimbal Lock is the second axis

here is another video i did in XSI which nicely explains it for visual people.

This means for rigging in Maya or other Euler based apps:
2nd rotation BAD
1st or 3rd rotation GOOD

Put the middle rotation where there is little movement

For example a Head usually rotates a lot in Y (global axis)
it would be a good thing to make the rig that it does NOT use XYZ or ZYX order
best would be Y as THIRD (zxY, xzY)
and the "look up down" via 1st (since thats the second most used one)
use the middle axis for "left right tilt" since thats the least important one of those three

also you can change the rotation order as an animator
before you start animating
think about what your most and least used axis are going to be
then change the rotation order in the attribute editor
use the third one for most used
the middle one for least used
231 (1 most used, 3 least used)

once you have already animated your char and run into problems:
1.try GE ---Curves --- Euler filter
2.zooChangeRoo from the zootoolbox

other apps allow keying the rotation order out of the box

Thursday, 8 March 2007

frame counter in quicktime or maya

having a frame counter in your video is essential for animators
thats the only way anybody can tell you the frame he is giving you feedback on
or you can remember what frame has issues

there are three ways to do that in quicktime
xml script - link
video overlay - link
just rightclick on time - since version 7 - link

there are two ways to do that in maya
1) import/reference this file - link by
2) type this in the mel textfield:
switch on
headsUpDisplay -section 5 -block 1 -blockSize "small" -dfs "large" -ao 1 -l frame -command "currentTime -q" -atr HUDFrameCount;
switch off
headsUpDisplay -rem HUDFrameCount;

Saturday, 3 March 2007

60fps, pocket size, video reference recorder

i finally got my girlfriends canon ixus50 (powershot sd400) repaired
its an ordinary pocket sized digicam front . back

it can do 60fps
which is very nice once you have to film reference for a quick move
you will have a lot clearer images with less "smear" on the 60fps one

check the two vids and frame by frame them 30fps big . 60fps med
unfortunately it cant do 60fps in 640x480
so you will have to live with 320*240
which is good enough for video reference though

the video file is saved as a series of jpg images in an avi file
so its quite large compared to a sorensen3 file
but it opens in every player - like quicktime

great feature: you can frame by frame on the camera nicely
also that you can just open the file on the computer without the usual camcorder import via premiere or final cut
and you can even get a wide angle clip on on ebay

this particular model is pretty old so you probably get it for real cheap

there are newer versions of the ixus line
but they still wont give you 60fps in 640x480
i am shure they have other advantages though
like wlan connectivity, usb2, better compression . . .
just make shure they can do 60fps (not every canon ixus can do that)

Friday, 2 March 2007

quicktime - animators best friend

i often see people uploading anims as xvid or divx in a rar file
thats ultra cumbersome and has a lot of disadvantages compared to

quicktime is THE video tool for animators
its pretty much the only video tool out there that lets you
- loop seamlessly
- frame by frame the animation (back and forth)
- play and loop selected segment only
- loads of plugins to support differnt video formats
- frame by frame on DVDs (with the mpeg2 component)

- basic video file editing functionality
cutting, copy paste segments, overlay 2 vids(adding frame count))
- export to pretty much every format - small filesize

but there are some things that are still not perfect
like resizing you always need a calc to downsize it proportionally
cant just say 480 pixels wide and it does the rest

pc version is compared to the mac version rather inferior
like no batch export
crashing (at least on my pc)

when exporting the animation for web i would suggest
sorensen 3 - 50% quality
AAC 32.000khz mono 32kbit/s
that will result in
very small filesize
very fast export
very good frame by frame performance (h264 is slow frame by framing backwards)

if you want the file to be ultra compatible (showreel)
mpg 2 is the very best option
there is a mpg2 plugin for quicktime (mpeg2 component)
a lot of companies wont allow people to install codecs or video apps
an mpeg 2 video file though can be opened on pretty much EVERY computer on this planet