Planet Tech Art
Last update: August 01, 2014 02:59 AM
July 31, 2014

Quickly Select and Isolate Curves in Maya’s Graph Editor

Here is a simple but powerful animation tip in Autodesk Maya. This is an essential tip for animators and riggers.

In Maya, let’s say you are working in the Graph Editor with dozens or hundreds of objects, and you need to select and edit only the translateY curves. Here is how to select them easily.

Simply select translateY in the Channel Box.
select_curves_by_channel_box
It will automatically select and isolate all the translateY curves for all selected objects in the Graph Editor.
select_curves_in_graph_editor
And of course, you can also use Shift to highlight multiple channels or Ctrl to remove channels from the highlighted list.

I first noticed this when I was editing 240 Driven Key curves for a mechanical prop rig. In the past I would have tediously selected all the curves in the left side channel list in the graph editor. I’m not sure when this feature was added to Maya, but I only noticed it after years of doing it the slow way.

Using the Channel Box is a major time saver! Tell your animators!

by Chris Lesage at July 31, 2014 03:45 PM


Everyone should take vacation at the same time

Throughout my career I’ve always seen people struggle with taking vacation. People are too wrapped up in what they’re doing. Managers can’t allow critical people to go missing. There are weeks of trepidation and handover and “I don’t know how to fix that” emails. To a large extent, this can be fixed with shared code ownership, comprehensive automated testing, and all those types of good development practices. I have a better idea, which I saw in great use at CCP (which for a long time did not have those good development practices):

Everyone vacations at the same time.

In Iceland, this was a cultural thing. From what I understand, employers aren’t allowed to deny you vacation between May and September. Everyone goes on vacation in July. The office is empty. Things just go relatively smoothly as no one expects anything to get done during July (its a great time for side projects). This “July slowdown” wasn’t limited to CCP, as people who need visa renewals in the summer no doubt learn.

In Atlanta, the studio just closed down for two weeks in July.

In both cases, there may be a skeleton crew to keep things running, people on call, etc. Its just that no one expects anything non-immediate to get done. This has many benefits: its easier to plan for, office costs are cheaper, there’s a single silent period rather than months of rolling disruption, everyone takes a refreshing vacation, and much more. It’s pretty much the only vacation policy I’ve seen that was largely resilient to the pressures that keep people from taking vacation. To be sure, some people were screwed over by bad managers, but (in contrast to most other management offenses) this was largely due to particular managers and not underlying cultural causes.

If you see the people around you failing to take the proper vacations everyone needs to keep going, I’d encourage you to try having everyone go on vacation at the same time.

by Rob Galanakis at July 31, 2014 10:28 AM


Rob G's Maya Python book is finally out

I see Rob Galanakis's new book is finally available for realz on Amazon.


I've added a few new books to the Techart bookstore page too!


by Steve Theodore (noreply@blogger.com) at July 31, 2014 05:28 AM


July 29, 2014

Been really addicted to Gumroad lately.  Such a great source for...



Been really addicted to Gumroad lately.  Such a great source for self-learning.  Cheap (~5$) videos created by individuals with personality, helpful tips, and it feels good to be helping out a single artist.  I’ve been brining lunch to work from home, and buying a video for lunch.  Here is a quick one from this morning based off, Kalen Chock’s latest video, “approaching studies.”  I’d like to spend more time on it, but I think I just need to start posting the work I’m doing.  A lot of times I think, no reason to post this, and I just have folders full on images that I probably won’t ever finish or post.  Maybe this will help.  Either way, it was fun to play around with the brushes.

by at July 29, 2014 04:27 PM


Rigging Dojo’s Artist in Residence (AIR) : July- Sterling Reames

July (AIR) :  Sterling Reames Wednesday July 30th at 6:30PM EST psssst….links to free stuff at the bottom Our next live AIR meeting will be Wednesday July 30th at 6:30PM …

The post Rigging Dojo’s Artist in Residence (AIR) : July- Sterling Reames appeared first on Rigging Dojo.

by Rigging Dojo at July 29, 2014 05:30 AM


July 28, 2014

Practical Maya Programming with Python is Published

My book, Practical Maya Programming with Python has been finally published! Please check it out and tell me what you think. I hope you will find it sufficiently-but-not-overly opinionated :) It is about as personal as a technical book can get, being distilled from years of mentoring many technical artists and programmers, which is a very intimate experience. It also grows from my belief and observation that becoming a better programmer will, due to all sorts of indirect benefits, help make you a better person.

If you are using Python as a scripting language in a larger application- a game engine, productivity software, 3D software, even a monolithic codebase that no longer feels like Python- there’s a lot of relevant material here about turning those environments into more standard and traditional Python development environments, which give you better tools and velocity. The Maya knowledge required is minimal for much of the book. Wrapping a procedural undo system with context managers or decorators is universal. A short quote from the Preface:

This book is not a reference. It is not a cookbook, and it is not a comprehensive guide to Maya’s Python API. It is a book that will teach you how to write better Python code for use inside of Maya. It will unearth interesting ways of using Maya and Python to create amazing things that wouldn’t be possible otherwise. While there is plenty of code in this book that I encourage you to copy and adapt, this book is not about providing recipes. It is a book to teach skills and enable.

Finally, to those who pre-ordered, I’m truly sorry for all the delays. They’re unacceptable. I hope you’ll buy and enjoy the book anyway. At least I now have a real-world education on the perils of working with the wrong publisher, and won’t be making that same mistake again.

Thanks and happy reading!
Rob Galanakis

by Rob Galanakis at July 28, 2014 02:38 PM


July 27, 2014

Pythonistas need Pythonista!

If you consider yourself a Pythonista, you've probably been frustrated by the difficulty involved in getting to work in Python on iOS devices.  I just stumbled upon a really cool answer to your prayers in the form of Pythonista. It's not brand new - it looks like it came out last year - but I just found out about it and flipped my proverbial wig.

Pythonista is a sandboxed Python 2.7 development environment for iOS.  It borrows a page from the playbook of earlier sandboxes like Codea. and manages to skirt Apple's rules for what you can do on the device while still allowing plenty of power.  It includes a script editor (a pretty slick one for iOS, by the way) ,an interactive environment, and a bunch of libraries to make development really useful.  Among the 'batteries' included are heavy hitters like pil, numpy and matplotlib, along with a few cool little things like a text-to-speech module and tools for dealing with the iOS console.

The most impressive inclusions are the scene and ui modules: custom modules devoted to iOS drawing and UI.  Ironically, it's easier to develop a GUI application on your iPad using Pythonista than it is to do it on a desktop machine - the app even comes with a UI builder tool similar to QT's interface builder (not nearly as deep or complex, of course, but iOS UI is less complex than desktop). You can read multiple touches.  You can even do hardware accelerate drawing - nice for things like a finger-sketching program.  Since Pythonista includes pil, you can even do stuff like image processing:



Pythonista's main limitation is that it's not possible to add external modules to the library in the usual ways: setuptools and pip aren't available.  You can manually install pure-python modules by copy-paste-save, and there are few installation tools floating around on the web such as pipista and Pypi.  (As an aside: here's a handy collection of Pythonista snippets and links).  Modules with binary dependencies -- such as the perforce api -- are off-limits; I'm not sure it it would be possible to use .pyd's that were properly compiled for iOS or if the security sandbox won't allow arbitrary binary code at all.

All in all, it's pretty cool stuff for any Pythonerd.  My big project right now is a touch based inteface on the iPad to control a BrickPi Mindstorms robot, but at some point I think an asset-database / issue tracker client on the iPad would be a handy tool for our production team .  Pretty cool for $6.99!

by Steve Theodore (noreply@blogger.com) at July 27, 2014 08:07 PM


July 25, 2014

goless 0.7 released, with Python3 support and bug fixes

goless version 0.7.0 is out on PyPI. goless facilitates writing Go language style concurrent programs in Python, including functionality for channels, select, and goroutines.

I forgot to blog about 0.6 at the start of July, which brought Python 3.3 and 3.4 support to goless (#17). I will support pypy3 as soon as Travis supports it.

Version 0.7 includes:
- A “fix” for a gevent problem on Windows (socket must be imported!). #28
- Errors in the case of a deadlock will be more informative. For example, if the last greenlet/tasklet tries to do a blocking send or recv, a DeadlockError will be raised, instead of the underlying error being raised. #25
- goless now has a small exception hierarchy instead of exposing the underlying errors.
- Better PyPy stackless support. #29
- goless.select can be called with (case1, case2, case3), etc., in addition to a list of cases (ie, ([case1, case2, case3])). #22

Thanks to Michael Az for several contributions to this release.

Happy concurrent programming!

by Rob Galanakis at July 25, 2014 07:07 AM


July 22, 2014

Apes on FXGuide

This video from FXGuide is the best one I’ve seen so far in terms of going into a bit of detail around the work we did on Dawn of the Planet of the Apes, and the different challenges faced by different disciplines at Weta, which is nice:

by Morgan Loomis at July 22, 2014 11:19 PM