Support Forum       G3D Web Page     
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
G3D::RenderPassType Class Reference

Used by G3D::Surface and G3D::Renderer to specify the kind of rendering pass. More...

Public Types

enum  Value {
  OPAQUE_SAMPLES,
  UNBLENDED_SCREEN_SPACE_REFRACTION_SAMPLES,
  SINGLE_PASS_UNORDERED_BLENDED_SAMPLES,
  MULTIPASS_BLENDED_SAMPLES,
  SHADOW_MAP,
  OPAQUE_SHADOW_MAP,
  TRANSPARENT_SHADOW_MAP,
  TRANSPARENT_AS_OPAQUE
}
 

Public Member Functions

 RenderPassType (const G3D::String &x)
 
 RenderPassType (char v)
 
 RenderPassType (int v)
 
 RenderPassType (const G3D::Any &a)
 
 RenderPassType ()
 
 RenderPassType (const Value v)
 
void deserialize (G3D::BinaryInput &b)
 
unsigned int hashCode () const
 
 operator int () const
 
bool operator!= (const RenderPassType ::Value other) const
 
bool operator!= (const RenderPassType other) const
 
RenderPassType operator+ (const int x) const
 
RenderPassTypeoperator++ ()
 
RenderPassTypeoperator+= (const int x)
 
RenderPassType operator- (const int x) const
 
RenderPassTypeoperator-- ()
 
RenderPassTypeoperator-= (const int x)
 
bool operator< (const RenderPassType other) const
 
bool operator< (const Value other) const
 
bool operator<= (const Value other) const
 
bool operator<= (const RenderPassType other) const
 
RenderPassTypeoperator= (const G3D::Any &a)
 
bool operator== (const RenderPassType ::Value other) const
 
bool operator== (const RenderPassType other) const
 
bool operator> (const RenderPassType other) const
 
bool operator> (const Value other) const
 
bool operator>= (const RenderPassType other) const
 
bool operator>= (const Value other) const
 
void serialize (G3D::BinaryOutput &b) const
 
G3D::Any toAny () const
 
const char * toString () const
 

Static Public Member Functions

static const char * classname ()
 
static int count ()
 
static Value nthValue (int n)
 
static const char * toString (int i, Value &v)
 

Public Attributes

enum G3D::RenderPassType::Value value
 

Detailed Description

Used by G3D::Surface and G3D::Renderer to specify the kind of rendering pass.

Member Enumeration Documentation

◆ Value

Enumerator
OPAQUE_SAMPLES 

Write to the depth buffer, only render 100% coverage, non-transmission samples, no blending allowed.

UNBLENDED_SCREEN_SPACE_REFRACTION_SAMPLES 

Samples that require screen-space refraction information, and so must be rendered after the usual opaque pass.

This pass is only for non-OIT refraction.

SINGLE_PASS_UNORDERED_BLENDED_SAMPLES 

Do not write to the depth buffer.

Only blended samples allowed. Use RenderDevice::DEPTH_LESS to prevent writing to samples from the same surface that were opaque and already colored by previous passes. Only a single pass per surface is allowed. Do not modify the current blend mode on the RenderDevice, which has been configured to work with a specific output macro. Surfaces need not be submitted in order.

See also
RefractionHint::DYNAMIC_FLAT_OIT
DefaultRenderer::setOrderIndependentTransparency
DefaultRenderer::cullAndSort
GApp::Settings::RendererSettings::orderIndependentTransparency
MULTIPASS_BLENDED_SAMPLES 

Do not write to the depth buffer.

Only blended samples allowed. Use RenderDevice::DEPTH_LESS to prevent writing to samples from the same surface that were opaque and already colored by previous passes. Multiple passes over each surface are allowed, for example, to execute colored transmission. Surfaces (and ideally, triangles within them) should be submitted in back-to-front order.

SHADOW_MAP 
OPAQUE_SHADOW_MAP 
TRANSPARENT_SHADOW_MAP 
TRANSPARENT_AS_OPAQUE 

Constructor & Destructor Documentation

◆ RenderPassType() [1/6]

G3D::RenderPassType::RenderPassType ( const G3D::String x)
inlineexplicit

◆ RenderPassType() [2/6]

G3D::RenderPassType::RenderPassType ( const G3D::Any a)
inlineexplicit

◆ RenderPassType() [3/6]

G3D::RenderPassType::RenderPassType ( char  v)
inlineexplicit

◆ RenderPassType() [4/6]

G3D::RenderPassType::RenderPassType ( )
inline

◆ RenderPassType() [5/6]

G3D::RenderPassType::RenderPassType ( const Value  v)
inline

◆ RenderPassType() [6/6]

G3D::RenderPassType::RenderPassType ( int  v)
inlineexplicit

Member Function Documentation

◆ classname()

static const char* G3D::RenderPassType::classname ( )
inlinestatic

◆ count()

static int G3D::RenderPassType::count ( )
inlinestatic

◆ deserialize()

void G3D::RenderPassType::deserialize ( G3D::BinaryInput b)
inline

◆ hashCode()

unsigned int G3D::RenderPassType::hashCode ( ) const
inline

◆ nthValue()

static Value G3D::RenderPassType::nthValue ( int  n)
inlinestatic

◆ operator int()

G3D::RenderPassType::operator int ( ) const
inline

◆ operator!=() [1/2]

bool G3D::RenderPassType::operator!= ( const RenderPassType  other) const
inline

◆ operator!=() [2/2]

bool G3D::RenderPassType::operator!= ( const RenderPassType ::Value  other) const
inline

◆ operator+()

RenderPassType G3D::RenderPassType::operator+ ( const int  x) const
inline

◆ operator++()

RenderPassType& G3D::RenderPassType::operator++ ( )
inline

◆ operator+=()

RenderPassType& G3D::RenderPassType::operator+= ( const int  x)
inline

◆ operator-()

RenderPassType G3D::RenderPassType::operator- ( const int  x) const
inline

◆ operator--()

RenderPassType& G3D::RenderPassType::operator-- ( )
inline

◆ operator-=()

RenderPassType& G3D::RenderPassType::operator-= ( const int  x)
inline

◆ operator<() [1/2]

bool G3D::RenderPassType::operator< ( const Value  other) const
inline

◆ operator<() [2/2]

bool G3D::RenderPassType::operator< ( const RenderPassType  other) const
inline

◆ operator<=() [1/2]

bool G3D::RenderPassType::operator<= ( const RenderPassType  other) const
inline

◆ operator<=() [2/2]

bool G3D::RenderPassType::operator<= ( const Value  other) const
inline

◆ operator=()

RenderPassType& G3D::RenderPassType::operator= ( const G3D::Any a)
inline

◆ operator==() [1/2]

bool G3D::RenderPassType::operator== ( const RenderPassType ::Value  other) const
inline

◆ operator==() [2/2]

bool G3D::RenderPassType::operator== ( const RenderPassType  other) const
inline

◆ operator>() [1/2]

bool G3D::RenderPassType::operator> ( const RenderPassType  other) const
inline

◆ operator>() [2/2]

bool G3D::RenderPassType::operator> ( const Value  other) const
inline

◆ operator>=() [1/2]

bool G3D::RenderPassType::operator>= ( const RenderPassType  other) const
inline

◆ operator>=() [2/2]

bool G3D::RenderPassType::operator>= ( const Value  other) const
inline

◆ serialize()

void G3D::RenderPassType::serialize ( G3D::BinaryOutput b) const
inline

◆ toAny()

G3D::Any G3D::RenderPassType::toAny ( ) const
inline

◆ toString() [1/2]

const char* G3D::RenderPassType::toString ( ) const
inline

◆ toString() [2/2]

static const char* G3D::RenderPassType::toString ( int  i,
Value v 
)
inlinestatic

Member Data Documentation

◆ value

enum G3D::RenderPassType::Value G3D::RenderPassType::value

documentation generated on Wed Nov 24 2021 08:01:59 using doxygen 1.8.15