MSc Projects 2009

MSc projects from 2009

Project Ideas

App Launcher At present all apps in the Linux lab are run using a goScript. These scripts set the user environment and enable various paths etc. This project will replace this with a GUI based system to launch the apps.

Lab 2 Some Unix tools

The aim of this lab is to look at methods of batch processing data (scene files) using both built in Unix / Linux tools as well as python. Standard unix tools for finding things Unix has a number of tools to allow searching and locating files.

Lecture 1 Introduction

Slides Links and Resources Pipeline Patterns Pixar’s USD

Lab 1 Python Setup

The aim of this lab is to setup our python environment in the lab and give you the ability to setup something similar at home. I will video it live and upload afterwards as this will mainly be an interactive session.

Lecture 1 Introduction

Slides Links and Resources Pipeline Patterns Pixar’s USD

Lecture 2 The structure of a DCC

Slides Links and Resources

Lecture 2 The Structure of a DCC Tool

Slides Links and Resources Points and Verts and Prims

Lab 3 Some Python Topics

The aim of this lab is to introduce some core Python (3) concepts and ideas. Whilst some of these may seem unconnected I use many of these techniques and ideas day to day and will generally form part of a larger python ecosystems and deployment.

Lecture 3 Why Python

Slides References

Lecture 3 Test Driven Development and Design

Slides Links and Resources https://www.ibm.com/garage/method/practices/code/practice_test_driven_development/

Lecture 4 Databases and SQL


Lecture 4 Modern Python

Slides Links and Resources

Lecture 5 GUI's and HCI


Lecture 5 DCC API's

Slides Links and Resources https://www.chadvernon.com/maya-api-programming/

Lecture 6 Systems Programming


Lecture 7 Devops


Lecture 8 Multithreading


Lecture 9 Multithreading


Lecture 10 Documentation and Deployment


Lecture 11 Data Files and Serialization


Install and Setup of PyEnv

PyEnv can be installed by downloading from here https://github.com/pyenv/pyenv or if using a mac use brew install pyenv If downloading from github do the following git clone https://github.com/pyenv/pyenv.git ~/.pyenv cd ~/.

MayaPY not working

When running the following code in a mayapy session import maya.standalone maya.standalone.initialize(name='python') The interpreter never returns for the next line of code. TL;DR was an issue with my userSetup.py where I use cmds.


Why do I need it? Life is too short to tidy up code by hand. Black is an opinionated python formatter. By using it, you agree to cede control over minutiae of hand-formatting.


Why do I need it? numpy is “The fundamental package for scientific computing with Python”. In particular it gives us fast and efficient array types which can be used with C/C++ types as well.

Rich & Textual

Why do I need it? These two co-related modules will make your command line tools better. “Rich is a Python library for rich text and beautiful formatting in the terminal”, “Textual is a TUI (Text User Interface) framework for Python inspired by modern web development.


A portable asset datatbase for DCC tools