TBasicPostRenderer Class Reference
[Base Classes for plugins]

Inheritance diagram for TBasicPostRenderer:

I3DExPostRenderer TBasicDataExchanger IMCUnknown TBasicUnknown IMCUnknown List of all members.

Public Member Functions

virtual MCCOMErr MCCOMAPI QueryInterface (const MCIID &riid, void **ppvObj)
virtual uint32 MCCOMAPI AddRef ()
virtual void MCCOMAPI GetBufferNeeds (uint32 &needs, void *renderer)=0
virtual MCCOMErr MCCOMAPI PrepareDraw (IShRasterLayer *input, const TMCRect &bounds, IShChannel *buffers[], I3DShScene *scene, I3DShCamera *renderingCamera, const TBBox2D &uvBox, const TBBox2D &productionFrame)=0
virtual MCCOMErr MCCOMAPI DrawRect (const TMCRect &outputRect, const TChannelDataBucket *outputTile[], const TBBox2D &uvBox)=0
virtual MCCOMErr MCCOMAPI FinishDraw ()=0
virtual MCCOMErr MCCOMAPI BeginRender (MicroTick beginTime, MicroTick endTime, uint32 framePerSeconds, int32 nbrFrames, boolean isRenderMovie)
virtual MCCOMErr MCCOMAPI EndRender ()

Detailed Description

Basic Post Renderer class. Derive from this for a default implementation of I3DExPostRenderer
See also:
I3DExPostRenderer


Member Function Documentation

virtual uint32 MCCOMAPI TBasicPostRenderer::AddRef (   )  [inline, virtual]
 

Increments the reference count of the object

Reimplemented from TBasicUnknown.

virtual MCCOMErr MCCOMAPI TBasicPostRenderer::BeginRender (  MicroTick  beginTime,
MicroTick  endTime,
uint32  framePerSeconds,
int32  nbrFrames,
boolean  isRenderMovie
)  [inline, virtual]
 

Called at the beginning of the rendering of an animation. This can be used if you want to create a Post Renderer that depends on previous frames.

Parameters:
beginTime The time at which the rendering starts (in MicroTick)
endTime The time at which the rendering ends (in MicroTick)
framePerSeconds The number of frame per second
nbrFrames The total number of frame that will be rendered.
isRenderMovie True if an animation is being rendered.

Implements I3DExPostRenderer.

virtual MCCOMErr MCCOMAPI TBasicPostRenderer::DrawRect (  const TMCRect &  outputRect,
const TChannelDataBucket *  outputTile[],
const TBBox2D &  uvBox
)  [pure virtual]
 

Called for each tile of the output image. This is where the actual rendering takes place.

Parameters:
outputRect The Rectangle of the tile (in pixels)
outputTile Pointers to pixel buckets (R,G,B,A) of the output tile.
uvBox The screen coordinates of the tile

Implements I3DExPostRenderer.

virtual MCCOMErr MCCOMAPI TBasicPostRenderer::EndRender (   )  [inline, virtual]
 

Called at the end of the rendering of an animation.

Implements I3DExPostRenderer.

virtual MCCOMErr MCCOMAPI TBasicPostRenderer::FinishDraw (   )  [pure virtual]
 

Called for clean up at the end of the postrendering (after DrawRect()).

Implements I3DExPostRenderer.

virtual void MCCOMAPI TBasicPostRenderer::GetBufferNeeds (  uint32 &  needs,
void *  renderer
)  [pure virtual]
 

Identifies which GBuffers are necessary to compute this post renderer. To find the various contants used for GBuffer check at the end of I3DExPostRenderer.h

Parameters:
needs A bit field that identifies which GBuffers are necessary. The bits are set to 1 if the corresponding GBuffer should be filled. For example, it you want the distance buffer and glow buffer, you write the following code:
            need = (1<<k32GlowColor) + (1<<k32Distance);
renderer Not used

Implements I3DExPostRenderer.

virtual MCCOMErr MCCOMAPI TBasicPostRenderer::PrepareDraw (  IShRasterLayer *  input,
const TMCRect &  bounds,
IShChannel *  buffers[],
I3DShScene *  scene,
I3DShCamera *  renderingCamera,
const TBBox2D &  uvBox,
const TBBox2D &  productionFrame
)  [pure virtual]
 

Called at the begginning of postrendering to initialise the postrenderer.

Parameters:
input The color buffer of the image.
bounds The image rectangle in pixels
buffers The array of pointers to the GBuffers (The pointers are null if the corresponding buffer is not allocated)
scene The scene being rendered
renderingCamera The current renderingCamera
uvBox screen Coordinates of the image to render
productionFrame Screen coordinates of the production frame

Implements I3DExPostRenderer.

virtual MCCOMErr MCCOMAPI TBasicPostRenderer::QueryInterface (  const MCIID &  riid,
void **  ppvObj
)  [virtual]
 

Check if the object supports a given interface and returns a pointer to that interface if it does. Note that QueryInterface will increment the reference count of the object by one if the interface is found.

Parameters:
riid GUID of the interface
ppvObj A pointer to the pointer being returned.

Reimplemented from TBasicDataExchanger.


The documentation for this class was generated from the following file:
Generated on Mon Mar 14 12:29:07 2005 for Carrara SDK Doc by  doxygen 1.3.9.1