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:

A Look at the Mac Version of Unreal Editor 4 

I’ve been working with the Mac version of Unreal Editor 4 for a week or so now and am really loving it. I had some experience using UDK3 found the workflow and interface less than great, and it seems they agreed with me because the changes in UE4, as far as workflow go, are almost perfect. And, even though there are a few bugs with the launch version that are being actively squished, the Mac version is no half-assed port. While gaming on the Mac will never replace gaming on the PC, Epic is clearly bullish on the future of Mac and iOS as gaming development and gaming platforms respectively.

Pretty much everything you want is there. Multithreaded light map baking, Matinee, Blueprints (the stuff that replaces Kismet), those GPU-accelerated particles with vector grid and collisions:

Performance looks worse in that video than it is due to a screencap / GPU combo.

You get that sweet shader editor:

Really nice Maya-to-Unreal material support so you can import one combined mesh into Unreal but still get all those unique shader references to edit or even replace:

Post-process volume with bokeh DOF and colour grading:

IES light profile support:

Global Illumination without tricks:

It all adds up to an impressive show considering they had to do this all for OpenGL:

The only noticeable omissions from what I can tell so far are:

- Displacement tessellation for OpenGL shaders
- Oculus Rift Mac Support (this is in Unity already so I hope this comes soon)
- The auto-UV reconstruction stuff isn’t ported yet

Edit: Unreal Me stuff removed
I took down the Unreal Me script because Unreal Engine now lets you import baked animation without bones with the following workflow:

1: Group your baked key animation objects in Maya.
2: Export to animated FBX 2013 with the group selected
3: Import the FBX with the following settings:

Make sure that Import Animation and Import Rigid Mesh is set. From then you’ll get your non-joint based animation imported correctly.

Oh, the joys of scripting for a program you’re still learning :p

3 notes | Permalink

Simple Snapshot Script for Automator to Back Up Your Script Work

I’ve been trying to finish up Mari Me and like to create snapshots when I think something’s going to break when cleaning things up, so I decided to make a simple snapshot script for Automator that prompts you for input for the name – “BEFORE_BROKE”, for example and then copies the current Mari Me files from disk to the snapshot folder:

I made a generic version for you to download here if you want it. Just replace the paths to the file and be careful to keep the ${1} variable in the script text since that’s the variable name that is passed from the dialog.

0 notes | Permalink

A Simple Fix for A Huge Increase in Performance with OS X and Large Maya Scenes

In my review of the 2013 Mac Pro, one of the biggest issue I had with the machine was the OpenGL performance and the showstopper was a set of videos that shows how bad the D700 GPUs perform with very large Maya scenes. Well, it turns out that this is due to a Maya bug – you’re surprised, I know – and there is a simple fix for Maya 2014. Just put this line in your Maya.env plain text file ( ~/Library/Preferences/Autodesk/maya/2014-x64/Maya.env):

MAYA_OGS_GPU_MEMORY_LIMIT=6000

That’s for the D700’s 6GB of VRAM. Obviously for your particular GPU, set it to whatever your GPU’s RAM is, or slightly lower if you want to be extra safe. Relaunch Maya and witness the result – a giant performance boost and near-parity with Windows performance:

Glad this was sorted out and this fix will be rolled into Maya 2015. Off to update the review…

3 notes | Permalink

Quick Look at Parallels Desktop 9 Enterprise

As you probably saw here or on Twitter, I recently got a new 8-core Mac Pro. Occasionally, I occasionally test scripts in Maya for Windows and do model conversions in Autodesk Max and sometimes use a Windows virtual machine to do it, even though I have a gaming rig that could be used instead. If you read my review of both VMware Fusion 6 and Parallels Desktop 6 on Ars Technica, you might have been able to tell that I prefer Parallels’ speedier and robust 3D support but envied Fusion 6’s support for 16 virtual CPU cores.

So Parallels gave me a testout of their Parallels Desktop 6 Enterprise edition that has 16-core support for this machine. So I quickly put it to the test with Cinebench to compare it to VMware and the host Mac’s score. Results (score, higher is better):

Native 8-core Mac Pro in OS X 10.9.1: 13.74
8-core Mac Pro with VMware Fusion 6 Windows 7: 12.99
8-core Mac Pro with Parallels Desktop 9 Enterprise: 13.05

Not bad and it confirm that this is still my all-around favourite virtual machine program for demanding 3D client applications and rendering. Max runs well:

If you are testing Maya scripts in Windows, the viewport 1 performance is okay too:

And the best thing? You’re literally running two OSes and two demanding 3D applications but multitasking is still better than when rendering on native Windows hardware:


Multitasking with no priority drop for the rendering. Dare to dream.

Sorry Windows users, but I had to. After the spate of questions about why I’d run 3D apps in OS X when the OpenGL performance is better in Windows, that should be answer enough.

Anyway, Parallels Desktop 9 Enterprise a $100/year and, while that is a reasonable price for the software, I hope they add it to the base non-Enterprise version because VMware’s Fusion is cheaper and doesn’t require a timed-out subscription to offer similar virtual 16-core support. But, if you need a 3D machine in a VM now for OS X, this is the best option.

0 notes | Permalink

My Review of the 2013 Mac Pro

So my very long review of the new Mac Pro is up on Ars Technica after extended testing with a ton of pro apps. Great machine but Apple’s job is not yet finished since the lack of dual CPU configurations and lacklustre OpenGL drivers make it tricky to recommend as a one-stop shop for all things 3D. The OpenCL scores are bananas though – you’d have a hard time finding a more capable machine for OpenCL-accelerated 4K editing in programs like Resolve or Final Cut Pro X.

And man, this thing is quiet and tiny:

3 notes | Permalink

Actually Empty Trash – Automator Workflow for OS X to Empty Trash if Items Are Open

The OS X Mavericks upgrade has been pretty painless for me but one thing that seems to be an issue is that QuickLook likes to lock onto files so they think they are open. It’s trivially easy to get the “File in use” error when trying to empty the trash now. Until Apple fixes it, you can try the Secure Empty Trash, but that will be slower since it does multiple passes to write zeros over the space on the disk where the file data was before. This is potentially more of a problem also, if you don’t have backups since a disk data recovery tool won’t find these files. So I made an Automator version of the two-line shell script I use to empty the trash in these cases:

rm -rf /Volumes/*/.Trashes
rm -rf ~/.Trash

That actually deletes the trash folder but the OS recreates one with proper permissions anyway. The Automator workflow can be downloaded here: Actually_Empty_Trash.zip

See it in action:

Use the Shortcuts panel of the Keyboard system preferences to add a hotkey to the service and you’re set:



The script is not dangerous and there is no way it will ever delete anything not in the Trashes folder but, nevertheless, it comes with no guarantees.

0 notes | Permalink

OS X and Linux Users: Remove the .mayaSwatches and .vrayThumbs Folders With a Shell Script

Maya and V-Ray leave material swatch previews strewn throughout your system, so I clean these out all at once every once in a while. With this single terminal line in bash, on both OS X and Linux, you can make a script that will be ready to remove the folders for you. For .mayaSwatches:

find / -name ".mayaSwatches" -print | sed 's/.*/rm -rf "&"/g' > ~/Desktop/delete_mayaswatches.sh; chmod +x ~/Desktop/delete_mayaswatches.sh

and for .vrayThumbs:

find / -name ".vrayThumbs" -print | sed 's/.*/rm -rf "&"/g' > ~/Desktop/delete_vrayThumbs.sh; chmod +x ~/Desktop/delete_vrayThumbs.sh

It will bark about not having permission to read some directories since you’re not using sudo but you don’t want to do it for all users and you don’t need to comb system folders for this anyway. The script itself doesn’t do anything until you run it in the terminal, and you can open it in a text editor to verify that nothing harmful is done by it:

Nevertheless, this post comes with heaping portions of “use at your own risk.”

After you’re confident that it’s not going to nuke anything you don’t want to nuke, drag the script into the terminal window to run it. Wait for it to finish and those folders will be gone.

4 notes | Permalink

barbl99 asked: I am sure I am going to appear to be an imbecile with my question(s). I am beginner level-BRIGHT GREEN-to animation. Was enrolled in a web design program , did a flash animation, loved it,switched programs. Have an iMac, now being told I should buy a PC? "You won't be able to use ParentMaster plug in for Maya to attach/detach", "everyone in the field uses PCs not Macs". I don't even know (yet) half of what they're talking about. Is there a resource for a blank slate like me on this? Thank you

Everyone is biased to what they use so it’s going to be hard to get honest feedback for this question. I use Maya on all three OSes often and learned Maya in Windows back when it wasn’t available on OS X and then switched to the Mac version. But the “everyone uses X” is actually a lie. The majority of independent Maya users are on Windows but if you work in the 3D for film/VFX industry, that is dominated by Linux. Technically speaking, that’s a majority of users on PCs but that’s not a reason to pick a platform. Maya plug-in availability is better on Windows but it sounds like you’re learning and you should try to avoid solving problems with plug-ins while learning because it creates a dependency on them and sometimes they stop getting updated. That’s one of the reasons I’m looking forward to V-Ray support for XGen – waiting months and months for Shave and a Haircut update for the latest Maya version is a pain in the ass. 

But the Parent Master script you mention works on all platforms and scripts don’t tend to break with new Maya versions like plug-ins do, so go ahead and use it and other scripts. If you see a script on Creative Crash that says “Windows” as the only supported platform, that’s probably untrue since it’s very hard to make a script that doesn’t work on all three platforms. It’s just that the person who wrote the script only tested it on Windows, so they don’t want to write “works on OS X and Linux” without having tested that. 

But use the platform that you want to use. If you like OS X, use OS X because you’re going to be a lot unhappier using Windows as a Mac user than you are going to be as a Windows user with a few more plug-in and hardware options. If you want to build a PC to help with final renders, go that route and use the Mac for your workstation/host machine. I did that and there is a guy on Creative Crash doing exactly that here

I have a Linux render slave box that doubles as a Windows gaming machine and V-Ray’s automatic asset transfer in recent nightly builds means that I don’t have to care about sharing texture directories (this is coming in the official 3.0 release). V-Ray Slave licenses are also free. After tedious issues with using Windows as the slave OS (fans constantly spinning up and spinning down like a man catching his breath), I stopped running it in Windows and only run that for games. So this is what my desk looks like right now:

OS X at the left, Linux at the right.

Every platform has it’s strengths and weaknesses.If you read my article on creating the ultimate creative content OS from parts of Mac OS X, Windows and Linux, you’ll get an idea of the strengths and weaknesses of each platform. Linux and OS X are far better at multitasking than Windows (you can work while you render without having to drop process priority or give a CPU core to other tasks), Windows has more 3D programs but, if you need to use a Windows-only 3D app infrequently, a virtual machine works fine. My Max model conversions for Turbosquid are built and rendered in a Parallels Desktop VM. 

If you want to learn about what is used in the industry, that is easy. If you work in game development, it is completely dominated by Windows, but even Windows 3D game development people curse that dependence:

If that guy had the option to do game development on OS X, he probably would. A Unix OS like OS X will actually be closer to what they use in larger companies in the VFX industry, which is completely Linux dominated. If you learn how to do shell scripting in OS X’s terminal, that will translate directly into Linux knowledge without having to do the crap that Linux is bad at: like manual editing of grub configs or solving audio issues. Every time my Linux machine wakes from sleep, I have to disconnect and reconnect its Wacom tablet or it won’t work. The Mac’s hardware options are more limited but you get a lot of peace of mind that you don’t get with Windows or Linux. You can work with very little getting in your way. Under a tight deadline, that is worth more to me than a couple more plug-in options.

3 notes | Permalink

Windownaut Review: Excellent OS X Window Manager on the Cheap

If you read my Ultimate Creative OS piece for Ars Technica, you’ll know that I like the window management tools that were added in Windows 7. You can drag to a side of the screen for non-Metro apps and the window will take up a perfect half, making it really easy to set up two windows on a single display. Well, there are tons of window management utilities for OS X and some, like Windownaut have this edge threshold feature and a lot more. You can assign hotkeys to a ton of different window layouts and there is a dropdown menu bar item to manage active windows. You can even right-click the OS X window widgets to get the window management options:

It adds the ability to resize and move windows without having to grab the borders. See it in action in this little demo within Maya:

Overall, this is a ridiculously capable helper that doesn’t add any instability to your OS X environment and, at $4.99, it’s cheaper than others like Optimal Layout, which I bought a while ago but don’t use anymore. Seriously, get this. In the interests of full disclosure, I must admit that I like this software. I have no affiliation to any software reviewed here.

5 notes | Permalink

Spotlight Relinker: A MEL Script That Uses OS X’s Search Capabilities to Relink Missing Files

A lot of people wonder why I use a Mac to do 3D. There are more 3D apps for Windows, Linux has faster OpenGL speeds than both other the OSes that Maya runs on and the hardware choices are more limited. Well, this script sums up a lot of why I use it: incredible scriptability and a bridge between GUI tools like Spotlight search and the command line. If you read my article Creating the Ultimate Creative User OS, then you know what I’m talking about. OS X has all the command line goodies of Linux but it also has its own great tools like Spotlight that has a command line equivalent built into OS X (it’s called mdfind) and it is infinitely faster than the find command in Linux distros and OS X. So, after getting tired of hunting down linked media in an old Maya scene that had links to old hard drives, moved stock image folders, etc., I made a script that uses mdfind to quickly track down the media by name, take the first result and make a MEL command file that you then drag into the Script Editor to do your relinking:

The script obviously assumes that your files are intelligently named. You’re not going to want to use this if you have a ton of different textures are all named “file.tif” but if you have unique names, this should save you a ton of time if you’re on OS X.

Anyway, without further ado, here is the script.

1 note | Permalink