TBasicFinalRenderer Class Reference
[Base Classes for plugins]

Inheritance diagram for TBasicFinalRenderer:
I3DExFinalRenderer TBasicDataExchanger IMCUnknown TBasicUnknown IExDataExchanger TMCObject IMCUnknown IMCUnknown

List of all members.

Public Member Functions

virtual MCCOMErr MCCOMAPI QueryInterface (const MCIID &riid, void **ppvObj)
virtual uint32 MCCOMAPI AddRef ()
virtual MCCOMErr MCCOMAPI SetTreeTop (I3DShGroup *treeTop)
virtual MCCOMErr MCCOMAPI SetCamera (I3DShCamera *camera)
virtual MCCOMErr MCCOMAPI SetEnvironment (I3DShEnvironment *environment)
virtual MCCOMErr MCCOMAPI SetAmbientLight (const TMCColorRGB &ambiantColor)
virtual MCCOMErr MCCOMAPI SetFieldRenderingData (int32 fieldRenderingSettings, int16 firstFrame)
virtual void MCCOMAPI GetRenderStatistics (I3DRenderStatistics **renderstats)=0
virtual MCCOMErr MCCOMAPI FinishDraw ()
virtual boolean MCCOMAPI IsSMPAware ()
virtual void MCCOMAPI RenderVolumetrics (boolean renderEffects)
virtual void MCCOMAPI RenderBackGround (boolean enable)
virtual void MCCOMAPI SeparateShadow (boolean enable)
virtual void MCCOMAPI OptimizeTileSize (TMCPoint &inOutTileSize)
virtual void MCCOMAPI GetTileRenderer (I3DExTileRenderer **tileRenderer)
virtual void MCCOMAPI BeginRendering ()
virtual void MCCOMAPI EndRendering (boolean aborting)
virtual void MCCOMAPI CreateRaytracer (I3DExRaytracer **raytracer)
virtual void MCCOMAPI SetLightingDetailOptions (boolean atmosphereDetails, boolean volumePrimitivesDetails, boolean volumetricEffectsDetails)

Detailed Description

Basic Final Renderer class. Derive from this for a default implementation of I3DExFinalRenderer.

See also:
I3DExFinalRenderer

Member Function Documentation

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

Increments the reference count of the object

Reimplemented from TBasicDataExchanger.

virtual void MCCOMAPI TBasicFinalRenderer::BeginRendering (  )  [virtual]

Called at the beginning of the rendering of an animation

Implements I3DExFinalRenderer.

virtual void MCCOMAPI TBasicFinalRenderer::CreateRaytracer ( I3DExRaytracer **  raytracer  )  [virtual]

Returns a pointer to a Raytracer (or Lighting Model). This function should only be called after PrepareDraw and before FinishDraw. You cannot keep the raytracer between two frames, you need a new raytracer for each frame.

Parameters:
raytracer The pointer to the raytracer that is returned

Implements I3DExFinalRenderer.

virtual void MCCOMAPI TBasicFinalRenderer::EndRendering ( boolean  aborting  )  [virtual]

Called at the end of the rendering of an animation

Implements I3DExFinalRenderer.

virtual MCCOMErr MCCOMAPI TBasicFinalRenderer::FinishDraw (  )  [virtual]

Called at the end of the rendering of each frame. You can use this function to delete the temporary rendering caches.

Note, that it is called only once even in SMP.

Implements I3DExFinalRenderer.

virtual void MCCOMAPI TBasicFinalRenderer::GetRenderStatistics ( I3DRenderStatistics **  renderstats  )  [pure virtual]

Returns a pointer to the rendering statistics object.

Parameters:
renderstats A pointer to next render statistics.

Implements I3DExFinalRenderer.

virtual void MCCOMAPI TBasicFinalRenderer::GetTileRenderer ( I3DExTileRenderer **  tileRenderer  )  [virtual]

Creates a new tile renderer. This function is called after PrepareDraw() and before FinishDraw().

Note that you should always return a new renderer if your renderer is SMP compliant since tile renderer is created for each rendering thread.

Parameters:
tileRenderer A pointer to the tile renderer created
See also:
I3DExTileRenderer

Implements I3DExFinalRenderer.

virtual boolean MCCOMAPI TBasicFinalRenderer::IsSMPAware (  )  [virtual]

Returns True if the renderer supports SMP (multiprocessors) which means that several tiles can be rendered at the same time in different preemptive threads.

You should returns false if the renderer does not support reentrant calls.

Implements I3DExFinalRenderer.

virtual void MCCOMAPI TBasicFinalRenderer::OptimizeTileSize ( TMCPoint inOutTileSize  )  [virtual]

Optimize the size of the tiles for rendering speed by increasing the tile if necessary

Parameters:
inOutTileSize Should contain the proposed tile size when the function is called. Contains the optimized tile size when the function returns.

Implements I3DExFinalRenderer.

virtual MCCOMErr MCCOMAPI TBasicFinalRenderer::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.

virtual void MCCOMAPI TBasicFinalRenderer::RenderBackGround ( boolean  enable  )  [virtual]

Turn on/off the rendering of the background of the image. (When the background rendering is turned off it should be black). This is used for alpha channel rendering/compositing. By "background" it is meant anything that is not hidden by an object, so backdrop, background, ...

Parameters:
enable True if the background should be rendered

Implements I3DExFinalRenderer.

virtual void MCCOMAPI TBasicFinalRenderer::RenderVolumetrics ( boolean  renderEffects  )  [virtual]

This call is called by the shell to enable/disable the rendering of volumetric effects (like light cones and light spheres)

Parameters:
renderEffects True if the volumetric effects should be rendered.

Implements I3DExFinalRenderer.

virtual void MCCOMAPI TBasicFinalRenderer::SeparateShadow ( boolean  enable  )  [virtual]

Turn on/off separation of the shadow in lighting computation.

Parameters:
enable True if the shadows should be separated

Implements I3DExFinalRenderer.

virtual MCCOMErr MCCOMAPI TBasicFinalRenderer::SetAmbientLight ( const TMCColorRGB ambiantColor  )  [virtual]

Sets the ambient light color

Parameters:
ambiantColor the color of the ambient light.

Implements I3DExFinalRenderer.

virtual MCCOMErr MCCOMAPI TBasicFinalRenderer::SetCamera ( I3DShCamera camera  )  [virtual]

Specifies the rendering camera.

Parameters:
camera The rendering camera.

Implements I3DExFinalRenderer.

virtual MCCOMErr MCCOMAPI TBasicFinalRenderer::SetEnvironment ( I3DShEnvironment environment  )  [virtual]

Sets up the background, backdrop, and atmospheric shader

Parameters:
environment The specified environment.

Implements I3DExFinalRenderer.

virtual MCCOMErr MCCOMAPI TBasicFinalRenderer::SetFieldRenderingData ( int32  fieldRenderingSettings,
int16  firstFrame 
) [virtual]
Deprecated:
Initializes FieldRendering for video output. This function is called once before the rendering starts. If FieldRendering is on, the rendering Module will render twice as many frames as it will output, then it will mix the even and odd lines from two frames to build one frame.
Parameters:
fieldRenderingSettings Not documented
firstFrame Not documented

Implements I3DExFinalRenderer.

virtual void MCCOMAPI TBasicFinalRenderer::SetLightingDetailOptions ( boolean  atmosphereDetails,
boolean  volumePrimitivesDetails,
boolean  volumetricEffectsDetails 
) [virtual]

Sets the lighting details options used for multipass rendering

Parameters:
atmosphereDetails True if it wants atmosphere details
volumePrimitivesDetails True if it wants volume primitive details
volumetricEffectsDetails True if it wants volume effect details

Implements I3DExFinalRenderer.

virtual MCCOMErr MCCOMAPI TBasicFinalRenderer::SetTreeTop ( I3DShGroup treeTop  )  [virtual]

Specifies which tree needs to be rendered (generally the universe).

Parameters:
treeTop A pointer to the top of the tree hierarchy.

Implements I3DExFinalRenderer.


The documentation for this class was generated from the following file:
Generated on Mon Apr 26 22:47:56 2010 for Carrara SDK Doc by  doxygen 1.6.3