I3DExRaytracer Struct Reference
[External Interfaces]

Inheritance diagram for I3DExRaytracer:

IMCUnknown List of all members.

Public Member Functions

virtual boolean MCCOMAPI LightBeam (const RayHit3D &origin, const Ray3D &aR, real tmin, real tmax, TMCColorRGBA &filterColor, uint32 &numberOfRays)=0
virtual boolean MCCOMAPI GetRayColor (TMCColorRGBA &resColor, const RayHitParameters &rayHitParams, const RTLevelInfo &level, const TVector2 &screenCoordinates, uint32 &numberOfRays, RayColorFlags flags)=0
virtual int32 GetLightCount ()=0
virtual boolean MCCOMAPI GetLightIntensity (DirectLighting &lighting, int32 lightIndex, const LightingContext &lightingContext, boolean withShadow)=0
virtual void MCCOMAPI CalcReflections (ReflectionIO &reflectionIO, const LightingContext &lightingContext)=0
virtual void MCCOMAPI CalcTransparency (RefractionIO &transparencyIO, const LightingContext &lightingContext)=0
virtual void MCCOMAPI CalculateCaustic (TMCColorRGB &resColor, const LightingContext &lightingContext)=0
virtual void MCCOMAPI GetIndirectLighting (TMCColorRGB &resColor, const LightingContext &lightingContext)=0
virtual void MCCOMAPI GetBackGroundColor (TMCColorRGBA &color, boolean &fullAreaDone, const Ray3D &ray, const TVector2 &uv, boolean showbackdrop, boolean showBackGround, boolean indirectLight)=0
virtual void MCCOMAPI GetLightDirection (TVector3 &lightDirection, int32 lightIndex, const LightingContext &lightingContext)=0
virtual const IllumSettings
&MCCOMAPI 
GetIllumSettings ()=0
virtual const RendEnv &MCCOMAPI GetRendEnv ()=0

Detailed Description

This interface is usually implemented by a final renderer or by an object created by a final renderer. It is passed to the shaders so that they can use it to calculate the lighting.


Member Function Documentation

virtual void MCCOMAPI I3DExRaytracer::CalcReflections (  ReflectionIO &  reflectionIO,
const LightingContext &  lightingContext
)  [pure virtual]
 

Calculates the light the comes from the reflection

Parameters:
reflectionIO : the reflection data
lightingContext : information about the hit point

virtual void MCCOMAPI I3DExRaytracer::CalcTransparency (  RefractionIO &  transparencyIO,
const LightingContext &  lightingContext
)  [pure virtual]
 

Calculates the light the comes from the transparency

Parameters:
transparencyIO : the transparency data
lightingContext : information about the hit point

virtual void MCCOMAPI I3DExRaytracer::CalculateCaustic (  TMCColorRGB &  resColor,
const LightingContext &  lightingContext
)  [pure virtual]
 

Calculates the caustics at a given point.

Parameters:
resColor : the caustic light color.
lightingContext : information about the hit point.

virtual void MCCOMAPI I3DExRaytracer::GetBackGroundColor (  TMCColorRGBA &  color,
boolean &  fullAreaDone,
const Ray3D &  ray,
const TVector2 &  uv,
boolean  showbackdrop,
boolean  showBackGround,
boolean  indirectLight
)  [pure virtual]
 

Calculate the color of the background/backdrop seen through a particular ray. Note that the backdrop should only be visible through direct ray from the camera.

The atmosphere is also applied on the color along the ray.

Parameters:
color : the color returned
fullAreaDone : returns true if antialising has been performed
ray : the ray
uv : The screen coordinates
showbackdrop : True if the backdrop should be taken into account (normally only for rays coming directly from that Camera)
showBackGround : True if the backgroundshould be taken into account
indirectLight : True if this is a ray used to calculate indirect lighting (for global illumination)

virtual const IllumSettings& MCCOMAPI I3DExRaytracer::GetIllumSettings (   )  [pure virtual]
 

Returns the current illumination settings of the renderer

virtual void MCCOMAPI I3DExRaytracer::GetIndirectLighting (  TMCColorRGB &  resColor,
const LightingContext &  lightingContext
)  [pure virtual]
 

Computes the indirect lighting of a point by sampling the direction around its normal.

Parameters:
resColor : the indirect diffuse lighting.
lightingContext : information about the hit point.

virtual int32 I3DExRaytracer::GetLightCount (   )  [pure virtual]
 

Returns the number of lights in the scene

virtual void MCCOMAPI I3DExRaytracer::GetLightDirection (  TVector3 &  lightDirection,
int32  lightIndex,
const LightingContext &  lightingContext
)  [pure virtual]
 

Returns the direction of a given light

Parameters:
lightDirection Direction from the point to the light source.
lightIndex Index of the light (should be inferior to the value returned by GetLightCount)
lightingContext Information about the hit point

virtual boolean MCCOMAPI I3DExRaytracer::GetLightIntensity (  DirectLighting &  lighting,
int32  lightIndex,
const LightingContext &  lightingContext,
boolean  withShadow
)  [pure virtual]
 

Calculates the lighting from one light for the current point.

Parameters:
lighting intensity of the lighting
lightIndex index of the light (should be inferior to the value returned by GetLightCount)
lightingContext information about the hit point
withShadow if true then the shadow are calculated
Returns:
True if the light is emitting light in that direction (without taking the shadows into account)

virtual boolean MCCOMAPI I3DExRaytracer::GetRayColor (  TMCColorRGBA &  resColor,
const RayHitParameters &  rayHitParams,
const RTLevelInfo &  level,
const TVector2 &  screenCoordinates,
uint32 &  numberOfRays,
RayColorFlags  flags
)  [pure virtual]
 

Returns the color of a ray given in RayHitParameters in resColor

Parameters:
resColor : The color that is returned
rayHitParams : The parameters of the ray
level : The level of reflection/transparency
screenCoordinates : The coordinates of the point on the screen whose color depends on that ray.
numberOfRays : return the number of rays used to evaluate this sample
flags : Flags to control what should be taken into account in the shading of the hit point.

virtual const RendEnv& MCCOMAPI I3DExRaytracer::GetRendEnv (   )  [pure virtual]
 

Returns the current rendering environment

virtual boolean MCCOMAPI I3DExRaytracer::LightBeam (  const RayHit3D &  origin,
const Ray3D &  aR,
real  tmin,
real  tmax,
TMCColorRGBA &  filterColor,
uint32 &  numberOfRays
)  [pure virtual]
 

Traces a ray between two points (tmax should be normally finite). This is by the shadow feature to calculate the shadows.

Parameters:
origin : the point from which the ray starts (used to avoid self shadowing)
aR : the ray
tmin : The start of the segment on the ray
tmax : The end of the segment on the ray
filterColor : On input the color at the tmax point, on ouput the color after being filtered by the scene.
Returns:
True if there was a hit


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