Tuesday, February 02, 2010



Transferring UVs AFTER rigging....

This is a tough one, but here's the HACK. Lets say you've rigged up your amazing character and realize OH, I have to make a bunch of UV changes. You copy out your character's head, UV it up nicely, bring it back in and use the "transfer attributes" from your copied head to the rigged one.
No deal. It's because your transfer attributes input comes after rigging and all UV inputs have to come before rigging. Same as in Ncloth.
I don't understand why Autodesk doesn't put in a "before deformers" option or something similar to how you can insert blendshapes at certain parts of a deformer chain.
ANYWAY
Every object has a "shape orig" node which represents what an object was before it was deformed. We can apply a UV transfer to this no problem which will also transfer up the stack to your rigged object.
I access it like this

1. Select your rigged object, in the hypergraph hit options/display/ hidden nodes & shape nodes
2. You'll see a hidden node which is your Orig node, or what your object was before rigging.
3. In the orig node's attribute editor under object display, uncheck 'intermediate object'
4. Your Orig node is now accessible.
5. Apply your UV transfer attributes to it - then delete it's history.

There you go - you've applied your transfer to your object via it's history object. Maya sees it that you performed this operation before rigging. Now why Autodesk hasn't made a tool for this....who knows.

Wednesday, January 27, 2010


CORE RELEASE

For all you home, 1 machine render monkeys out there. I just discovered how to drop some core processing power (if you have a multi-core computer) while you are rendering so you can do all that web surfing while your machine chugs. CTRL-ALT-DEL into your task manager. Find the Maya process, right click on it and select set affinity. Click off one of procs. Cool, never knew about that one.

Tuesday, January 26, 2010


SEQUENCE RENAMER

Nice and simple free app to rename those image sequences that you buffooned in your render settings. It's through creative crash so you need to register.

sequence 911 click here.

Tuesday, January 19, 2010


MENTAL RAY BOKEH LENS BASICS

http://www.pixelcg.com/blog/?p=189

Monday, January 18, 2010


FLUID CLOUD TUTORIAL

http://en.9jcg.com/comm_pages/blog_content-art-149.htm?PHPSESSID=7b58e42ebb2f6224c65dbf0481c1852f

V-RAY FOR MAYA BASICS

Simple start for the V Ray renderer plugin.

http://www.creativecrash.com/tutorials/vray-for-maya

Wednesday, January 13, 2010


USING NCLOTH TO DRIVE YOUR HAIR OR SPLINE IK

I came across a VERY cool technique to drive Maya's hair or splineIK. I saw a post online and the guy said
"create strips of polys from your hair, apply nCloth to them then wrap the hair to the nCloth"
I said "huh"?
So basically here's what he means...

Let's say you need a dynamically driven IK handle that you would normally drive with a dynamic curve (say a pony tail or an antennae). Instead

1. Loft 2 curves together and create a poly 'ribbon'.
2. Create nCloth of your poly loft.
3. Take 1 of the curves and wrap deform it to the polys which are now nCloth.
4. Your curve is now driven by the movement of the nCloth which is MUCH more versatile and has way better collision detection.
5. Now you can set up joints and spline IK your nClothed curve to them...all of this being driven by your nCloth.
6. Set up your nCloth constraints which are very good and predictable. Adjust your ncloth movement as you need it.

Wednesday, January 06, 2010




MY TIPZ TO DEMO REEL CREATION

It seems every time I roll around to creating a new reel, I get cracked in the face - always forgetting frame rate, resolution output ETCETCETC!!!!
I am going to throw down what I know because the game has changed compared to 10 years ago.


3D - RESOLUTION SHOULD BE 16x9!! NO ONE USES 4x3 TVs ANY MORE!!!
I'm saying really obvious things here but I always forget. Render at 720x405 or 1280x720 or 1920x1080. Whatever. As long as it's 16x9. Set all of your software to this resolution (Maya/Premeire/AEffects)

3D - ANIMATION SHOULD BE RENDERED AT 23.976 FPS -
For some reason in the past I thought that rendering 30 fps would generate better results because television ran at 30 fps (well.. 29.97 fps.)
NO! If the final output device is DVD, then output your DVD at 23.976 fps and let the DVD/Blue ray player add 3:2 to it (ups it to 29.97fps) as it plays on your TV.

Composite and edit your footage at 23.976 FPS compositions (obvious). If you have 30 fps footage and need to down it to 23.976 then apply a time stretch of 80% to it in After Effects.

USE TMPGENC DVD AUTHOR FOR DVD CREATION - So far is the easiest DVD outputter software I've found. Just export you final edit out of premiere pro as an uncompressed .AVI and TMPGENC will mpeg it and burn it out for you.

WEB - I'll output a smaller res uncompressed .AVI say 480x270 (16x9) for the web. I'll pump that through flash encoder or sorenson squeeze (quicktime) for the compressed file.



Saturday, January 02, 2010


SHOT 30FPS AND NEED IT AT 24FPS?

EDIT: WOW even a better technique... http://www.videocopilot.net/preset/frame_rate_converter/

Here's a cool tutorial on a quick and dirty way to convert 30i footage to 24fps in After Effects.

http://blog.jrnielsen.com/2009/05/convert-30i-footage-to-24p-with-after-effects/
http://www.youtube.com/watch?v=TxdTbZngslE

Friday, December 11, 2009


IXNAY ON THE RENDER PASS OCCLUSION RAY

Alright, the problem with maya's built in ambient occlusion render pass is that it offers no control over it! It's just a blanket setting that eats up render time like mad. It's about 5 times slower than setting up the mib_amb_occlusion node to a surface shader. Lame I say!

So keep with the method of setting up a render layer, piping the outValue of the occlusion node to the outColor of a surface shader. Assign it to all that needs occlusion in that render layer (play with samples value until you get a nice result) and render. Way faster.

Tuesday, December 01, 2009

Consistent MR mem crash tip

Whilst batch rendering a sequence I often find my render queue cut out on a certain frame. When I open it in Maya and try and render that frame, Maya will cut out and crash as well.
The Culprit:
MR approximation editor min/max subdivisions set too high. Lower that tesselation down and MR should be able to chew it.

Thursday, November 26, 2009



FOG LIGHT/GOD RAYS IN MENTAL RAY

Of course, it's not easy as with most things in MR but here it is.

1. Create a poly object (cube) which will act as a 'container for your fog.
The smaller the container the less calculations Maya has to make.
2. Create a light that will be your fog light. Turn on raytrace shadows with trace depth 5.
(use MR lights for cooler results, i.e. attach a physical light to a spotlight)
3. Make sure your objects are within your container.
4. Create a shader (lambert) that you will apply to your container.
5. Open the lamberts 2sg node and hook a transmat node to it's MR custom shaders
-material shader and shadow shader. This will make the container's geometry
invisible to the renderer.
6.Connect a parti_volume node to the volume shader slot.
7. Turn up the parti_volume's scatter a bit.
8. In the parti_volumes attributes, link your light to it through the light linking
drop down.
9. In your render globals, Features...turn on auto volume volume samples 8.
10. Under quality, Raytracing...turn shadows up to 6.

There it is, your 10 steps for a simple effect. Now tweak your parti_volume
node to death and have fun ! (Min Step Len lower makes fog less grainy)
Those render times are gonna be pretty harsh!

Friday, November 06, 2009



EDIT EDIT EDIT ** ALTERNATE VECTOR BLUR METHOD

Sure enough bloody Mental Ray lack of integration has done it again...and
MAYA HAS IT'S OWN LM2DV SHADER ---- HELLO 64 BIT VECTOR RENDERING
Well the geniuses at Autodesk have hidden some very good shaders called MIP. shaders
the one we want is called mip_motion_vector.
http://www.pixelcg.com/blog/?p=528

To enable them in the mental ray shaders GUI under materials and output shaders
go into your mentalrayCustomNodeClass.mel file in (in ../scripts/others)
http://forums.cgsociety.org/showthread.php?f=87&t=541718&page=1&pp=15

Edit: It came to my attention there is an easier way of exposing these shaders
in your script editor type
optionVar – iv “MIP_SHD_EXPOSE” 1;
restart Maya and the shaders will appear !

VOILA
your own shader group that you paid Autodesk for but they didn't want you to have it.
NOW
In the mip_ node Connect the message to mental ray miOutputShader node of whichever camera you are using via the connection editor-
you have a perfectly working LM2DV shader. Don't forget to enable vector and depth in the Legacy Output Shaders in your camera's attribute editor. Also enable motion blur with
equal shutter values as you would for the LM2DV shader.

NEW RSMB MBLUR VECTOR TECHNIQUE

Well, seems that the LM2DV shader for rendering out motion vectors is kaput. The guy who developed it has changed his website...BUT

Innovation has arrived. Seems you can render out a 2d vector pass with Mental Ray's output passes that are actually better. Here's the tutorial.


http://aloedesign.com/2008/12/maya-2d-motion-vectors-tutorial/3/
Font size

Thursday, November 05, 2009

MUDBOX TIPPAGE

Always have trouble extracting displacement maps from Mudbox.

* Always model quads. Mudbox calculations hate ngons & Tris.
* Check for non-manifold faces. Destroy them.
* Make sure UVs are clean and that shells have some distance from eachother.
* Use as few UV shells as possible. Map extraction is slow with many shells.

Wednesday, November 04, 2009

WIREFRAMING A SUBD OBJECT

This one is a bit of a hack because it's hard to render a subD wire object with backface culling.
Contour shader only wires polys and the the hardware buffer sux at culling.
Basically we create the wires by saving a playbast.

1. Apply a black shader to your object.
2. Turn on 'wireframe on shaded under shading.
3. Turn on 'smooth lines
4. Adjust 'thicker lines
5. Playblast out your animation and save it to whatever resolution you need.



MAYA WIREFRAME RENDERING VIA MR CONTOURS

Here's a cool wirefframe render technique.

1. Apply a shading map shader to an object.
2. In the SG material node, check enable contour rendering under the mental ray tab.
3. Enable contour rendering under the Render Settings/Features/Contours.
4. Crank over sample.
5. check "Around All Poly Faces" under Draw By Property Difference
http://img261.imageshack.us/img261/9059/contour.jpg
OR
http://ashutoshjha.org/tutorial/wireframe-render-in-maya.html

Friday, October 16, 2009

nCloth Scale

How many times have the endless channel boxes of nCloth wasted my time....? Well here it is, if you are working in centimeters and have cloth no bigger than a meter square, you're fine. Continue.
*If you are working on large pieces of nCloth then the SPACE SCALE value on your nucleus node needs adjusting. Smaller values for larger cloth. ALSO your LIFT attribute on your nCloth node has to follow that too. For example if your space scale is 0.01, then your lift should be 0.001
*Any turbulence fields need exponentially higher values as well.

Saturday, July 18, 2009

ANI-TECHNIQUE

Woah long time no update. Well, just figured out a nice and natural way to scrub animation while working. Map the 1 and 2 keys of your keyboard to frame forward and backward. Now with your left hand you can 'flip drawings' so to speak while you animate. It feels comfy and if you are a gamer most likely very natural.

Wednesday, April 29, 2009

UV CHARACTER AFTER RIGGING

Interesting technique I found on a post

Here is the message that has just been posted:
***************
eg: UVing after rigging the character

Just make a duplicate of the rigged mesh , preferably before you rig the character
Lay out the uv's on the duplicated mesh

after rigging the character , plug the last piece of history (of the copied mesh)(the last node before it goes into the shapeNode) into the first meshshape in the "hierarchy" (hypergraph) (normally called something like "meshShapeOriginal" , if the rigged mesh is called "mesh") output or outmesh --> inmesh

and then break that connection again.
Your mesh will be updated and no history will be added to your rig

I normally use this method for mesh changes aswell , if you add new points to the mesh , those points will just have to be added to the skincluster.

(and that is the reason why I use a wrapDeform for the face , then changes to the mesh wont screw up my blendshapes)

Monday, March 23, 2009


SCREEN CURVE DRAW TOOL annotatepro

This tool is kinda like the grease pencil script which I can't find any more. It allows you to draw on top of any application. Kinda like a top layer. Comes in handy while checking your arcs whilst animating.

http://www.annotatepro.com/

Thursday, January 22, 2009


LOVIN THE "3" KEY

It's just a matter of time before Maya takes the cool things from other packages and implements them. One of the things I liked about Lightwave's modeller was the ability to sub-d preview and render objects at render time by pressing TAB (I think it was). I was playing around with maya 2009 and it seems that by pressing the 3 key and rendering with MR.....bamM!!! smoothed sub-d proxies woot! And if you want to 'freeze' the object into a high poly version, just

Modify/Convert/Smooth Mesh Preview to Polygons

Sunday, January 18, 2009


FREE KNOWLEDGE

Here is a website by an artist called Neil Blevins. Although 3dMax centric, there is a lot of information about taking real world properties and translating them into 3D. Very good stuff.

http://www.neilblevins.com/cg_education/cg_education.htm

Fresnelly Reflections.

I couldn't remember the old trick to input a sampler node's facing ratio into a ramp for fresnel relfections. I'm working on a project with a lot of anistropic shaders and in my opinion, the MIA material X is lacking in specular highlight control.

Found the ol' trick over here....

http://forums.cgsociety.org/showthread.php?f=87&t=350691&highlight=fresnel

Tuesday, December 30, 2008

DEMO REEL CREATION

This is just a self reminder of things I always forget when creating a demo reel.

**FRAMES PER SECOND!!!! 24, 30 - SET IN MAYA - RIP FROM NTSC NOT PAL

** TV SAFE ZONES!!! SHRINK FOOTAGE IN PREMIERE

** LEAD TIME AND END SPACE - LEAVE A FEW SECONDS OF BLACK FRAMES AT START & END

** USE GOOD DVD AUTHOR SOFTWARE. TMPGENC DVD AUTHOR IS BEST!

Tuesday, December 23, 2008

MENTAL RAY TRIX

That I always forget. As we all know, MR in a 32 bit situation cannot handle complicated scenes. A neat feature in Maya 2009 is an :
*auto conversion of texture files to .map files. If you are using big textures, the .map hack is now available under.....

SETTINGS/PREFERENCES / SETTINGS / RENDERING / use optimized textures (auto conversion)


***And here is a great little utility to convert all of your textures files to map files within maya itself. All you have to do is select your textures and it will bake them and re-associate them for you. Awesome.

RIESS_IMF_COPY_DOWNLOAD

Wednesday, November 26, 2008

AUTOSPIDER RIG TUTORIAL

An interesting way to make a 'pull toy' spider with set driven key legs using offsets.

http://www.pixero.com/tutorials_spider.html

Thursday, October 30, 2008

CREATING nCLOTH UV'S BEFORE DEFORMERS

well, have you ever created Ncloth and found that your UV's are sliding like they are being projected? The problem is, you need to create your UV's BEFORE you create your cloth. If you find that your UV's are after your cloth in your history stack, don't dispair.

1. Select your cloth and delete your uv's
2. under nMesh hit 'display input mesh' -this will display your original object before it was clothed.
3. Apply new uv's or transfer to this object and voila...your uv's are pre-deformer.

OR

1. Duplicate your cloth object.
2. Delete it's history.
3. Delete cloth's post deformer swimming uv's
4. Transfer the uv's from the duplicated object to your cloth

Friday, October 10, 2008

MOTION PATH VIA IK SPLINE

Interesting technique, using the 'offset' value of an IK spline to drive
a series of bones along a motion path curve. Of course..it doesn't work
on a curve on surface which is what I'm trying to figure out.

http://forums.cgsociety.org/showthread.php?f=88&t=259168&highlight=motion+path+tail

Flow object on a motion path curve on surface stretches the object like mad.

Wednesday, October 08, 2008

RECORDING AUDIO FROM ANY VIDEO

Sweet. Not really to do with CG but ever watch a youtube video and want to
rip the audio from it? I do all the time. Here's a sweet tutorial
on how to do it. *he rips to .wav but you can use other recording
software to record to MP3.
http://www.youtube.com/watch?v=zg3vs7oh32s

Wednesday, September 17, 2008

STUFF LEARNED ABOUT OBJECT TRAVEL ACROSS SURFACE

Oh dear...
Sometimes trying to acomplish the most simple things leads to many discoveries about the tools that you use. I will most definitely have to catalogue this because I don't want to have to figure this out in the future....

Techniques to have multiple objects travel across a surface in random different directions while obeying surface normals and directions.

My first intuition was to run random instanced particles across a surface and somehow stick them to the surface. This can be done. Make a surface live, sketch particles on, throw down some gravity and get those particles moving...
*but what if you need to direct those particles and also have them 'stick on'? Gravity will tell them that if they hit an edge, to fall off the surface. Plus with fields, you can't direct particles as precise as a picky client wants them :)
So I figured, why not make the surface a goal? Great! So the particles move towards the vertices of the surface. As well, you can randomize those final goals with GoalU/V expressions.
*problem? Yes. If you have particles on a curved surface they will pick a goal but will not travel across it. It will pick the shortest line to that goal and intersect with your GEO. Of course...you haven't told your particles to obey a surface.
This is where ClosestPointOnSurface node comes in...what is this?
It's a node that isn't very documented or implemented (or user friendly for that matter) in Maya that allows an object to query where the closest point on a surface is at any moment and use it's info for whatever purposes one needs. So what you can do is have the instanced particles "ask" maya at every frame "where is that point on the surface I am travelling across - oh there it is, let my position stick to it".
*problem? Yes. This method doesn't tell the instances to rotate themselves based on the surface normals! So you have objects that flow across a surface with their back always facing straight up, even if on a hill.
Well, it seems that some people have gone as far as to use an aim contraint, with some intense expressions, tell the instances to aim their backs towards a normal that is tied to the aim constraint...but at this point I said "I'm an ANIMATOR not a Fu@ki# code alien" and gave up.

*Maya and objects travelling across a surface in random directions...obeying normals - NOT an easy task. This is obviously why there are expensive crowd simulation tools to do this.

TECHNIQUE

*Good old motion paths.

1. Create a nurbs surface with as many bumps or curves that you need.
2. Create your object that you want to animate.
3. Make your surface live.
4. Draw a curve anywhere on it. This curve becomes a curve on surface. Editable
and moveable across the surface.
5. Attach your object to the motion path using 'normal' as your world up type.

There it is. A completely animateable surface object towards any goal, following
normals, completely directable and editable.

Needs 1000's like an army? Just duplicate the curve and object with input
graph selected and randomize as you duplicate. The nice thing is that the curve on surface
follows the surface at all times.

TECHNIQUE #2

Normal and geometry constraints.

1. Create your object and your surface.
2. Group your object and goemetry and normal constraint the group to the surface
so that you can rotate your object on it's local Y axis as well.
3. Your rotation might be off but no problem. Rotate the child object or move it
to align to surface.
4. Move and animate your object across the surface!

* the only problem is that if your surface's normals are weird, your object's
rotation may be affected. Good for flat to moderately curvy surfaces.

Friday, September 05, 2008


PROPER HIERARCHY FOR SCALABLE SPLINE IK

Friday, August 29, 2008

FLASH RANT

Arrgh. When I learned Flash about 10 years ago I thought "wow, this package has a lot of potential". I've just picked it up to re-do my website and I am shocked at the lack of user
friendliness. Making a simple hyperlink to a button involves a ridiculous amount of
scripting in "actionscript". Now I am all for having scripting in software however simple
functions should be script invisible to users. Or accessible via a script history.
All easy html funtions should be button or menu driven.
And AHH! Having to copy every little detail to every keyframe if you make changes. No way to batch
copy attributes or 'apply to all keys'. No linking or referencing Photoshop files which sucks when you want to
change layer details. No global resizing without crunching bitmap edges.
Anyway, popping up a window is a lesson in patience but here's a link

http://www.flepstudio.org/forum/tutorials/649-opening-popup-flash-cs3-javascript.html



Tuesday, August 26, 2008

ALPHA TRANSPARENCY WHEN IN FRONT OF PRIMARY VIS OFF OBJECTS

Absolutely insane amount of time wasted on this one. If you have objects mapped with transparency and there are objects behind it with primary visibility turned off...the alpha in mental ray will pick up that invisible object. Really silly bug. Solution: hide the invisible object instead of primary vis.


Wednesday, July 16, 2008


PATH ANIMATION WITH DEFORM

Nice. For those path animations where you need the object to bend along the path like for example a snake, worm, tail etc etc.

1. Bind your object(s) to a joint chain
2. Create a spline IK solver
3. Cluster the IK curve
4. Attach those clusters to a motion path
5. Offset each cluster's U value by 1 successive frame down the chain

Now you have each cluster following the motion path, driving the spline
IK deformations. Sweet!

Thursday, July 10, 2008

BAKING CYCLED CURVES
I know this feature has been around for a while but -
too damn cool again. Finding the right tools implemented in software when needed makes it all that much more exciting.
Ever want a character to walk 5 steps in a cycle, stop then start walking again - without TRAX? Well you can bake out a cycled curve by using your bake curve tool and checking on the sparse curve bake option.


CURVES/BAKE CHANNEL OPTIONS/SPARSE CURVE BAKE

Sunday, July 06, 2008

AHH COOL!

new tool discoveries always get me excited. In Maya 2008 one can now move joints around after binding. When you exit the tool, it re-enables the skin.

EDIT SKIN/MOVE SKINNED JOINTS TOOL
PAINT WEIGHTS PROBLEM

For some reason, a rig I was working on all of a sudden stopped working with the paint weights tool and no vertex info would show up in the component editor. No color feedback in the tool either. ERROR: value is out of range 0 would show up when trying to export weights or paint.

I have no clue what happened but the fix was

DELETE ALL BY TYPE/NON DEFORMER HISTORY

Also I figured out that the skincluster node for the bind had lost all of the relationships to it's
vertices. It was an empty deformation node. So I added them all back in with the edit membership tool.

Also had to hack to remove history and get a clean unbroken bind....


- duplicated the bound mesh in it's bind pose.
- smooth bound the duplicate to the skeleton.
- used the "copy skin weights" to transfer it to the duplicate.
- purged the history of the original as needed.
- after everything is done, rebound the original to the skeleton.
- used "copy skin weights" to get them back on the original mesh.

Thursday, April 17, 2008



ANZOVIN FACE STUDIO

I really like this style of face animation. It is more definable than
preset blend shapes.

http://www.anzovin.com/products/tfm1mayaFeatures.html

Monday, February 18, 2008


SOFT MOD FACE RIG TUTORIAL

I came across an old method of face rigging that I still think is kinda cool. All the riggers these days use clusters with painted weights but I thought I'd put the Soft Mod tool to use instead...

http://www.cronimation.com/SoftFace.html

Cronin's 12 FPS animation method

Well I wanted to come up with a way to animate within Maya on twos (every frame holds for 2 frames) then render out properly at 24 FPS without having to key every pose twice. I suppose one could animate at 24 fps and key every second frame twice.
I decided to animate in Maya at 12 fps and set the render settings to render out twice as many frames, each keyframe duplicated. All done at render time. And here's how to do it.

1. In your preferences set the maya scene to 12 FPS.

2. In your globals set the 'by frame' to 0.5 - this will render sub frames inbetween (twice as many) i.e. frame 1, 1.5, 2, 2.5 .Maya will name the sequence properly.

3. For the subframes to be duplicates of the keys, they need to be the same values as the keys before them. Every frame needs a keyframe and every curve has to be stepped. This means we have to bake the animation curves and set them all to stepped before rendering.

4. Handy little MEL script to do that?....yes (the first part selects all objects that are animated)
Put this script in your scripts directory.

global proc bake() {
select -cl;
$sel = `ls`;
for( $s in $sel ) {
float $info[] = `keyframe -time ":" -query -timeChange $s`;
$si = size($info);
if ($si>0) {
$nt= `nodeType $s`;
if ($nt!="objectSet" && $nt!="animCurveTU" && $nt!="animCurveTA" && $nt!="animCurveTL")
select -tgl $s;
}
}{bakeResults -sampleBy 1 -preserveOutsideKeys 0 -sparseAnimCurveBake 0; keyTangent -e -ott step;}
};

SCRIPT TO BAKE JUST SELECTED OBJECTS WITHIN MAYA:

global proc bakeselected(){
bakeResults -sampleBy 1 -preserveOutsideKeys 0 -sparseAnimCurveBake 0;
keyTangent -e -ott step;}

5. Additional advanced trick...one wouldn't want to bake all the channels, render, then find mistakes on your saved file - all of your curves will be littered with keyframes which would be hell to fix. You could save out baked files but that's not efficient. There is a way to run this MEL at rendertime only. In render settings under common/render options you will see a Pre render MEL slot.
Slot this little command in there and it will run the bake script at render time ....
*remember to remove it when test rendering in Maya or you will bake while working on the file.

source bake; bake()

Bamm, work within Maya at 12 FPS (twos playback) and render out at 24 FPS with doubled frames.
Need some frames on ones? Well you can hack them out in editing like we did back in the old linetesting days. OR
set your preferences to 24 FPS (all of your single keys will now take up 2 frames) and put your desired frame on ones. Look fine at 24 FPS? Switch back to 12 FPS and your one will now be on a subframe, thus you'll render key1 and the next subframe will not be a duplicate, it'll be your 'one'. Basically switching to 24 FPS gives you access to control your subframes at 12 FPS.

Toggle 24FPS Mel paste this as a button-->
currentUnit -time film; //24 fps
Toggle 12FPS MEL
paste this as a button--> currentUnit -time film; //12 fps
R.

Sunday, February 17, 2008

CHARACTER MAP

Well...not really a Maya trick but hey ...just learned this via google. Ever need those fancy characters in your text like

¢ ß Ć ® § Đ

Well they are all accessible in windows character mapper. start menu/all programs/accessories/system tools/charater map
Useful for photoshop text or Maya bevel text.

Wednesday, February 13, 2008


Attr & SDK COPY/PASTINGZ

Some lovely tools in Maya's included bonus tools that allow quick and easy duplicating of attributes and driven keys. Under the animation tab we have 'replicate attribute' for all of those cool attributes you add to your rig. Simply
select the object that you want to paste to, shift select the object and attribute
channel of the object that has the custom attribute and hit 'replicate attribute'.
Done.
For set driven key transferring, a dialogue box pops up with 3 input boxes.
1. Set Driven Key Source - the channel that is being driven on the completed object (i.e. pSphere1.rY).
2. New Destination Driver - The driver object channel/attribute of the incomplete object. (i.e. pSphere2.bender)
3. New Destination Driven - The driven channel of the incomplete object. (i.e. pSphere2.rY)

Hit copy and you are done. No more manually setting up millions of similar rig attributes and controls.

Thursday, August 09, 2007

UPDATE

Even better, here's a copy, paste keys script that should have been a Maya basic years ago...

http://www.highend3d.com/maya/downloads/mel_scripts/animation/copyKey2-639.html

COPY CHANNEL ATTRIBUTES SCRIPT


Some of the smaller things that maya makes difficult are sometimes annoying. Here's a script that will copy all selected attribute channel values from object A to B.

global string $gChannelBoxName;
string $attrList[] = `channelBox -q -sma $gChannelBoxName`;
string $sel[] = `ls -sl`;
string $attr;

for($attr in $attrList) {
setAttr ($sel[0] + "." + $attr) `getAttr ($sel[1] + "." + $attr)`;
}
;

Friday, July 27, 2007


DECENT QUADRUPED RIG TUTORIAL

CLICK HERE FOR TUT

Monday, July 23, 2007




SNAPPING TRNS, ROT, SCALE, PIVOT FROM ONE OBJECT TO ANOTHER

With 'snapMe' mel script one can easily do what should be a simple default tool in maya...matching one object's pivot to another. Just type in the setup for the script and it creates 4 hotkeys for you. Just select object 1, then object 2 - hit your hotkey and bamm, pivot is matched. (or trans/rot/scale depending on what you want.

http://www.highend3d.com/maya/downloads/mel_scripts/modeling/misc/download-4757.html?loc=snapMe.rar

Wednesday, June 27, 2007


USING THE MEGATK SHADER TO OUTPUT MULTIPLE PASSES IN 1 RENDER


This is a fantastic universal shader that allows you to shade multiple attributes then output passes through a buffer writer. You have to assign the shader to all objects needed for passes, then assign a light shader to your lights and finally write out a buffer on a dummy object.

The full documentation and tutorials are here...
http://www.puppet.cgtalk.ru/shaders_p/docs/

p.s. Why didn't they implement output passes for the new mia shader!!! There is a mia_wrapper out there but you still have to hook it all through the ctrl.buffer shader. Fix render layers Autodesk!!!

Wednesday, June 20, 2007



JOINT SELECTOR

Here is a way to select joints via a control object when rigging a character:

create a control object and parent it to the joint, freeze its transformations (the object not the joint) now select the objects shape node (not its transform node, below that) AND THEN the joint, and run the following mel...

parent -r -s;

now that joint has a shape node, selecting the shape will select the joint.

Tuesday, June 19, 2007


MENTAL RAY MEMORY SETTINGS

You must set the memory limit manually by turning off the Render Settings -> Batch Render -> Options -> Memory -> Auto Memory Limit. Then you can specify the memory limit manually. If you are rendering under Windows XP 64bit there is another issue with automatic memory which maxes out at the limit of the 32 bit version of the OS.

- or -

Either on the render Options or (when you use the commandline renderer with Render -r mr) by doing this:

add this line to the mrRenderer.xml file in the Maya8.5/bin/rendererDesc/ directory (C:\Program Files\Autodesk\Maya8.5\bin\rendererDesc on Windows)



Now you can specify the limit in the commandline:

for example

"C:\Program Files\Autodesk\Maya8.5\bin\Render.exe" -r mr -v 5 -jl 4000 "C:\Shared\maya\projects\myProject\scenes\myScene.m b"

*TIP : Under MR globals/translation/performance you can check EXPORT OBJECTS ON DEMAND which apparently only loads objects if they are hit by a light ray.

*TIP : Type select mentalrayGlobals to select them. Under it's Extra Attributes you will find Memory Zone slider. It is set at 20 which means MR will let the render go 20% over your memory limit. Crank it if needed.

Friday, June 08, 2007



USING RAY TYPE SHADER TO EXCLUDE OBJECTS FROM RAY CALCULATIONS

This shader can be assigned to surfaces to control reflection, refraction, light, shadow, environment, final gather, photon, custom. For example, to cast FG to a surface but have reflections from another surface...

*On your IBL, turn off visible in reflections

-assign a surface shader to your reflection poly sphere

-set the transparency of the surface shader to 1
-assign to the "ray type" node to the color of the surface shader (you will find it under mental ray/ miscellaneous)
-check "enable reflection" and "enable refraction"
-set eye to black
-assign a maya native envirnemnent map (or a reflection map) to the reflection and refraction slot.
-don't forget to turn off the secondary reflection of the IBL and thank the mental ray guys for offering super mega amazing complexe hypertechnical plugthisandtwistthat long workarounds just to achieve a simple effect.

Thursday, June 07, 2007

NOTES ABOUT MR GAMMA

http://forums.cgsociety.org/showpost.php?p=4141325&postcount=37

Tuesday, June 05, 2007


GREEBLE SCRIPT

Greebling is a technique to procedurally generate boxy relief. For example, adding all kinds of panels to a spaceship or building the base for a city. One of these scripts for Maya is called Degreebler...
http://deesine.grafikfel.org/DeeGreebler/index.html

Wednesday, May 30, 2007



CAMERA SHADERS

zDepthDOF Shader: http://homepage.mac.com/bauer/portfolio_shaders/zDepthDOF/zDepthDOF.html#Download

Arpeture Lens Shader:
http://www.lightengine3d.com/downloads/plugins/aperture/docs/aperture1.0_docs.html

Lenscare post DOF AE plugin
http://www.frischluft.com/lenscare/lenscare.php


PHYSICAL SUN AND SKY WITH FG

This will be a running journal of mental ray's new physical sun and sky in maya 8.5.

In Maya 8.5 , go to your render settings and in the mental ray tab under environment you´ll find Physical Sun and Sky - hit create ( also make sure you enable FG )

* What happens when you hit the Create button? A directional light is created with a mia_physicalsun attached to it's mental ray light shader slot. This light will mimic the sun and yep, to the point where when you rotate the light the light will adjust to obey physical sunlight. Also, a mia_physicalsky is attached to the environment of your camera, simulating sky and atmosphere. Lastly a lens shader named mia_exposure_simple is connected to your camera.


By default you´ll get a very accurate rendering of a daylight scene

*To add clouds to your sky, plug a spherical environment map into the haze parameter of mia_physicalsky
http://mentalraytips.blogspot.com/

*Sky Textures http://www.1000skies.com/

http://tutorialscentral.com/index.php?option=com_content&task=view&id=57&Itemid=1&limit=1&limitstart=0

Tuesday, May 29, 2007


GLASS SHADING WITH L_GLASS SHADER

Download this badboy mental ray shader from

http://yashu.go.ro/

It is a modified Dialectric material more suited towards glass attributes. Cool frosted glass can be achieved as well. A good thread on the shader lies here...

http://forums.cgsociety.org/showthread.php?f=87&t=334264&page=1&pp=15&highlight=lglass+shader

***Note: For transparent shadows, you need to hook a mib_shadow_transparency node into the MR shadow shader of the SG node of your Blinn. Set the mode to 1.

***To see your shadows through the glass hook a mib_light to the light shader slot of your lights.

***Video Tutorial http://www.deathfall.com/tutorials.php?op=showcontent&id=83&page=5

***Tutorial http://deathfall.com/modules.php?op=modload&name=XForum&file=viewthread&tid=1654

Thursday, May 24, 2007


DRIVING A RIG'S DEFORMATION WITH A DRIVER MESH

Here is a system that one might use if you have to tie clusters or other deformers to a rigged model. You duplicate off the model at the origin, plaster your deformers on it, and use them to drive the deformers/controllers on the rig. This way you dont need to worry about coordinates or deformation order.

1. Duplicate off the mesh at the origin
2. Select the shape node of the driver mesh through the outliner
3. Shift select the node on the driven mesh that the shape orig plugs into (tweak node)
4. Graph them in the hypergraph and get the connection editor up for those 2 nodes
5. Connect the worldmesh(0) of the driver mesh to the tweak node's inputgeometry node on the driven mesh
6. Add all of your deformers to the driver mesh
Done

Tuesday, May 22, 2007



POST BINDING JOINT MOVING AND MODEL CHANGING

My Gawd, why I have just learned this and was not aware of it years ago? Never mind exporting skin weights, detaching, adjusting then re-importing weights.

*Simply detach your skeleton with the 'keep history' option on, adjust, then re-bind. It keeps all of your rig's info.

http://www.cronimation.com/rig.swf.html

Monday, May 21, 2007


O.T. ADDING A HOTSPOT CLICK TO AN IMAGE

Inserting a hyperlink into an image...
Is the following html code into the body


3 BONE BICEP SETUP FOR TWIST MINIMIZING

Here is an arm setup which uses a control joint to drive 3 joints from the shoulder to the elbow using a multiply/divide node. This will lock the shoulder twisting and disperse it through the bicep.


1. Select joints you wish to link the roll (x) to - shoulderControlJoint, bicepJointA and bicepJointB
2. Open the hypershade
3. Click on the "show upstream and downstream connections" icon to show the shoulderControlJoint bicepJointA and bicepJointB in the hypershade.
4. Create a "multiply Divide" node (Create>General Utilities>Multiply Divide )
5. Change "input2 X" on the multiply/Divide from 1 to .5 (since we are halving and the node is set to multiply)
6. Now middle click drag and connect the "Rotate X" of the shoulderControlJoint to the "Input1 X" of the multiply/Divide node. (This is the value that is going to be halved.)
7. Connect the "Output X" of the multiplyDivide to the "Rotate X" of each bicep bone. (This is the value after it has been halved.)



MIX8LAYER SHADER

A really cool layering shader that can be used to layer just about anything in Maya. Brilliant.
1. Drop down a Mix8
2. Assign it to Geo.
3. Base color should be a shader
4. Add in your layers

*To add a bumpcombiner to a mix8, connect these 2 nodes
Mix8layer.Outvalue -----> bumpCombiner1.m_input
Mix8layer.OutvalueA -----> bumpCombiner1A.m_input

Wednesday, May 16, 2007



LAYERED BUMP MAPS USING BUMP COMBINER

Download bumpCombiner for mental ray at...

http://www.highend3d.com/maya/downloads/shaders/2996.html

1. Open hypershade and create a bumpcombiner (bc) node
2. Assign it to the sphere.
3. Open the attribute editor for the bc.
4. Click the enable bump check box in the bump.surface section
5. Assign a material to the the ::surface.shader above (any maya material will work phong, lambert...)
6. map a maya 2dbump node to the ::bump.base
7. map a bulge texture to the bump value of the 2dbump node.
8. render with mr.



Layered Displacement Maps in MR for Maya

Very cool utilty node called mib_color_mix allows you to merge multiple maps and layer them based on a weight attribute. See Image.

Create Metal Ray Nodes/Data Conversion/mib_color_mix


MAYA TRIX

Welcome to My Maya trix blog. Quite often I find myself needing to re-teach myself certain techniques and wasting a lot of time doing so.
To put it simple, working in commercials, TV and film visual effects one can absorb a tonne of technical information. This will be a database of Maya techniques that I come across and catalogue for future use. Sometimes efficiency is key and you don't want to re-learn techniques when the time comes to use them. This is a quick access library for myself. If you can use any of it, go right ahead.