adskFrameBufferState.h File Reference


Detailed Description

Structures and functions for manipulating the frame buffer state.

#include "adskExport.h"
#include "adskMayaState.h"
#include "adskMIDataPtr.h"
#include "shader.h"
#include "adskShaderSDKNamespaceBegin.h"
#include "adskShaderSDKNamespaceEnd.h"
#include "adskRenderPassTypes.h"

Include dependency graph for adskFrameBufferState.h:
This graph shows which files directly or indirectly include this file:

Classes

struct   FrameBufferAccumulator
  Data structure that stores frame buffer state relative to a specific trace recursion level. More...
struct   FrameBufferInfo
  Data structure required to store the intermediate state for controlling frame buffer operations. More...
struct   PassTypeInfo
  Datastructure used internally to store type information on material render passes. More...

Enumerations

enum   FrameBufferFlagBits {
   FB_FLAG_NONE = 0, FB_FLAG_USE_TRANSPARENCY = 1 << 0, FB_FLAG_HOLDOUT = 1 << 1, FB_FLAG_REFLECT_HIDDEN = 1 << 2,
   FB_FLAG_REFRACT_HIDDEN = 1 << 3, FB_FLAG_HIDDEN_REFLECT = 1 << 4, FB_FLAG_HIDDEN_REFRACT = 1 << 5, FB_FLAG_TRANSPARENT_ATTENUATION = 1 << 6,
   FB_FLAG_COMPUTE_SHADOWS = 1 << 7, FB_FLAG_HIDDEN_SHADOWS = 1 << 8, FB_FLAG_LIGHT_ACTIVE = 1 << 9, FB_FLAG_SAMPLING_LIGHT = 1 << 10,
   FB_FLAG_NON_ADSK_LIGHT = 1 << 11, FB_FLAG_NO_MASTERBEAUTY = 1 << 12
}
  Bit flags used to describe the state and rendering options for render passes. The flags marked as "global" are only used on frame buffer 0, and store state information that is global to all frame buffers. More...

Functions

bool  isVolumePass (int index, PassTypeInfo *pPassTypeInfo)
  Tests whether a given render pass is a volume rendering pass.
MIDataPtr< FrameBufferData >  getFrameBufferDataBlock (miState *pState)
  Retrieve the user data block that contains all the frame buffer configuration information for the current camera.
unsigned int  getFrameBufferInfo (const miState *const pState, PassTypeInfo *&pPassTypeInfo, FrameBufferInfo *&pFrameBufferInfo)
  Retrieve pass and frame buffer information.
miInteger  getNonMaterialPassFrameBufferIndex (miState *pState, miInteger pPassNumber)
  Retrieve non material pass frame buffer index.

Enumeration Type Documentation

Bit flags used to describe the state and rendering options for render passes. The flags marked as "global" are only used on frame buffer 0, and store state information that is global to all frame buffers.

Enumerator:
FB_FLAG_NONE  No flags.
FB_FLAG_USE_TRANSPARENCY  The render pass uses transparency.
FB_FLAG_HOLDOUT  The render pass uses holdout.
FB_FLAG_REFLECT_HIDDEN  Hidden objects are visible in reflections for the current render pass.
FB_FLAG_REFRACT_HIDDEN  Hidden objects are visible in refractions for the current render pass.
FB_FLAG_HIDDEN_REFLECT  Hidden objects cast reflections for the current render pass.
FB_FLAG_HIDDEN_REFRACT  Hidden objects cast refractions for the current render pass.
FB_FLAG_TRANSPARENT_ATTENUATION  The render pass is to be modulated by its opacity.
FB_FLAG_COMPUTE_SHADOWS  The renderpass contains shadows.
FB_FLAG_HIDDEN_SHADOWS  Hidden objects cast shadows for in the render pass.
FB_FLAG_LIGHT_ACTIVE  Indicates whether the current light contributes to the render pass.
FB_FLAG_SAMPLING_LIGHT  Indicates that the shader is inside a light sampling loop (global).
FB_FLAG_NON_ADSK_LIGHT  Indicates that the current light shader is not compliant with the SDK (global).
FB_FLAG_NO_MASTERBEAUTY  Indicates that the current ray was cast solely for render passes and does not contribute to the master beauty (global).

Function Documentation

MIDataPtr<FrameBufferData> getFrameBufferDataBlock ( miState *  pState  ) 

Retrieve the user data block that contains all the frame buffer configuration information for the current camera.

Parameters:
[in]  pState  the shading state
Returns:
The data block

unsigned int getFrameBufferInfo ( const miState *const   pState,
PassTypeInfo *&  pPassTypeInfo,
FrameBufferInfo *&  pFrameBufferInfo  
)

Retrieve pass and frame buffer information.

Parameters:
[in]  pState  the shading state
[out]  pPassTypeInfo  pointer to the pass type info shader state
[out]  pFrameBufferInfo  pointer to the frame buffer info shader state
Returns:
Number of frame buffers

miInteger getNonMaterialPassFrameBufferIndex ( miState *  pState,
miInteger  pPassNumber  
)

Retrieve non material pass frame buffer index.

Parameters:
[in]  pState  the shading state
[in]  pPassNumber  the number of the pass
Returns:
The frame buffer index.

bool isVolumePass ( int  index,
PassTypeInfo pPassTypeInfo  
) [inline]

Tests whether a given render pass is a volume rendering pass.

Parameters:
[in]  index  the render pass index
[in]  pPassTypeInfo  pointer to the pass type info array
Returns:
true if the pass is a volume pass

Autodesk® Maya® 2009 © 1997-2008 Autodesk, Inc. All rights reserved. Generated with doxygen 1.5.6