Programming Concepts for Visual Effects

This schedule is provisional and is subject to change
May 2019

1   2   3   4   5   6   7   8   9   10  


    Mel: Matrix [due session 7]
    Mel: Matrix Animation [due session 9]
    Python: Maya User Interface [due session 15]
    Python: Helper App [due session 20]
    Final student presentations - session 20



  • completion exercises - pass/fail
  • projects - letter grade


  • web based "work-in-progress"
  • presents all the images/notes produced during the course
  • links to other work
Web Portfolio


The on-line portfolio of work that you will produce over the next 10 weeks will become a valuable resource that can support your future applications for internships. An outstanding portfolio will show that you are developing advanced technical skills and a professional personal aesthetic. It will provide detailed information about your experimentations, explorations and approach to solving problems related to visual effects.

Refer to the selected works of previous vsfx705 students for examples of the best portfolios produced since 2003.

week 1



  • completion exercises - pass/fail
  • projects - letter grade


  • web based "work-in-progress"
  • presents the technical breakdowns produced during the course
  • links to other work
session 1
Introduction to Mel


Montgomery hall evacuation procedure.

Mel Topics

  • accessing mel documentation
  • running scripts - script window
  • sourcing a mel script
  • executing mel using Cutter
  • commands & flags (creation, query & edit modes)
  • introduction to datatypes


Before session 2:
1   Read chapters 3 & 5 of Mel Fundamentals,
2   Review the tutorial Cutter: Integration with Maya.

session 2
Mel Basics I


Mel Topics

Refer to quick reference for examples of using datatypes, conditionals, looping statements & procedures.


Before the next session:
1   Read chapters 6, 7 & 8 of Mel Fundamentals before session 3.
2   Complete the mel matrix assignment ready for session 7.

week 2

session 3
Mel Basics II


Mel Topics


Re-code the matrix project so that it is divided into procs.
Note the final review of this assignment is session 7.

session 4
Mel Matrix


Mel Topics
  • developing the code for the matrix assignment.


week 3

session 5
Mel Matrix


Mel Topics
  • finalizing the look of the matrix.


session 6
Mel Matrix


Mel Topics
  • development of the technical breakdown.


week 4

session 7
Matrix Animation


Review the mel matrix technical breakdowns.

Animation Topics



session 8
Matrix Animation


Animation Topics


The final review of the Matrix Animation assignment will be session 9.

week 5

session 9


Fianl Review the mel matrix animations.




session 10
Python + Maya


  • implementing a proc
  • using if __name__== "__main__":
  • loops & conditionls
  • converting a MEL proc to a python proc



week 6

session 11
Python - Maya UI


  • python classes
  • class and instance variables
  • creating a UI window using python (PySide2 module)


Complete the Python Maya UI assignment ready for session 15.

session 12


Python Topics



week 7

session 13
Python - Maya UI


Python Topics
  • use of callback procs for interactive UI widgets,
  • look-dev of the object created/modified by the UI.



session 14
Python - Maya UI


Python Topics
  • continued use of subclasses of the PySide2 module.


The final review of the Python Maya UI assignment will be session 16.

week 8

session 15
Python - Maya UI


Python Topics
  • continue writing the technical breakdown of the python UI assignment.


session 16
Python Helper Scripting


Final Review the Python Maya UI assignment.

Python Helper App Topics

Make sure you are using Cutter version 7.9.7 and that you have copied the latest version of userSetup.mel to your stuhome/maya/scripts folder.

  • anatomy of a simple python helper app script
  • testing the script in a terminal
  • using the script with Maya and Pixar's RenderMan
  • how the script works with PRman
  • the use of Pixar's prman module and it's methods
  • extending the fuctionality of the script.



week 9

session 17
Python Helper Scripting


Python Topics
  • generating RenderMan points
  • generating points to form shapes
    Complete the Python Helper App ready for session 20.
session 18
Python Helper Scripting


A studio session devoted to the helper app assignment



week 10

session 19
Python Helper Scripting


A studio session devoted to helper app assignment.



session 20
Final Presentation


Review the Python RenderMan Helper App animations and technical breakdowns.