Gaffer 0.58 contains a caching optimisation that can significantly improve interactive performance in many cases. But this optimisation can also reveal subtle bugs in Nodes that may have gone unnoticed until now. In this post we’ll explore why that is the case, and outline some useful strategies for catching and eradicating such bugs from your custom nodes.Continue reading “Gaffer 0.58.0 : We’re going on a bug hunt”
Sets are a powerful and commonly used tool in production pipelines, but they are not without their dangers. In this post we look at the details of how they work, and share some tips for avoiding their pitfalls.Continue reading “Let’s talk about sets”
Execute the following via the PythonEditor :
import GafferScene n = GafferScene.ShaderAssignment() n["in"]["childNames"].setValue( IECore.InternedStringVectorData( [ "turtles", "all", "the", "way", "down" ] ) ) root.addChild( n )
Then look at the innocent looking ShaderAssignment node in the HierarchyView, and marvel at its recursive uselessness.
How does this work? Answers on the back of a postcard please…
Let’s face it, there’s only so much you can learn about Gaffer from a ball of cows. Wouldn’t it be great if there were some more comprehensive examples that resembled how you might work in a studio environment? Something with real assets and light rigs, that showed how to build a multi-shot workflow using a single template script? Well, now there is!Continue reading “New Gaffer Examples”
Gaffer allows scene locations to be organised into sets, and then uses a simple expression language to combine sets for use in light linking, shader assignments and the like. In this short post we’ll discuss a historical limitation of set expressions and present some useful improvements made in Gaffer 0.56.0.0.Continue reading “0.56.0: New set expression operators”
A common pattern that arises in production is the “shot-specific branch switcher”, typically using a Switch or NameSwitch node to choose the right branch for the current shot. In the fictitious example below, this pattern is employed to select the right render settings per shot, with an ArnoldOptions and StandardOptions node on each branch.Continue reading “What’s cooking? : Spreadsheet node”
Gaffer 0.55.0.0 introduces the NameSwitch node; like a Switch node, but using names instead of indices for switching between the inputs. This post shows an example of the NameSwitch in use, and describes how you might customise its UI to better suit your pipeline.Continue reading “Customising the NameSwitch node UI”
We’re thrilled to learn that Gaffer was a key lighting and rendering software for a VES nominated project! CG Supervisor Edmond Engelbrecht and the Image Engine team were nominated for Outstanding Created Environment in an Episode, Commercial, or Real-Time Project for their work on Game of Thrones; The Winds of Winter, with the procedural texturing, look development, and rendering for the Citadel environment produced using Gaffer.Continue reading “15th annual VES Awards”
A video walkthrough of the tutorial from the Gaffer documentation.