Professor Hugo Léveillé begins the course by examining the most useful widgets of PySide with their most useful functions. Then, you’ll see how to add interactions between these widgets using PySide's signals / slots and events. We'll also go over the style sheets of PySide to give our panels a personalized look.
We'll also be incorporating our newly learned code into Nuke to create useful tools you can use on the job.
Coming from a Shake background, Hugo has now been using Nuke on various feature films, TV shows and videoclips. Still doing daily compositing, he is working as a compositing technical director in Montreal, Canada, creating and integrating pipeline tools for Nuke.
Introduction and installation. A first look at what PySide is and how it is more powerful than the regular Nuke python panel. Since there is a lot to install, we'll take the time to see how to install everything correctly.
Widgets and layouts. An overview of the most useful widgets and their functions. We also see how we can layout them in our panel.
Item based widgets and container widgets. We explore more complex widgets like the QListWidget and QTableWidget.
Signals, slots and events. We now connect all those widgets together so we can create very dynamic UIs.
Style sheets. How to use PySide's style sheets system to give a very specific look to our widgets. We will go over colours, shapes and sizes.
Clipboard app, Part 1. We'll make our first Nuke application in PySide. In this first part, we will be designing the UI of the panel. We will also take a look at MongoDB, which is the database system we'll be using for this app.
Clipboard app Part 2. We finish the connections of all the functions and widgets.
QPaintEvent. A first look at the painter of PySide so we can draw various shapes to create very unique UIs.
The Hotbox. Taking what we've learned so far, we create a Nuke version of Maya's hotbox.
QT Designer. A look at QT Designer to design our panels with a simple drag and drop. Then we will see how we can convert those files to python.