Something I’m endlessly frustrated by is having to work around the way Nuke uses confusing hex colour values in Python to do things such as set a node’s ’tile_color’ knob. For example, how are we supposed to remember that 0xff000ff = green? I wrote two simple functions to get around this, which I hope you can make use of too…

Continue Reading "Quick Tip: Programmatically Dealing with Hex Colour in Nuke"

If you’re like me, you’re always looking for ways to get an edge on efficiency in your workflow, and contribute more value to your team. A common thread between most Compositors is they see the value of utilizing Python, but are unsure how and where to start learning…

If this sounds like you, I have some great news — I’ve been hard at work behind the scenes, creating the solution to your problem! I’m incredibly excited to announce a new online course, comprising of 10 weeks of video tutorials, which is now available for pre-order!

I’ve put a ton of effort into making this course as valuable as possible, for an incredibly affordable price.

Click here to read more, and pre-order!

Updated nodes in Nuke should be better than their predecessors, although that’s not always the case. For example, I love that the latest VectorBlur node is GPU-accelerated, although I find it’s output quite arbitrary; it never does what I expect out of the box, and I personally prefer the old version. A problem arises here, because the old VectorBlur is no longer in our menus. The good news is we can still access legacy nodes via the script editor! nuke.createNode(“VectorBlur”) creates the old one. nuke.createNode(“VectorBlur2”) creates the new one. If this…Continue Reading “Quick Tip: Easily create legacy nodes via the Script Editor”

I’ve recently been thinking about processes I do all the time that could potentially be automated. I found that any time I created a ScanlineRender node, I always added the $gui expression to its samples knob. So, why not automate that? Here’s my solution (code for your menu.py first, explanation below): If you haven’t already read my tutorial about addOnCreate(), you should start there, as it dives deeper into what this code is doing. You may notice that we’re using addOnUserCreate() in this example —…Continue Reading “Automate your $gui!”

I use the addOnCreate() function all the time to power up my Nuke nodes. The aim of this quick post is to demonstrate how you can use it in your own workflow to add new functionality to Nuke’s default nodes! Our task for this quick tutorial is to add a “Set to Current Frame” button on our FrameHold node. Here’s the code: Let’s start with the last line of the code, which is the most important. nuke.addOnCreate is basically saying, “whenever X is created, run Y…Continue Reading “Add New Functionality to Default Nodes With addOnCreate()”

Contact sheets are something I use all the time to run out wedges of certain looks & compare my work against other shots in the sequence. Although, the Contact Sheet node is kind of… basic. It lacks a few features & requires a lot of initial setup to actually be useful. The aim of this article is to share some knowledge on the defaults I have in my contact sheet node & how to set contact sheets up more-speedily. First, let’s look at the Contact…Continue Reading “Power Up Your Contact Sheets”

You may have used a gizmo in the past where toggling a checkbox enables/disables a set of knobs, or choosing a certain value from a Pulldown Choice will hide or show another set of knobs. What wizardry is this??? At least that’s what I asked myself when embarking on my first gizmo-creating frenzy…

After searching the web, I came across many threads in many forums explaining this mysterious thing called “knobChanged”, accompanied by a load of copy/pasted code to explain how to use it. With my limited knowledge of Python at the time, I had no idea what any of it meant. I just wished there was someone who posted what I needed and that was it. If this describes you right now, you’re in luck!

Continue Reading "Using knobChanged to toggle knob states on Gizmos"

Nuke is incredibly flexible and customizable out of the box, and empowers artists to work they way they want to work to get a shot to final. But there’s a whole other world of untapped potential when you utilize Python to further expand it! In this post, I’m going to show you an example of how even the most simple python script can save you time every day.

Continue Reading "Create Simple Python Scripts To Speed Up Your Workflow"

You may have heard other compositors refer to a menu.py, or a “preferences file” in the past. What the hell is that?! A menu.py is a python file that Nuke will read upon starting up each time. It contains data such as: Keyboard shortcuts Knob defaults for specific nodes Custom python functions to customize the way Nuke works in certain areas Most studios will have a menu.py to setup specific things for the entire studio, as well as a second menu.py file to change certain…Continue Reading “What’s a menu.py, and why should I have one?”