Richard Boegli's CnC_Generals_Zero_Hour Fork WIP
This is documentation of Richard Boegil's Zero Hour Fork
 
Loading...
Searching...
No Matches
SpecialRenderInfoClass Class Reference

#include <rinfo.h>

Inherits RenderInfoClass.

Public Types

enum  { RENDER_VIS , RENDER_SHADOW }
 
- Public Types inherited from RenderInfoClass
enum  RINFO_OVERRIDE_FLAGS {
  RINFO_OVERRIDE_DEFAULT = 0x0000 , RINFO_OVERRIDE_FORCE_TWO_SIDED = 0x0001 , RINFO_OVERRIDE_FORCE_SORTING = 0x0002 , RINFO_OVERRIDE_ADDITIONAL_PASSES_ONLY = 0x0004 ,
  RINFO_OVERRIDE_SHADOW_RENDERING = 0x0008
}
 

Public Member Functions

 SpecialRenderInfoClass (CameraClass &cam, int render_type)
 
 ~SpecialRenderInfoClass (void)
 
- Public Member Functions inherited from RenderInfoClass
 RenderInfoClass (CameraClass &cam)
 
 ~RenderInfoClass (void)
 
void Push_Material_Pass (MaterialPassClass *matpass)
 
void Pop_Material_Pass (void)
 
int Additional_Pass_Count (void)
 
MaterialPassClassPeek_Additional_Pass (int i)
 
void Push_Override_Flags (RINFO_OVERRIDE_FLAGS flg)
 
void Pop_Override_Flags (void)
 
RINFO_OVERRIDE_FLAGSCurrent_Override_Flags (void)
 

Public Attributes

int RenderType
 
VisRasterizerClassVisRasterizer
 
BWRenderClassBWRenderer
 
- Public Attributes inherited from RenderInfoClass
CameraClassCamera
 
float fog_scale
 
float fog_start
 
float fog_end
 
float alphaOverride
 
float materialPassAlphaOverride
 
float materialPassEmissiveOverride
 
LightEnvironmentClasslight_environment
 
TexProjectClassTexture_Projector
 

Additional Inherited Members

- Protected Attributes inherited from RenderInfoClass
MaterialPassClassAdditionalMaterialPassArray [MAX_ADDITIONAL_MATERIAL_PASSES]
 
unsigned AdditionalMaterialPassCount
 
unsigned RejectedMaterialPasses
 
RINFO_OVERRIDE_FLAGS OverrideFlag [MAX_OVERRIDE_FLAG_LEVEL]
 
unsigned OverrideFlagLevel
 

Detailed Description

SpecialRenderInfoClass This structure also contains a "grab-bag" of junk for use by the Special_Render function. The first use that I have for Special_Render is to implement the visibility detection algorithm where each object is rendered in such a way that I can get the 'id' of the object which generated each pixel on the screen. Another use I have planned for Special_Render is a shadow rendering mode that just draws an object in solid black from the point of view of a light source. This would just need another enum for the RenderType...

The reason for a Special_Render function is that I didn't want to pollute the main rendering pipeline with checks for these alternate rendering operations.

Definition at line 136 of file rinfo.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
RENDER_VIS 
RENDER_SHADOW 

Definition at line 145 of file rinfo.h.

Constructor & Destructor Documentation

◆ SpecialRenderInfoClass()

SpecialRenderInfoClass::SpecialRenderInfoClass ( CameraClass & cam,
int render_type )

Definition at line 139 of file rinfo.cpp.

◆ ~SpecialRenderInfoClass()

SpecialRenderInfoClass::~SpecialRenderInfoClass ( void )

Definition at line 147 of file rinfo.cpp.

Member Data Documentation

◆ BWRenderer

BWRenderClass* SpecialRenderInfoClass::BWRenderer

Definition at line 157 of file rinfo.h.

◆ RenderType

int SpecialRenderInfoClass::RenderType

Definition at line 150 of file rinfo.h.

◆ VisRasterizer

VisRasterizerClass* SpecialRenderInfoClass::VisRasterizer

Definition at line 153 of file rinfo.h.


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