“I am Falk Hofmann and a compositor for roughly a decade. Since a couple of years also TD and recently I joined RISE FX | Berlin as Compositing-Supervisor. Besides that, I like to play around with my Raspberry Pies, occasionally writing Android apps and be outside in the garden. A personal aim is to bring these three together and enjoy them all at once.”
Note: The following answers have not been edited, to preserve the integrity of Falk’s responses.
Tell us about the first person or studio who paid you to do VFX. How did the opportunity come about?
The very first studio I have been worked in VFX were Elektrofilm in Stuttgart, Germany as an intern. The internship was part of my education during university. We worked on a German min TV-series, smaller features and documentaries. Also the team were fairly small. All together, we were about 7-9 people. Which allowed a nice and friendly environment. I sat next to a very good compositor which I learned a lot during this time. Even though I had a hard time to understand camera projections at this point. But he was very patiently and explained it over and over again until I eventually understood the whole thing by the end of the week.
Fun fact: The Supervisor hired me later on to join his team in Shanghai. So it’s always worth to keep in touch with people who you enjoyed working with.
Another main guy I would like to give credit for teaching me compositing is one step prior those experiences. A teacher named Peter Ruhrmann during university taught us (also very very patiently) the essentials of compositing. For example, he made us write and understand our own despill algorithm in the custom tool (back then in Fusion) rather than playing around with the fancy new tools during the release of nuke 6. Also he referred always to the compositing Bible from Steve Wright. And he was (w)right! After all these years, it’s always around in each and every office I have seen so far and absolutely worth it to take a peak from time to time.
Over the years I do more and more appreciate these fundamental knowledge.
Was there a specific point in your life where you decided you wanted to learn to code?
During university I tried to get around any code related tests and lectures as much as possible. Later during the Internship, I noticed how powerful python can be, so without having a clue of python and coding itself, I decided to pick a topic for my bachelor thesis which is based exactly on this subject.
By doing so, I wrote a small tool for using metadata to improve the VFX workflow. The code is fairly horrible from todays point of view. But somehow I managed to get an user interface and a working tool which was running as standalone version as well as inside nuke as panel. Main task was to read and edit metadata from xml sheets. These XML files contained tasks and to dos for each shot, focal length and all sorts of camera specs per shot. Those could be modified by adding notes, tasks and so on. Also setting up cameras inside nuke based on those specs. Another approach was to write additional metadata into EXR files to use them later on to create cameras in worldspace, or as a proof of concept to get their location via GPS data written on set. The aim was to have a starting point for references and quicker set up for environments etc. Sounds very basic now. But I have spent multiple nights trying to understand the principle of coding since I had to start from scratch.
What are your favourite tools for Nuke, created by others, that you use on a daily basis?
My personal all time favorite is a small tool, a TD (Sebastian Kral) wrote for me 9+ years ago. A simple short cut to toggle in rotation through the channels on nodes which are using channels as knobs. Blur, defocus, grades and all these common ones:
It cycles through: alpha>rgb>rgba>alpha…
For example very comfortable on merges to change A,B and output at once or on a entire selection of nodes.
Honestly, I use it hundred times a day when comping. I set up my channels as soon as I bring nodes to the graph. It’s almost like muscle memory. If I don’t have that shortcut, I get really annoyed very fast. If I am correct, it’s not on nukepedia, yet. I should give it a go and upload it.
Another all time classic and life saver: the ITransform. By now I’m not sure who wrote it originally since I have seen multiple versions. But I guess Frank Rueters might be the original one. It’s just so simple and fast and yet so powerful. Love it.
Fairly new, but I think a game changer for re-graining: DasGrain from Fabian Holtz. I am actually building currently a Grain tool based on his. Even though there isn’t much to add. The demo is already quite impressive
What piece of knowledge or advice do you wish you had in your early years of working in VFX?
As a Compositor:
Listen. If someone is explaining you something. Take notes. The input might be a lot from time to time. Proper notes helping to get things sorted or to recall later. Make sure to try out this new knowledge yourself. A lot. So the knowledge transfers from the notes into your memories.
Also do not focus only on compositing. Take a look left and right into other departments. It’s always handy to have basic knowledge of workflows and what is possible. By knowing for example what’s possible inside Houdini and what to get out of it, it might open doors for entirely new approaches. Even in comp.
I once had particle simulations transferred as weird looking data pass into Nuke, but it ended up blazing fast and sufficient for the job. Only thing I had to, was to talk to the guys.
As a comp Supe:
“It ain’t over till the fat lady sings.”
Regardless if a shot is called final, it might come back.
As a TD:
Focus more on math, coding and image manipulation techniques during university or while you have the chance to learn it from teachers and be able to ask questions. Have fun by doing small projects and understand the very basics. Later on, you can build on top of that. By now it’s getting hard to dive into matrices, their calculation and these things for myself.
Coding-wise I recommend to check out proper design patterns and approaches right from the start. To change your those habits and designs you make up yourself is sometimes harder than taking the time at the very beginning.
Tell us about your most productive failure — something that didn’t quite go to plan, perhaps in a negative way, that you ultimately learned from.
For the Oblivion pre-production, we prepped the projection cards which were used, on set as projected Backgrounds for scenes when they were up in the skytower. In total it were something around 10 different sceneries. Day, night, stormy, sunny etc..
They got shot on a 3 camera rig at once. These 3 plates had to be cleaned, stitched and then rendered separately as single tiles. For one scenery were 13
Tiles in HD needed and thousands of frames in length to keep the ability to shoot longer takes.
Each tile got projected individually with a certain overlap on set.
These tiles had to be rendered at some point, once stitching and clean ups were made. In best case as one batch over night, since during the day all the other artists had to work on actual productions. So I set up lots of render dependencies, scripted events and so on, to somehow get these images rendered over (one) night. Also there had to be some quictimes from the original stitch, the tiles and the overlapped tiles in total in the morning to proof that everything works as expected.
Which was honestly a problem, since you couldn’t run all at the same time because of server IO. And we haven’t had a render wrangler at this time nor a massive renderfarm. So each evening I was hoping to have all in place. Scripts, timing, dependencies, rules etc.
One thing I have not thought about was the server space left. During this time we were on full production with also other projects.
To create one full version of all sceneries were quite some space needed.
So I eventually filled the entire server with these renderings without anyone noticing over night. Until the last kilo byte. All the other renderings for this and any other running project, of course, failed, and IT wasn’t particularly happy either the next morning. And perhaps, this happened a second time…
By now I triple, quadruple check server space occasionally even without sending bigger jobs to the farm. And in general, since then I’m very very careful when I have to touch files on the main server.
When you get stuck on a problem, what does your thought process or inner-talk sound like? What’s your process for starting to solve said problem?
If I can’t figure out whats wrong in 15-20 minutes, I ask the Internet or other resources which I can access at this moment. If no answer is in sight, I get away from my desk to get some fresh air and having a stroll around the office. Potentially getting a coffee somewhere else. Mostly afterwards I take pen and paper and start drawing diagrams of the flow until the problem occurs, or even further, to find the missing piece.
If I can’t figure it out after another 20 minutes, I try to find someone who understands the topic and talk to them. In 80% of all problems, by just explaining the situation, speaking out loud the procedure and think about which step is the next, to tell my opposite, the solution comes right away. So basically changing pen and paper to audio.
If still no solution is in sight, I would start all over again. Of course only if it’s acceptable to do so in terms of time already spent etc. But mostly I split task into small bits and pieces from the beginning. By doing so I am mostly able to re-build parts without mind the bigger picture nor the time spent.
(noticed the if chain?)
What is a value or soft skill you wish more compositors would cultivate?
I do really value people I can rely on and potentially have worked for quite some time. So the terminology is full understandable and they know what I am when I am mumble some words while scrubbing through the sequence… For example, having a briefing in the very morning and have to send a version by the evening. I like if it’s not necessary to check during the day for intermediate results and still have a satisfying result by the end of the day. As a compositor I know that it is hardly doable to have a good version if you have to rush from dailies to dailies and just keep rendering rather than spending actually some time to be creative or simply get the job done. Therefore I like to give these time to the people whenever possible.
Also, try to get some feedback from other compositor prior dailies. One thing I figured out was, to have someone to play “shot ping pong”. Means I tell you the first 5 things that I noticed on your current version straight away. And the other way around. By doing so the quality steps in dailies are raised quite a bit. It also points out other things which you haven’t really noticed since you focused on this very tiny little edge, which annoys all day long.
So, just to get the bigger picture it helps. Also taking a step back. Literally. And look at your screen from a certain distance. Does it still work? Is the shot still readable with that big fire in the foreground or does it draw attention away from the actual actor? Stuff like that.
And lastly, to be aware of the current state. When slapping layers, there is no need to take care of black levels. Therefore I expect this to be a fairly fast task. The other way around, when heading towards final, I highly appreciate if the compositor takes 2 minutes and checks the very basic of compositing like: Are the black levels in place, defocus, track etc.
But also double checks:
Are all the notes addressed. After the fifth iteration with still not hitting all the notes it is getting quite frustrating for everyone.
Where would you like to see the VFX industry headed in the next 3 to 5 years? How do you envision getting to that point?
Firstly, I am hoping that game engines will take a bigger part of the entire VFX process. Having real time previsualization gives more time and abilities to be creative and focus more on the actual design. Cameras, staging or entire shots can and should be modified on the fly, if the possibility already exists. In
combination with proper hardware it takes away the first fiddling around with curves in animation to get something that might work or feels natural.
Also GPU rendering is one of these topic I hear a lot, but so far, I haven’t come across a place where this is heavily involved. Would love to to restructure some set ups for rendering and working. But that’s kind of a biggie, I guess.
Secondly, machine learning and AI in general. From trained denoising algorithm towards semi- or even full automatic rotos would be very beneficial. For sure these things are in the making and might even take a bit until production ready but I am very curious about these topics.
Deep learning algorithms should be implemented on a big scale as well. “Simple” tasks like tagging and categorize image libraries or set photography were already done at some companies. It’s a very exciting topic! Besides the technical part I would like to see the industry heading towards a better recognition in the actual production and box office. These days almost every movie has VFX in it. The biggest ones are even VFX driven. But somehow VFX companies having a hard time to get share. Financially, but also in terms of RnD. Lots of cool stuff were invented the past decades to make these movies possible.
Furthermore I like this industry and particularly the kind of people. These mixture of creative youngsters with ideas I would never come up with, experienced colleagues you can rely on, TDs, nerdy peeps and specialists in their fields, feels somehow amazing. And I just hope it stays like that.