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 operator IsEqualTo operator OutputFormatDef ProcessType
PropertyName      
       

Properties

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

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