Jigsaw: The Missing Piece of the Puzzle

Version: Deadline 7.2, Deadline 8.0

Introduction

Jigsaw is a Deadline tool that allows users to split up large images into smaller regions. Jigsaw allows users to define, render, and assemble arbitrary rectangular regions of a final rendered image. Each region is split up over multiple machines and rendered over Deadline.

An image showing separate render regions of a 3D model.

An image showing separate render regions of a 3D model.

Why Do I Need Jigsaw?

There are many benefits to using Jigsaw:

  • Render very high-resolution images faster by distributing them across multiple machines.
  • Ability to vary the region size visually based on scene detail.
  • Ability to modify and optimize regions after an initial render. The user could start with a grid, then subdivide or combine regions based on which regions take longer to complete. The goal being that each region takes approximately the same time to render.
  • Re-render several changed portions of an already rendered image. This happens automatically without the need for compositing software.
  • Quickly preview multiple regions of interest without rendering the entire image.
  • Maximize the use of your available render resources even when the output is a single image. This allows you to optimize render speed and stay within memory constraints.
  • Allows users to dramatically reduce the memory footprint when rendering very large images.

Okay, I’m Convinced! Which Applications Support Jigsaw?

Jigsaw can be used with any renderer that supports Region rendering even if it does not support distributed rendering. The Jigsaw user interface and functionality is supported in the following content creation applications:

  • 3ds Max (Autodesk)
  • Houdini (SideFX)
  • Maya (Autodesk)
  • modo (The Foundry)
  • Rhino (Robert McNeel & Associates)
  • Soon to be more!

Jigsaw for Houdini, Maya, modo and Rhino all share the same “standalone” Jigsaw interface. In these cases, Jigsaw is independent of its host application, but is able to get scene data such as viewport images for visual subdividing, and object bounding boxes (when possible) to automatically create regions based on mesh bounds. All renderers inside of these applications are supported as long as they supports region rendering.

Jigsaw for 3ds Max is tightly integrated inside of 3ds Max. Unlike Jigsaw for the other applications, Deadline’s 3ds Max Jigsaw run natively inside of 3ds Max. All renderers inside of 3ds Max are supported as long as they support region rendering. The 3ds Max version also provides additional controls for working with image sequences. It allows users to create animated regions of mesh objects by tracking their bounds over an animation range.

How Does the AssemBLy Work?

Draft is used to automatically assemble the regions into the final frame or frames. It can also be used to automatically composite re-rendered regions onto the original frame. Note, whilst Jigsaw is an unlicensed feature, the Draft Tile Assembler is a licensed product, and is free for users with an active Deadline annual support and maintenance contract.

Why Use Jigsaw over Tile Rendering?

The “Tile Rendering” feature has existed for quite a while in Deadline. Tile rendering allowed the user to split up images into an equally spaced tile grid and render the grid pieces over multiple machines. While quite useful, this equal spacing resulted in limitations because in many use cases, some tiles would take no time to render, while others would contain very complex geometry and shading and would dominate the render time. If only a small portion of a tile needed to change, the user would have to re-render the entire tile. This system can result in a lot of extra render time that goes to waste. Jigsaw takes the concept of tile rendering and improves upon it.

An image showing “tile rendering” with regions that do not reflect the actual scene geometry detail.

An image showing “tile rendering” with regions that do not reflect the actual scene geometry detail.

Jigsaw lets you redefine the subdivisions, re-render, and composite over a previously rendered version of the output. This can be especially useful if a client wants a very small piece changed. In this case, an artist would simply have to select the region to be changed, and tell Jigsaw to composite over the previous render.

An image showing user-defined region sizes in Jigsaw.

An image showing user-defined region sizes in Jigsaw.

So How Do I Use Jigsaw?

The following tutorials will show how to use Jigsaw in Maya and 3ds Max. Note that because Maya uses the “standalone” Jigsaw interface, the Maya tutorial is actually very similar to how Jigsaw works in Houdini, modo, and Rhino.

Jigsaw for Maya

The following is a simple tutorial on how to use Jigsaw for Maya. It shows how to divide up a still image into multiple regions based on various mesh bounding boxes in the scene.

Open the Deadline submitter for the shelf icon and expand the “Region Rendering” rollout.

Select “Enable Region Rendering” and click on “Open Jigsaw Panel”.

Select a mesh of interest in the scene, in this case, a tire. Then click on “Fit Selection” in the Jigsaw dialog. A tile region is created based on that mesh’s camera space bounds.

Do the same “Fit selection” for the rest of the tires. You will then have three separate regions. In order to render the rest of the scene, the empty space will need to be filled with regions. To automatically fill these gaps, press “Fill Regions”. At this point, you may modify the regions manually to optimize the render. Jigsaw provides tools to fill regions, remove duplicate regions, snap to existing regions, and combine.

Upon submission of the above, several tile rendering tasks will be created, as well as an image assembly job that runs after each of the tiles have completed rendering. The image assembly reads all the tiles and outputs the final composited image.

Jigsaw for 3ds Max

The follow is a simple tutorial on how to use Jigsaw for 3ds Max. In this scenario, we have rendered this car and we wish to re-render a subset of the meshes in order to change their material. This tutorial will show you how to select those meshes and re-render only them.

Open up Deadline’s “SMTD” (Submit Max To Deadline) submitter inside of 3ds Max and select the “Tiles” tab. Set the dropdown menu to “SINGLE FRAME, MULTI-REGION ‘Jigsaw’ Rendering”. In this tutorial, the car has been rendered in V-Ray and we wish to change the trim of the handles and mirrors.

Select the mirror and door handle meshes and change their material (in this case we changed it to black plastic). With the selection in place, press the “Create From” > “Create From Scene Selection” in the Jigsaw UI.

In order to re-render those sections overtop of the original image, select the “Compose Over PREVIOUS OUTPUT image” option in the compositing drop down menu. This allows the new regions to be automatically placed on top of the original without the need for additional compositing software.

Upon submission of the above, four tile rendering tasks will be created, as well as an image assembly job that runs after each of the tiles have completed rendering. The image assembly reads all the tiles and composites over the original output image.

How Do I Learn More?

There are many Jigsaw related webinars and tutorials that you can check out!

An introduction to Jigsaw:

Jigsaw for 3ds Max with a tutorial:

Jigsaw for Maya with a tutorial:

A 3ds Max tutorial for single frame region rendering with Jigsaw:

A 3ds Max tutorial for multi-frame region rendering with Jigsaw: