- Write a python script that will place an interesting 3D group of surfaces in a Maya scene.
- The python script(s) will implement one or more procedures. Each procedure will be responsible for generating part of the matrix.
- The procedures MUST accept inputs so that the position and/or scale and/or orientation of the surfaces they create can be controlled.
- The main point to consider is that the matrix should present an interesting configuration of shapes. Aesthetics are far more important than complexity, therefore, pay particular attention: collecting photographs of inspirational images, the principles of 3D composition, 2D composition, shading, and lighting.
- Finally, rendered all images using Pixar’s RenderMan for Maya.
Inspired by the proceduralism and the theme of repetition of Tendril Studio and Velvet Spectrum‘s splash screen designs for Maxon Cinema 4D.
User Interface Research
For this project, I was highly inspired by the UI design by Joseph Chen’s Neuron Generator. Below is what I noticed that was stellar about his whole project:
- Website: Clean, minimal, and succinct presentation and documentation.
- UI is neat with attention to details such as aligning Slider labels to the right, and adding dividers between controls to increase readability.
- Scripts: Listing of his contact information, name convention: neuron_gen, neuron_utils, QModule, run, and information tab to explain how his script works with buttons to bring users to his other projects.
How to install
Unzip and put the folder under your Maya script folder
Windows: C:/ user/username/Document/Maya/scripts
Open the Script Editor in Maya and switch to the Python tab.
Drag and drop the run.py file into the bottom panel. OR use the code below to run Mandala Generator.
Select Command > Execute
You could also highlight the script and drag it to the custom shelf.
import sys sys.path.append('/Users/ddu/Documents/maya/scripts/mandala_generator') import mandala_gen reload(mandala_gen) dialog = mandala_gen.main() #if reloaded needed, uncomment the code below #import(mandala_tabs) #import(mandala_utils) #reload(mandala_tabs) #reload(mandala_utils)
In the final analysis, I learned a lot from this project and these past 7 weeks. I look forward to implementing these programming concepts in Cinema 4D and in my career.