SICreatePass

Description

Creates a new Pass. A render pass creates a picture layer of a scene that can be composited with any other passes to create a complete image.

Note: This command uses output arguments. C# and some scripting languages (such as JScript, PerlScript and Python) don't support arguments passed by reference so you need to use the best workaround for your situation:

For scripting languages this command returns an ISIVTCollection which you can use to get the output arguments.

For C# you can use the XSIApplication.ExecuteCommand method to call this command. ExecuteCommand packs the output arguments into a C# System.Object containing an Array of the output arguments (see Calling Commands from C#).

Scripting Syntax

SICreatePass( [PresetObj], [Name], [Value] )

Parameters

Parameter

Type

Description

PresetObj

String or a preset object (see SIGetPreset)

Any of the Pass Presets

Default Value: "Pass" (default pass)

Name

String

Name of the new pass.

Default Value: Default pass name (ie., "Ambient_Pass")

Value [out]

Pass

Returns the new pass.

Examples

VBScript Example

'
'  This example demonstrates how to create different types of passes
'  based on pass presets. It also shows how to get a list of all
'  passes in the scene as an XSICollection.
'

' Create a new scene 
NewScene , false

' Print out the current list of passes
getPassInfo
Application.LogMessage "-------------------"

' Create a diffuse pass
SICreatePass InstallationPath( siFactoryPath ) _
   & "\Data\DSPresets\Groups\Diffuse_Pass.Preset", "Different_Pass"

' Create a depth pass
SICreatePass InstallationPath( siFactoryPath ) _
   & "\Data\DSPresets\Groups\Depth_Pass.Preset", "Deep_Pass"

' Print out the new list of passes
getPassInfo


function getPassInfo()
   ' We can use a string expression with a wildcard to specify all passes 
   ' and then convert it to an XSICollection for easier navigation 
   Set oPasses = CreateObject( "XSI.Collection" )
   oPasses.SetAsText "Passes.*"

   ' Loop through the passes and print their names
   For Each p In oPasses
       Application.LogMessage p.Name
   Next
end function



' Output of the above script (the current pass is repeated):
'INFO : "List"
'INFO : "Default_Pass"
'INFO : "Default_Pass"
'INFO : "-------------------"
'INFO : "List"
'INFO : "Default_Pass"
'INFO : "Different_Pass"
'INFO : "Deep_Pass"
'INFO : "Deep_Pass"

See Also

RenderPasses

RenderAllPasses

CreatePartition

CreateLayer

CreatePass

GetCurrentPass

SetCurrentPass

DeleteCurrentPass



Autodesk Softimage v7.5