Framebuffer

Object Hierarchy | Related C++ Class: Framebuffer

Inheritance

SIObject

ProjectItem

Framebuffer

Introduced

v6.0

Description

The Framebuffer object controls the file output of a RenderChannel object. It can be created using the Pass.CreateFramebuffer method or the CreateFramebuffer command.

The framebuffer format can be selected from the list of formats provided by the rendering engine selected on the framebuffer's Pass object.

Methods

AddCustomOp AddScriptedOp AddScriptedOpFromFile AnimatedParameters2
BelongsTo operator EvaluateAt GetICEAttributeFromName GetResolvedPath
IsA IsAnimated2 IsClassOf operator IsEqualTo operator
IsKindOf IsLocked operator IsSelected operator LockOwners
SetAsSelected operator SetCapabilityFlag operator SetLock TaggedParameters
UnSetLock      
       

Properties

Application BitDepths BranchFlag operator Capabilities operator
Categories DataTypes EvaluationID Families operator
Formats FullName operator Help HierarchicalEvaluationID
ICEAttributes LockLevel operator LockMasters operator LockType operator
Model Name operator NestedObjects ObjectID
Origin OriginPath Owners PPGLayout operator
Parameters operator Parent Parent3DObject RenderChannel
Selected operator Type operator    
       

Examples

JScript Example

/*
        This example demonstrates how to list all framebuffers from 
        all passes and the resolved paths they point to.
*/
function ListPasses()
{
        var ePass = new Enumerator( ActiveProject.ActiveScene.Passes );
        for( ; !ePass.atEnd(); ePass.moveNext() )
        {
                var oPass = ePass.item();
                Application.LogMessage( "Pass '"  + oPass.Name + "': " );
                var eFramebuffer = new Enumerator( oPass.Framebuffers );
                for( ; !eFramebuffer.atEnd(); eFramebuffer.moveNext() )
                {
                        var oFramebuffer = eFramebuffer.item();
                        Application.LogMessage( "Framebuffer '" + oFramebuffer.Name + "' writes to '" +
                                oFramebuffer.GetResolvedPath( "" ) + "'" );
                }
        }
}
NewScene( null, false );
var oScene = ActiveProject.ActiveScene;
var oNewPass = oScene.PassContainer.AddPass( null, "" );
var oDiffuseBuffer = oNewPass.CreateFramebuffer( "Diffuse" );
oDiffuseBuffer.FileName = "diffuse.[Frame #4]";
ListPasses( );
// Expected results:
// INFO : Pass 'Default_Pass': 
// INFO : Framebuffer 'Main' writes to '<factory_path>\Data\XSI_SAMPLES\Render_Pictures\Default_Pass_Main.#.pic'
// INFO : Pass 'Pass': 
// INFO : Framebuffer 'Main' writes to '<factory_path>\Data\XSI_SAMPLES\Render_Pictures\Pass_Main.#.pic'
// INFO : Framebuffer 'Diffuse' writes to '<factory_path>\Data\XSI_SAMPLES\Render_Pictures\diffuse.####.pic'

See Also

RenderChannel FramebufferCollection SceneRenderProperty Pass