## Renderer

Object Hierarchy | Related C++ Class: Renderer

### Inheritance

###

SIObject

Renderer

### Introduced

v7.0

### Description

The Renderer object holds read-only information on a particular rendering engine registered with Softimage. The list of rendering engines can be accessed through XSIApplication.Renderers

### Methods

IsClassOf | IsEqualTo | OutputFormatDef | ProcessType
PropertyName |  |  |

### Properties

Application | Categories | DefaultChannels | FullName
Help | Name | NestedObjects | ObjectArchiveInfo
Origin | OriginPath | OutputFormats | Parent
ProcessTypes | SceneArchiveInfo | Type |

### Examples

#### JScript Example

    // Print out information on all registered rendering engines.

    function printRenderer( renderer )

    {

    	var aProcessNames = new Array( "Rendering", "Scene Archive Export", "Object Archive Export" );

    	LogMessage( "Renderer: " + renderer.Name );

    	var aTypes = renderer.ProcessTypes.toArray();

    	var aProcessTypes = new Array();

    	for( var type in aTypes )

    		aProcessTypes.push( aProcessNames[ type ] );

    	LogMessage( "  Process types: " + aProcessTypes.join( ", " ) );

    	LogMessage( "  Render options name: " + renderer.PropertyName( siRenderPropertyOptions ) );

    	if( renderer.ProcessType( siRenderProcessExportArchive ) )

    	{

    		var sceneArchive = renderer.SceneArchiveInfo

    		LogMessage( "  Scene Archive:" );

    		LogMessage( "    Name: " + sceneArchive.Name );

    		LogMessage( "    File Extension: " + sceneArchive.Extension );

    		LogMessage( "    Multiframe Support: " + sceneArchive.Multiframe );

    	}

    	if( renderer.ProcessType( siRenderProcessExportObjectArchive ) )

    	{

    		var objectArchive = renderer.ObjectArchiveInfo

    		LogMessage( "  Object Archive:" );

    		LogMessage( "    Name: " + objectArchive.Name );

    		LogMessage( "    File Extension: " + objectArchive.Extension );

    		LogMessage( "    Multiframe Support: " + objectArchive.Multiframe );

    		LogMessage( "    Display Proxy Support: " + objectArchive.DisplayProxy );

    	}

    	var oChannels = new VBArray( renderer.DefaultChannels ).toArray();

    	if( oChannels.length > 0 )

    	{

    		var sTypeNames = new Array( "Unknown", "Color", "Grayscale", "Depth", "Normal", "Vector", "Label" );

    		LogMessage( "  Provided channels:" );

    		for( var i = 0; i < oChannels.length; i += 2 )

    			LogMessage( "    " + oChannels[ i ] + " (" + sTypeNames[ oChannels[ i + 1 ] ] + ")" );

    	}

    	var oFormats = new VBArray( renderer.OutputFormats ).toArray();

    	if( oFormats.length > 0 )

    	{

    		var aFormatList = new Array( );

    		for( var i = 0; i < oFormats.length; i += 2 )

    			aFormatList.push( oFormats[ i ] + " (\"" + oFormats[ i + 1 ] + "\")" );

    		LogMessage( "  Provided output formats: " + aFormatList.join( ", " ) );

    	}

    	LogMessage( "" );

    }

    var e = new Enumerator( Application.Renderers );

    for( ; !e.atEnd(); e.moveNext() )

    	printRenderer( e.item() );

### See Also

XSIApplication.Renderers PluginRegistrar::RegisterRenderer Custom Renderers