---
title: "Holdout Workflow"
canonical: "https://rmanwiki-27.pixar.com/space/RFH27/567312445/Holdout%20Workflow"
format: markdown
---
![HoudoutInSolaris2.png](media://14cc0847-b39c-47a5-a403-e41146fd9e2b)

Below is an overview of how to set up a Holdout workflow with RenderMan for Solaris. 

In the scene below, we have 2 objects.  A broken mechanical Teapot and a floor plane, which acts as the shadow & reflection catcher.

![HoudoutInSolaris_setup.png](media://d8071a65-a33a-4d15-955c-50c0136f5b62)

The first step is to create and assign a shader for the floor, which, in this example, is just a simple PxrSurface with the diffuse color matching the light brown of the stone tiles outside of the Steve Jobs building, here at Pixar.  A rough reflection has also been added to the PxrSurface.  

> 📝 For a more complex workflow, usually the floor plane would be textured with the same texture as the real floor it is reflecting, but this is just a simple example of setting up a Holdout workflow.


Next, we need to tell USD that we want our **/FloorCatcher** prim to act as a Holdout.  This is done with a *rendergeometrysettings *LOP and within the RenderMan / Trace tab, simply turn on **Holdout**.

![HoudoutInSolaris_setupGeoSettings.png](media://04c40f4a-4174-471b-bccc-054e8515c16c)

Once done, we now need to create a PxrShadowFilter LOP, which you can see is added under the */Render/pxrshadowfilter1* scope.

![HoudoutInSolaris_Pxrshadowfilter.png](media://a8bb59ed-6dd5-4610-bf3c-c12723c29e83)

Lastly, for this stage, we need to assign this Sample Filter to our rendersettings.

![HoudoutInSolaris_PxrshadowfilterAssign.png](media://a25b90c1-0367-4c8f-9c29-e9a7108ed0d3)


Next, we need to create our Holdout Render AOVs.  In this example, we’ve added a *rendermanrendersettings *LOP and under RenderVars tab, activate the 3 AOVs (or whichever AOV you require) within the **Holdouts **dropdown panel.

As you can see in the Scene Graph, our newly created Holdout AOVs have now been created.

![HoudoutInSolaris_RenderVars.png](media://4d494279-5dfd-4327-b3dd-22eaa8e2bc22)

When we now render via the *liverender *LOP, we can see the result.

![HoudoutInSolaris_Beauty.png](media://6863703a-e559-4d06-a09c-a4cb42ce50b2)

> 📝 If you want to combine the shadow AOV into the beauty alpha, you’ll need to change the Shadow AOV in the PxrShadowFilter node to a (rather than shadow)


So … This all looks ‘ok’ but … what about if we want to actually see our backplate in the Solaris viewport?  There’s a number of ways this can be achieved.

If you’re using RIS, then you can use the *pxrimageplanefilter *LOP to add a backplate to the viewport render.  At the moment, this is an RIS-only feature.

One other way to see the backplate in the render is to use a Slap Comp in COPs.  The following setup merges both the Alpha and Shadow AOVs into one and then blends that output over the backplate.

![HoudoutInSolaris_COPs.png](media://9ce7ad9a-6337-4c4c-a753-9f5d64ee598f)

![HoudoutInSolaris_COPs2.png](media://01f2118c-6158-4c40-a699-983df8ad56a7)

Turning on the Slap Comp preview in the Live Render will now composite our beauty over our backplate!


> 📝 Of course, using a Slap Comp is just a way to preview your CG over your backplate.  The final renders would be rendered to disc via Husk and composited in software like Nuke or Fusion, allowing for adjustments to the shadow color and intensity and fine tuning the grading of the CG into the backplate.