Python

Lab 5 Test Driven Development

Aims The aim of this lab is to introduce the process of test driven development (TDD) and develop some simple tests, we will use the following steps. Project Setup Version Control Setup Test Setup Test Driven Design of a Simple RGBA class Storing Pixels It is common to store image pixel data using a single unsigned int32_t data type.

Computational Thinking

What is Computational Thinking? The idea of computational thinking is allow us to look at problems and determine the best way for a computer to solve this (and related problems).

Databases and SQL

Databases and SQL

Setup Python for Machine Learning and AI

Introduction In Lab1 we introduced the PyEnv tool to allow us to install various versions of python either locally or globally. In the following examples we will explore how we can setup and install specific ML libraries into a Virtual Environment using the global PyEnv python.

Type Hinting

Type Hints were added to python 3.5 as a way of adding support for linters and 3rd party tools to check code for possible errors. These have no effect of the running of the code and are not mandatory, however they are good software engineering practice and we encourage their use throughout your code.

Type Hints

Aims We will investigate some modern python features and concepts by developing some small programs. Type Hinting Type hints were added to python 3.5 as a way of adding support for linters and 3rd party tools to check code for possible errors.

Black

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.

Numpy

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.

Renderman Plugin guide

This page lists the rib and python syntax for all of the current renderman plugins.

PointViz (or doing the ASE assignment) Week 1

The ongoing saga of my doing the ASE assignment

PointViz (or doing the ASE assignment) Week 2

The ongoing saga of my doing the ASE assignment

PointViz (or doing the ASE assignment) Week 3

The ongoing saga of my doing the ASE assignment

PointViz (or doing the ASE assignment) Week 4

The ongoing saga of my doing the ASE assignment

PointViz (or doing the ASE assignment) Week 5

The ongoing saga of my doing the ASE assignment

PointViz (or doing the ASE assignment) Week 6

The ongoing saga of my doing the ASE assignment

Creating a Simple USD Schema

On creating a simple schema for USD and then a plugin for python

ClutterBase

A portable asset datatbase for DCC tools

Aslan Saparov

This thesis report documents the terrain generation, the research on different methods and techniques possible to generate a terrain as well as the implementation of it in this project.

Yiyang Huang

This project aimed to build a artist-friendly tool which could edit details of toon shading.

Generating unit-test data with Julia

Using Julia to generate unit test data for my Matrix classes in python

Many ways to build a Vec3

We look at diffent ways of building a simple Vec3 class in python

Dmitrii Shevchenko

This project presents a modular rigging pipeline that enables user to create rigs using either Python API directly or via node-based interface. The system aims to be extensible, allowing rigger to add new custom rig components or extend already existing ones. In order to be tool-oriented this pipeline utilizes metadata concept and component to Python class bindings which leads to consistent functionality for any additional tools.

Edward Barnes

This project did .......

How to install Renderman Pro-Server

How to setup and run renderman and python.

Lecture 3 Lighting in Maya

An introduction to lightin in Maya

Using USD with python

some basic instructions for using Pixar's USD in the labs

Renderman Plugin guide

This page lists the rib and python syntax for all of the current renderman plugins.

Renderman Plugin guide

This page lists the rib and python syntax for all of the current renderman plugins.

Links

Online Renderman hekp

Lecture 2 Geometry in Renderman

An introduction to the different geometry types in renderman

Introduction to Renderman and Python

An introduction to renderman and the python api

Lecture 3 Lighting in Renderman

Lighting in renderman

Eimear Crotty

Vulkan is a low-level graphics and compute API which aims to provide users with faster draw speeds by removing overhead from the driver. The user is expected to explicitly provide the details previously generated by the driver. The resulting extra code can be difficult to understand and taxing to write for beginners, leading to the need for a helper library.

Lecture 2 Maya and Python.

Using Python and PyMel

Lecture 1 A technical Introduction to Maya

Introducing some of the more technical aspects of Maya

Lecture 4 Computation, Iterators and Exporters

Maya C++ Computation, Iterators and Exporters

Lecture 2 Introduction to the Maya C++ API

Introduction to the Maya C++ API

Lecture 1 Maya Python

Using Python in Maya

Lecture 3 Maya Nodes

Maya C++ Nodes