Creates a new Pass and makes it the current pass.

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

CreatePass( [PresetObj], [Name], [Value] );


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 Pass Returns the new pass


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


Application.LogMessage "-------------------"

' Create a diffuse pass

CreatePass InstallationPath( siFactoryPath ) _

	& "\Data\DSPresets\Groups\Diffuse_Pass.Preset", "Different_Pass"

' Create a depth pass

CreatePass InstallationPath( siFactoryPath ) _

	& "\Data\DSPresets\Groups\Depth_Pass.Preset", "Deep_Pass"

' Print out the new list of passes


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


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

GetCurrentPass SetCurrentPass DeleteCurrentPass RenderPasses CreateLayer SICreatePass SICreatePartition SICreateLayer