Using Renderpasses in XSI

By Adam Sale

Xsi comes prebuilt with a number of pass presets available for your projects needs. The time will arise, however, when the preset passes are found to be limiting in addressing your needs. This tutorial is intended to give an overview on the pass process from setup to final render. A later tutorial will delve into utilizing renderpasses in the FX tree. There are a number of tutorials provided with the XSI software documentation that serve to illustrate the usefulness of the pass presets.
To follow along with this tutorial, you may click here to download the sample scene that will be used to illustrate our techniques. The scene is a simple outer space scene composed of a number of elements that need splitting up into various passes
Why use passes? Nothing is stopping you from rendering out your entire scene using the default pass provided you upon first launching XSI. Unless you explicitly define new passes for your scene, XSI will store all scene information in one single pass that you can render out. The usefulness of renderpasses is one of speed and tweakability. By separating a scene into many different passes, you end up having ultimate control over the final look of your scene at the compositing stage.
Some tools in XSI cause conflicts when applied to the same pass, so assigning particular effects to their own passes ensures that they will render out properly. Certain environmental effects tend to artifact when rendered on the same pass as scene geometry. Numerous overlapping volumetric effects can also cause undesirable artifacting, again making a good argument for the use of renderpasses.
Elements of a pass
Turn viewport A into an explorer. With your mouse over viewport A press the (A) hotkey to switch the explorer from scene mode into passes mode. You could also switch to passes mode by selecting it from the pulldown menu. Switch over to the render module (Hotkey 3) and click on edit >new pass>empty. In the popup, give the pass the name BG_PASS.
Notice how in the explorer viewport a new pass is added. In the pass info area underneath the Pass tab of the render toolbar notice how you can toggle between available passes. When working with passes it is imperative to have this area display the current pass you're editing. In the explorer the passes window is set so that at the top in the list folder, you'll find a list of all defined passes for your scene. When opening a scene, you'll always start things off with a pass called 'Default Pass' Below the list of passes, unindented is the current pass you're working with. This scene now consists of two passes. The original default and the newly created BG_PASS.

Each pass has its own set of render options. This is the first time saving area you'll find in utilizing passes. Normally if a camera is locked down in a particular shot, it becomes economical to isolate the background of the scene into its own pass. This way you could set your render options to render out a single frame of the background even if the scene is 4 seconds in length. By negating the background from all subsequent passes, your renders will be quicker, and the file sizes of the successive passes will probably be smaller.

*** When working with numerous passes, it becomes advantageous to set all pass render options through scripting for speed purposes. Simple wildcards (*) can be enormous timesavers when applying repetitive commands to similar object properties

Partitions
Each pass in the scene consists of a Background objects partition and a Background Lights Partition. The visual icon suggests that partitions are simply groups attached to passes. The background objects partition is a group that contains all of the objects within the scene, lights excluded ( they belong to the background lights partition)
The first thing you notice is that like groups, you can click on the 3 balls icon and launch a ppg that allows you to toggle the visibility, renderability and selectablilty of a partition. Using this hide/unhide feature is the basis for splitting our scene into different renderpass plates.

For the background_objects_partition of the BG_PASS toggle off its renderability and visibility.

Click on the BG_PASS icon (triangle, sphere an cube) Click on the environment tab and click the add button. Load an environment night shader and tweak itto look like a starfield. (You can use the settings I used by clicking here. ) Once you're satisfied with the shader, your first pass is done. You've hidden all of the scene objects and have created a backdrop for the rest of the shot. Its pretty drab looking, not lively enough, so we'll add in another pass, this time a particle pass that is meant to simulate the various gases you'd find in the regions of our solar system.

Click on edit > new pass > empty.

Name the pass GAS_CLOUD_PASS. The first thing you notice when you create a new pass is that everything you've hidden in other passes, reappears for the newly created pass. That's because each time you make a new pass, you're also creating that passes own background lights partition and background objects partition. In essence, treating each pass like its own scene

For this pass, we'll create a particle cloud by switching to the simulate tab and clicking Simulate>create >particles> from disc. Adjust the particle settings to create a cloud moving slowly from left to right through the frame. If you're using the scene provided the settings are already created for you

For this pass, we don't need to hide the star BG because it was applied as an environment shader directly to the BG_PASS, and won't show up in this current pass.

***** The one bit of management you'll come up against is that when you add a new object to a scene that has already been split into passes, that onbject will visibly reappear in passes that you'd created to isolate a BG or a particular character. The solution to this is to always use the background objects partition and lights partition to hide unwanted objects, because each element created in the scene is always first founf in the passes bg objects partition. Upon creation, our particle cloud and emitter were hidden in the BG_PASS because they were created in the bg objects partition.

With the GAS_CLOUD_PASS being current, select the particle cloud and disc emitter and click on partition > new. Name the partition particle partition. Hide the bg objects partition for the GAS_CLOUD_PASS. It doesn't appear to do much now, but it'll be handier later as we add objects to the scene.
The Planetary Pass

If you've been following along using the sample scene, you'll see that you'll also have a planet in your scene. Isolating this planet on its own pass will allow for us to composite a glow around it to simulate planetary atmosphere. If you haven't been following with the scene, build a simple planet from a sphere and continue form here

Create a new pass and name it PLANETARY_PASS ( Pass > Edit > New Pass > Empty )

Select the Planet and create a new partition for it. ( Pass > Partition > New) Name this partition Planet_Partition. Close the Property Page.

Open the Property page for the Background_Objects_Partition, and toggle off the partitions view and render visibility. This should effectively hide the particle cloud, that we isolated in the GAS_CLOUD_PASS.
The Lens Flare Pass

What would a planetary snapshot be without a lens flare?

Lights are stored in a different kind of partition, A lights partition. And as its name suggests, it is only capable of creating partitions that include lights.

Create a new Pass and call it FLARE_PASS Select the spot light labelled LENS_FLARE_SPOT, and create a new partition for it. Call it Flare_Partition.

Hide the Background_Lights_Partition as well as the Background_Objects_Partition

Select the Flare_Partition and from the render toolbar click on Get>Property>Flare. Select the type of flare you want to use for the effect. The flare effect is found as a property directly under the object or partition being affected by it affecting it.
Tying it all together

The previous 4 passes should be enough for our final render.

All that's left to do is set the render options for each pass.

To access each passes render options, click on the pass names property icon in the explorer.

Each pass needs to have its own unique set of render pictures, so name accordingly when dealing with each pass.

When you've set all render pass options, save your scene and then click on Render > Render > All Passes. XSI renders each pass one at a time in the same order they show up in the Pass Pull Down menu. Below is a rough approximation of the images rendered by each pass.

 

Renderpasses was written by Adam Sale, Technical Director at Joncrow Entertainment. Adam is a fully certified Softimage Instructor who instructs at Various Institutions throughout Vancouver BC.
Space BG Pass
Planetary Pass
Particle Pass
Flare_Pass
In a following tutorial, we'll composite the various passes that were created into our final image sequence