Professional Documents
Culture Documents
Tech Art Project 3
Tech Art Project 3
Yasmin Haq
Spring 2022
Project Details:
The tech art team in the studio requires an auto rigging tool for Maya that automates the
process of creating IK limbs for robotic NPCs.
They've given you a file with an example NPC (see Mech_Spider.mb file) for testing.
Assets Used:
- My brain
- Robot from tech art folder:
https://utexas.instructure.com/courses/1326378/files/folder/Project%20Materials?preview
=64691583
Video showing functionality: https://youtu.be/PiCFKHdgJMQ
Playable executable: https://yasminhaq.itch.io/auto-rig
Analysis:
Based on the required features, a few questions were asked:
● How should the UI be friendly and aesthetic ?
● How can i add a component that makes the system reusable
● How modifiable should the rig be?
I just wanted to make the lightning as extravagant and juicy as possible. I was also inspired by
the upcoming aesthetic of 2d effects in a 3d world like in the league of legends show or
spiderman into the spiderverse.
Approach:
After research and testing __how to code in Python__,__UI___, and ___The rigging
process_____, the following approach was chosen:
Breakdown of Approach:
CREATING CONTROLS
The first thing I did for actual control
creation was create 3 cones with
different names and variables.
Lastly, all padding groups and joints are parented in the correct order and grouped together
under an arm folder.
UI SYSTEM
The UI I system was developed by creating a window with a title in it. Then there is a text box
giving simple context to the buttons. The window is split into 3 rows for clarity. There is one
button that holds the function “place joints” and another called “Create joints”.
Another feature of the UI is that if the place joints button has already been pressed, it cannot be
pressed again until the create joints button has been pressed. And vice versa for the create
joints button.
MODULAR SYSTEM
To create the modular system I simply created an int before any functions and
then declared it global in the create joints function.
Then that int is applied to any names that appear in the outliner by attaching it to the end of
every name as a string. This way, whenever new joints and controls are created, it names them
all differently based on number.