Friday, April 18, 2014

PyMel in Maya

In programming we've been learning python and MEL scripting in Maya. The tutorials have been kind of rough, but it gets easier as you go along. We're supposed to be thinking of ways to make our lives easier in Maya basically. Programming for functionality. Today we're generating 10 ideas for creating our own scripts. here are mine:


  1. A button that toggles discrete rotation, but also has an input in which you can set a specific degree of rotation. This is useful because when you go to use the discrete rotation tool you can pre-set the degree you want the tool to rotate and then continue using the tool with that degree of rotation without having to type anything in the channel box.
  2. A button that generates a certain number of a specific material (Like a lambert, blinn, etc) with different colors. This is useful when you're trying to quickly separate materials when preparing for import in UDK. 
  3. Another option would be to right click on the model and instead of "assign existing material" You would have a button to "Generate random material and assign.
  4. 3. A tool that splits an object down the middle of an axis and separates the parts automatically. This is useful because doing this process manually usually takes a lot of clicks. 
  5. A script that recognizes when UVs are overlapping and automatically moves them apart. This could be useful both as an organizational tool and for light mapping specifically. 
  6. A script that gives you the option to import a an object directly into a layer.
  7. A script that automatically clears your history after a certain amount of time.
  8. A script that detects when two faces are on top of each other in an object and highlights the area and puts out a text warning on screen.
  9. A script that after importing a mesh checks to see if there is already a mesh on the world origin, and if so, moves the first object away from the second. 
  10. A script that allows you to select an object, and when doing so basically isolates that selection so that all the other objects are still visible but are not editable.