Dave Girard's 101 Autodesk® Maya® Tips is now available in Kindle, interactive iPad edition and DRM-free EPUB/PDF editions. Work faster, cry less. Read more about the ebook.

Follow cgbeige on Twitter

Topics by tag:

Recently published articles by Dave G:

Free downloads by Dave G:

Mac OS X-only downloads:

Pic of Me and Original Vice Magazine Crew

I’m packing up to move to San Francisco next week and found this old June 1999 issue of French magazine Max. They did a profile on Montreal and came to visit us at Vice Magazine when it was still based in old Montreal and when it was literally all the people you see here. I’m on the left next to Suroosh, one of the founders. I was the art director from 1999 to 2001.

1 note | Permalink

Pic Gallery of My Recent Show with Luc Paradis

We had a great turnout last week to the show last week – it was pretty packed for a while there – and here is a little gallery of the show. But first, check out my 2013 Mac Pro Oculus Rift kiosk:

Click any of the pics to see a high-res version. Screenshots from the Rift piece are at the end.

1 note | Permalink

ficoreloj asked: Hi! I came across your post about avoiding uv seams and i wonder if that method of putting the shells parallel to each other in uv space applies as well for lay-outing the uv's for humans? Because the uvs of a character is more complex, consisting of a number uv islands of different sizes in a single uv space. Will i have to square out some uv islands as well?

It applies to everything but it can be tough to align shell edges for all parts of a human model so I tend to only worry about it for highly visible areas and tuck UV seams in areas that aren’t usually visible like under the arm or the back of the neck, where they can align easily. Or you can use Ptex.

0 notes | Permalink

My Ars Technica Article on Creating a Small Mixed-Platform Render Farm

I wrote an article that should appeal to a lot of my readers – it outlines how to make a render farm with relatively modest means and with an outline of how to do it with a mix of Mac, Windows and Linux platforms. Read on!

2 notes | Permalink

Facer 3.2 Posted For Download

The 3.2 update to Facer is up on Creative Crash. The changelog:

  • Triangulate now works with multiple objects.
  • Delete Excess Vertices: Same as hitting delete key with vertex mode and all vertices selected.
  • Made the “3 length” normal button into 20 for viewport 2 since Maya 2015 defaults to viewport 2 and the normals are much shorter in viewport 2.
  • Now tags your last clicked button with a light purple and tags the second last clicked with a dimmer purple and the third-last with an even dimmer one so you can find recently-used button commands easier:
  • Added “Invert selection order” to scripts section. This reverses the order of your selection so that you can do things that require that first-selected objects be the source.
  • Make Shape Here script now has a planar sprite option for making planes that face the camera but that are positionally bound to geometry, for something like leaf cards.
  • Delete namespaces added to Clean-ups section. Deletes all namespaces.
  • NGon fast fix added to clean-ups. This is a workflow I use that extrudes the face and then merges all vertices of the extrusion. It’s good for stuff like poles:

1 note | Permalink

Two Simple Tips to Speed Up Work with Maya’s Node Editor

The Node Editor was one of the best things to get added to Maya in the past few years but I find that there are two things I usually do right away when using it for materials: expanding it to full mode and graphing the network, so here’s a simple tip to do both at once. Change your Node Editor Default node view mode prefs to “Full Mode” and then use this shelf command to load and graph selected objects when it opens:


Then you’ll be ready to start piping stuff together without any added clicks:

6 notes | Permalink

Be Careful With Those Maya FBX Exports

Yesterday I discovered a really nasty bug with Maya’s FBX export. If you export and overwrite a file but it crashes while attempting to save, it will simply zap your old file and save nothing in its place. Considering how much FBX export crashes Maya – sometimes I think it was a deal between Autodesk and fast SSD salesmen – that’s a huge problem. Most programs, including Maya’s save itself, are smart about avoiding this type of scenario and actually save a separate file and then move the other file into the place of the old one on successful write but this is an anomaly. I filed a bug report already. Hopefully it will be addressed soonish.

4 notes | Permalink

Mari Me 2 – a Full-featured Python Script to Send Painted Meshes between Maya and Mari

Now that Mari 2.6 and Maya 2015 are out, I think it’s time to release Mari Me 2 that is a complete rewrite of the MEL version that is now much more powerful than that old script was. Aside from being able to send stuff from Maya to Mari, the new version has a ton of little goodies that aid working between Maya and Mari without the need to look at a single dialog box. Mari Me 2 can both send and receive objects to Mari, updating metadata-tagged materials for identification across sessions. It works great as a quick way to jump back and forth for stuff like Mari 2.6’s texture transfer feature that bakes textures between different mesh topologies or UV sets:

The transfer feature is better than it looks from those results – I was just kind of lazy about my alignment of the two different meshes in Maya. Mari Me also has a smart way to update your existing materials that is renderer agnostic. It doesn’t care what type of material is used on the mesh and will simply update it based on the channel name within Mari. If your material’s emissive channel in Maya is “blinn1.incandescence”, just name the channel “incandescence” in Mari and when you send it back to Maya, it will link up to that channel in the material:

That’s why I created a AddNewChannel-VRayMtl.txt setting preset for standard V-Ray Materials that you can paste into the channel presets section your Mari.ini file – those are pre-named to link up with the slots of a V-Ray Material and it would be very easy to make one for Arnold, RenderMan, etc that you could share on the Github page. If you send a texture to Maya from Mari without having sent anything from Maya to initiate those material metadata tags, it will just import the textures and you’ll see the file nodes in the Hypershade. Mari Me’s metadata tags don’t create any sort of plug-in dependency so nothing will break and you won’t receive any warnings if you send a scene to someone without it installed.

Automatic UDIM sending and loading
Mari Me 2 has robust support for UDIM-tiled textures:

If you are running Maya 2015 or above, that supports the UDIM file name variable, Mari Me will use that instead of importing and manually tiling all the UDIM textures. It will also recognize these 2015 UDIM names when you send tiled textures to Mari. It should also work fine with multiple meshes and a mix of tiled and non-tiled UV meshes. I tried to make it smart enough not to break with these production workflow variables but it’s possible stuff slipped through so let me know if you see anything and I’ll see if I can find some time to fix it in the near future.

Alembic support
Mari 2.6v1 got support for Alembic animated meshes and the Python import syntax is the same as importing OBJs so I added support for exporting animated meshes from Maya to Mari via Alembic:

Other stuff
As you can see in the interface, there are a bunch of other little tools and tricks in Mari Me 2:

There are no file format options so everything is sent back and forth as TIFF, since that format can accommodate all bit depths and all working files are in a projectpath/MariMe/ folder so there is no risk of clobbering your existing assets.

Released under a BSD3 license
I started the Python version of Mari Me as a “Pro” version that was going to be monetized but decided not to after getting a new job that I’ll get into later. Because I’m going to be super busy with this new gig, I’m going to have to release Mari Me as unsupported but I released it as open source under the BSD3 license for studios or individuals that want to change the code and use it for their own and they can decide whether or not they want to fork it or not on the Github page for Mari Me:


The old MEL version is no longer on Creative Crash. Read the Read Me file because that explains the setup.

6 notes | Permalink

the-mastrogoblin asked: Batchrender’s OS X Mavericks Issue; Reading your article I found really useful informations to how resolve the problem and render even with Mavericks, but I didn't understand where I have to use the code to batch render.. Please Im a student and I need to render with mental ray can you help me?

save the MEL script to any of your Maya script folders (~/Library/Preferences/Autodesk/maya/scripts being the one that is accessible to all versions) and then enter this in the MEL command line at the bottom left of the window and hit enter:


That will initiate the batch render script. If you want to save a shelf item for it, look here: 


0 notes | Permalink

A Tip on Using Maya 2015’s Texture Deformer with Painted Masks

So Maya 2015 is out now on the subscription site and it gets a texture displacement deformer à la iDisplace, and I thought I’d show a quick workflow for using it with paint masking of deformer weights:

As you can see, it’s a great way to build procedural shapes with the friendliness of painted masking. If you’re using Maya 2014 or earlier, iDisplace is an essential (and free) plug-in that offers similar functionality, so go grab it.

0 notes | Permalink