version 3.3

VRS::ShadingHint Class Reference

#include <vrs/shadinghint.h>

Inheritance diagram for VRS::ShadingHint:

VRS::MonoAttribute VRS::Attribute VRS::RenderObj VRS::SharedObj VRS::Visitable

List of all members.

Public Types

enum  PassType {
  FULL_SHADING_PASS = 0, MAIN_SHADING_PASS = 1, SINGLE_LIGHT_SHADING_PASS = 2, GEOMETRY_SHADING_PASS = 3,
  NO_SHADING_PASS = 4
}

Public Member Functions

 VRS_SERIALIZABLE_CLASS_ENUM (PassType)
 ShadingHint (PassType, bool mirrored=false, bool isZAltering=true, const Light *=0)
ShadingHint::PassType getPassType () const
bool isMirrored () const
bool isZAltering () const
const LightgetLight () const
 VRS_TYPEINFO (ShadingHint, MonoAttribute)


Member Enumeration Documentation

Enumerator:
FULL_SHADING_PASS 
MAIN_SHADING_PASS 
SINGLE_LIGHT_SHADING_PASS 
GEOMETRY_SHADING_PASS 
NO_SHADING_PASS 


Constructor & Destructor Documentation

VRS::ShadingHint::ShadingHint ( PassType  ,
bool  mirrored = false,
bool  isZAltering = true,
const Light = 0 
)

A Shadinghint is specified by a technique to communicate what type of rendering pass currently is active. PassType is one of the following:

FULL_SHADING_PASS: Full shading pass, i.e. shapes are rendering with all light sources active.
MAIN_SHADING_PASS: Full shading pass of the main technique. In this pass, light sources might be deactivated, e.g., due to shadow techniques.
SINGLE_LIGHT_SHADING_PASS: shapes are rendered with respect of a single light. The light can be retrived by the rendering hint as well.
GEOMETRY_SHADING_PASS: shapes are rendered, but only the standard shading is expected.
NO_SHADING_PASS: No rendering occurs at all. e.g., analytical calculations.

If the flag mirrored is set, the scene is currently evaluated from a mirrored position. The Light is only set in a SINGLE_LIGHT_SHADING_PASS.

If the z altering flag mirrored is set, the current rendering pass changes the z-buffer. Else it is assured that the z-buffer remains unchanged.

Techniques should push the correct rendering hint at the beginning of a rendering pass, but only for passes for which they are responsable, (e.g., not in the main rendering pass).


Member Function Documentation

VRS::ShadingHint::VRS_SERIALIZABLE_CLASS_ENUM ( PassType   ) 

ShadingHint::PassType VRS::ShadingHint::getPassType (  )  const

bool VRS::ShadingHint::isMirrored (  )  const

bool VRS::ShadingHint::isZAltering (  )  const

const Light* VRS::ShadingHint::getLight (  )  const

VRS::ShadingHint::VRS_TYPEINFO ( ShadingHint  ,
MonoAttribute   
)


The documentation for this class was generated from the following file:

Generated on Tue May 22 06:00:31 2012 by Doxygen 1.5.6
© 2001-2010 Hasso-Plattner-Institut | Impressum | Contact