This crash course will focus on the workflow aspects of The Foundry Nuke and NukeX. If you’re totally new to compositing, please read the following first:
- How to make special effects or VFX?
- What is Compositing?
- Layer-based vs Node-based Compositing
- What is a Render Farm?
- 20 Steps to Becoming a Master Compositor (Part One): The First Ten Steps
- 20 Steps to Becoming a Master Compositor (Part Two): The Last Ten Steps
What is Nuke and NukeX?
The Foundry Nuke is a supremely fast and powerful node-based compositing application. It has been used on almost every big Hollywood extravaganza. The latest version as of this writing is release 7.0v9, which is what I’m using to write this course.
Nuke v8 has been announced with new features and will be released by the end of 2013. Here’s a sneak peak:
What makes Nuke special? Here are its core features:
- 32-bit math
- Shot-based compositing (one shot at a time)
- Full 3D node-based compositing
The simplest way to understand Nuke is to watch it in action. Here’s a really cool video of a scene in Transformers: Revenge of the Fallen (older version of Nuke):
Understanding the Nuke family
There are four ‘types’ of Nuke:
- Nuke Assist
- Nuke PLE
Nuke is the basic application. NukeX includes a lot of additional powerful plug-ins. If you want the best, choose NukeX. Here’s what you get extra:
- CameraTracker – 3D tracker, while Nuke has a 2D tracker
- DepthGenerator – generates a depth map of a scene using scene data
- Denoise – noise reduction
- FurnaceCore – a set of powerful plug-ins. Read more here.
- GPU Acceleration
- Kronos – Retiming, ramping and slow-motion effects using CUDA
- ModelBuilder – build simple 3D models within Nuke
- Particles – create 3D particles like dust, fire, rain, etc.
- PlanarTracker – track a plane surface in 3D space
- PointCloudGenerator – creates those shiny dots you see on sets, but as software
- PoissonMesh – 3D mesh created using Poisson’s equation
- PrmanRender – support for Pixar’s RenderMan Pro
- ProjectionSolver – using 3D projection of images on to a scene
- VectorGenerator – create motion vectors to use with other plug-ins like Kronos, MotionBlur, etc.
For a more detailed comparison between Nuke and NukeX, click here. Nuke is capable of viewing and rendering NukeX plug-ins, but cannot make changes to it.
Nuke Assist is like a mini-Nuke that cannot export (add a Write node). Its function is to let team members handle simple tasks, sort of like an assistant to a compositor using Nuke. This way, these additional seats don’t have to buy the full version just for one or two tasks.
Nuke Assist is only available with NukeX (Two complimentary licenses per NukeX license). To know which nodes are available, read page 11 of the Getting Started Guide.
This is the Personal Learning Edition (PLE). Exports are watermarked, so you can’t use it for commercial work. However, this is a great way to learn Nuke without worrying about the trial period ending (it really takes months to get used to Nuke). Read page 13 of the Getting Started Guide for restrictions in this version.
Where to get help
Nuke downloads come with these guides:
- User Guide
- Getting Started Guide
- Reference Guide
- Scripting, Python and C++ guide, etc.
Newbies must start with the Getting Started Guide. It is brilliantly written, is simple to understand, and is probably the best software manual I’ve ever read. It is mandatory reading.
Once you get used to Nuke, you will find yourself going to the main User Guide for detailed help. To be honest, if you’re methodical in your learning, you don’t need anything more than the stuff The Foundry gives you. You can access these guides in the Help menu within Nuke.
The Nuke tutorials page has a host of videos that will help you on your way. They are brilliantly made and are a fun to watch.
Compare what The Foundry provides to what other software vendors provide, and you’ll understand why people love Nuke. I learned Nuke using the guides and videos. If you’re really stuck, you can always avail of email or phone support. If your issue isn’t that serious, you can always hang out at The Foundry forums.
Finally, a great resource for scripts, downloads, gizmos, etc. is Nukepedia. You can access it within Nuke by going to Help > Nukepedia.
The last part of the Nuke puzzle for newcomers is the purchasing process. It’s simple enough, and always changing. The following is just a rough guide, and does not imply that prices, terms, features and anything else is accurate. For accurate and up-to-date information, contact The Foundry or read this detailed guide (They have a guide for everything!).
You can choose to either buy or rent Nuke. In addition, you can choose three kinds of licenses for either buy or rent. These are:
- Node-locked – one computer only, locked to a System ID.
- Floating – can work on any computer on a network, but only one at a time. This uses the System ID of one computer/server that controls the licensing.
- Render – rendering only.
That gives you six combinations to choose from. The first thing you’ll need to do is find your unique System ID. The procedure differs for node-locked and floating licenses:
- Node-locked: You must download and run the Foundry License Utility (FLU). It generates the System ID that is then needed to activate your license (page 10 of the licensing guide).
- Floating: You must download and run Foundry Licensing Tools (FLT) on the designated server (page 11 of the licensing guide).
Buying Nuke or NukeX comes with one-year’s worth of maintenance which provides tech support and product updates. You can renew your maintenance, but you’ll need to talk to The Foundry about it.
Here’s how the prices look as of this article:
|Renting Node-locked (USD)||One quarter||Two quarters||Three quarters|
Nuke isn’t cheap, of course. Maybe that’s the first thing you should know about it!
Understanding scripts, Python, programming and tooling
Nuke projects are called scripts, and end with the extension *.nk. Nuke gives you the option to save scripts manually or automatically at predetermined intervals.
Python is a programming language – the coolest in the world according to this author. If you want to be a master in Nuke, you would do well to learn your Python. Why? Because Nuke is customizable, which means you can create cool things of your own if Nuke doesn’t have it.
Why would anybody want to do that? In their own words:
NUKE’s Python scripting engine concentrates mainly on interface and higher level node manipulation. It allows rapid development of everything from snippets to quickly alter the contents of multiple nodes’ control panels, right up to integrating with external tools such as asset management software. Users of Python additionally benefit from a vast array of prebuilt modules (a.k.a Python’s Batteries Included philosophy), including tools for XML reading, database access and much more.
Python is not suitable however for image, 3D and general low level data manipulation, due to lack of fine grained memory allocation control and poor threading.
Python scripts end with the extension *.py. Nuke loads init.py and menu.py during startup. These files contain the configuration options for each session. You can manually alter these files if you know what you’re doing.
For image manipulation customization, The Foundry recommends the C++ API. It also supports OpenFX (Built on C) which allows you to build plug-ins that can be ported to other applications like Eyeon Fusion, Scratch, etc.
A Gizmo is a group of nodes that can be saved for use by other artists. It is saved as a *.gizmo file. Here are some uses:
Studios commonly use gizmos to consistently apply certain color grading techniques, process incoming footage according to a particular conversion formula, and process outgoing footage in preparation for film printing.
A Toolset is a group of nodes created within your application. Its purpose is similar to that of gizmos, except toolsets can be recreated on any computer even if you don’t have access to the toolset. E.g., if I create a toolset with three nodes and I save it, but for some reason my colleague can’t read the toolset file, he/she can still work by manually loading the three nodes.
On the other hand, a gizmo is ‘baked-in’, and are usually used to ensure people don’t screw up by trying to tweak what isn’t meant to be tweaked.
I have barely scratched the surface with what is possible with Nuke. For most users, the basic functions and features of Nuke are more than enough to keep them busy for several years. If you don’t want to get into the programming aspects of Nuke, that’s perfectly fine.
Setting up your hardware for best results
Nuke, being such a powerful application, barely takes up a lot of space on your system. The download is only about 170 MB or so.
Nuke runs on Windows, OS X and Linux, in both 32-bit and 64-bit mode. It runs well even on older computers, but starts to lag with larger resolution files.
Nuke primarily uses the CPU for calculations but NukeX makes use of GPU acceleration as well. To take advantage of GPU acceleration, you need to have:
- An NVIDIA GPU with compute capability 1.1 or above.
- Graphics drivers capable of running CUDA 4.0 or above.
What does that mean for the new Mac Pro? I don’t know. If you’re using NukeX, I highly recommend a Windows 64-bit machine with Nvidia Quadro cards. The Foundry also recommends you always keep your graphics card drivers up to date.
Nuke makes use of image caching for smooth playback, so it is paramount to have the fastest cache disk possible. To set the disk cache go to Edit > Preferences > disk cache:
I recommend a fast SSD only for the purpose of disk caching. The default for disk cache is 10 GB, but the user guide says you can go to 50 GB or more if you like. When your cache is full, Nuke automatically deletes the oldest files and replaces them.
You’ll also see a Local File Cache option. If you enable this Nuke will write frequently used files to this directory for faster processing. This is usually only handy if you’re pulling files from a server and the connection is slowing you down. Otherwise, the best way to handle this is to keep your source footage on a fast RAID array.
If you have an Nvidia GPU it’ll be listed under GPU Device. Click Save Prefs to save your settings.
Even though Nuke runs well on older processors and just 1 GB or RAM, it is recommended to max out your specifications. The ideal strategy is to set aside a render farm (could be just one computer) for overnight or background rendering. The greater the nodes and resolution of the sequence, the slower Nuke gets. Remember, this is a powerful VFX tool.
The Nuke Plug-in Installer
This is an application that is downloaded along with Nuke that you need to download plug-ins that become available. To access it, go to Help> Plug-in Installer.
Nuke isn’t an NLE, so you’ll need to do quite a bit of tweaking to get good playback performance. You can optimize playback in the Viewer by going to Edit > Preferences… > Viewer tab:
To tell Nuke to drop everything during playback, check ‘optimize Viewer during playback’. If you have a compatible GPU, it makes sense to use it for playback as well.
That’s it for this part. In Part Two we’ll look at the interface and import workflow within Nuke.