Framebuffer
 
 
 

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 AddICEAttribute AddScriptedOp AddScriptedOpFromFile
AnimatedParameters2 BelongsTo operator EvaluateAt GetICEAttributeFromName
GetResolvedPath IsA IsAnimated2 IsClassOf operator
IsEqualTo operator IsKindOf IsLocked operator IsSelected operator
LockOwners RemoveICEAttribute 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