Photoreal in milliseconds - developing an Unreal product rendering pipeline.
Updated: Mar 23
16 years ago, when MotR first started working in photoreal rendering, we spent a hefty amount of effort prosthelytizing the benefits of moving product photography fully into the CG realm. Back then, it wasn't as clear to everyone that one could achieve truly beautiful, photoreal product imagery entirely in the digital world. We trumpeted the benefits of localization, quality consistency across lines, the lack of need (or minimal need) for retouching, etc. These were all brand new concepts in 2005 that are now common assumptions in the production world. In the years following, we completed hundreds of product shots for Revlon, Calvin Klein, Verizon, Cadillac, Lincoln, Coca-Cola, just to name a few.
We find ourselves in a similar spot now that we are moving our rendered pipeline to a real-time model, using Epic's Unreal Engine.
Epic and Nvidia have made massive advancements in the speed and processing of computer rendering, raytracing and global illumination in the past few years.
We have finally arrived at a point where we can render truly photoreal product work in milliseconds instead of hours. This means our artists are now working directly with rendered, photoreal content while they adjust lighting, textures, etc. This reduces the time between iterations (which used to be significant with a traditional CPU rendered setup) - thereby improving the quality and finesse of the finished image. Working in a real-time environment is much more akin to being on a physical photo stage where lighting adjustments can be seen and adjusted immediately. We have created a host of lighting and set tools to mimic the real world photo stage, from instantly scalable and adjustable cyc stages to photometrically accurate, HDR sampled soft-box lighting kits.
But, like all CG pipelines, this photography studio never needs to be broken down. It's always stored exactly as you left it on the server, so repeating a campaign look becomes as simple as dropping a new model or label into your existing shoot, either the day after the shoot or months later.
The increased speed and response of the Unreal environment leads to some pretty exciting possibilities. Clients can work on screen with our artists and see exactly what their end product is intended to look like, with real, on the fly changes based on their direction. We create "live assets" out of the products, programming in real-time adjustments like liquid levels, surface condensation, carbonation fizz; really any aspect of the product we're likely to want to have flexible control over. All of this is done ahead of live sessions, so the clients don't have to wait for us to fix something and come back.
Perhaps one of the most attractive capabilities of this new pipeline, from a budget perspective, is the ability to rapidly output many different SKUs, labels or product sizes. Using the variants system in Unreal, any of these live assets can be given a proliferation of different label variations, container size options, or any other model or material changes needed. When lighting has been completed on the hero line, we can programmatically output all the other variations without need of retouching, lighting adjustment, etc. Literally the push of a button to swap products and instantly have an updated render for a new SKU. To that end, adding new SKU versions after a project has finished simply involves opening the project again and adding the new variation.
Here's a video of our lead technologist, Andrew Weidenhammer, walking through the tools in the Unreal Engine.
If you would like to set up a live demo to see this tool in action and talk about other potential uses for it, or if you simply have some questions, jump over to the contact page and drop us a line.