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

#include <render2d.h>

Inherits W3DMPO.

Inherited by Render2DTextClass.

Public Member Functions

 Render2DClass (TextureClass *tex=NULL)
 
virtual ~Render2DClass (void)
 
virtual void Reset (void)
 
void Render (void)
 
void Set_Coordinate_Range (const RectClass &range)
 
void Set_Texture (TextureClass *tex)
 
TextureClassPeek_Texture (void)
 
void Set_Texture (const char *filename)
 
void Enable_Additive (bool b)
 
void Enable_Alpha (bool b)
 
void Enable_Grayscale (bool b)
 added for generals to draw disabled button states - MW
 
void Enable_Texturing (bool b)
 
ShaderClassGet_Shader (void)
 
void Add_Quad (const Vector2 &v0, const Vector2 &v1, const Vector2 &v2, const Vector2 &v3, const RectClass &uv, unsigned long color=0xFFFFFFFF)
 
void Add_Quad_Backfaced (const Vector2 &v0, const Vector2 &v1, const Vector2 &v2, const Vector2 &v3, const RectClass &uv, unsigned long color=0xFFFFFFFF)
 
void Add_Quad (const RectClass &screen, const RectClass &uv, unsigned long color=0xFFFFFFFF)
 
void Add_Quad (const Vector2 &v0, const Vector2 &v1, const Vector2 &v2, const Vector2 &v3, unsigned long color=0xFFFFFFFF)
 
void Add_Quad (const RectClass &screen, unsigned long color=0xFFFFFFFF)
 
void Add_Quad_VGradient (const Vector2 &v0, const Vector2 &v1, const Vector2 &v2, const Vector2 &v3, const RectClass &uv, unsigned long top_color, unsigned long bottom_color)
 
void Add_Quad_VGradient (const RectClass &screen, unsigned long top_color, unsigned long bottom_color)
 
void Add_Quad_HGradient (const Vector2 &v0, const Vector2 &v1, const Vector2 &v2, const Vector2 &v3, const RectClass &uv, unsigned long left_color, unsigned long right_color)
 
void Add_Quad_HGradient (const RectClass &screen, unsigned long left_color, unsigned long right_color)
 
void Add_Tri (const Vector2 &v0, const Vector2 &v1, const Vector2 &v2, const Vector2 &uv0, const Vector2 &uv1, const Vector2 &uv2, unsigned long color=0xFFFFFFFF)
 
void Add_Line (const Vector2 &a, const Vector2 &b, float width, unsigned long color=0xFFFFFFFF)
 
void Add_Line (const Vector2 &a, const Vector2 &b, float width, const RectClass &uv, unsigned long color=0xFFFFFFFF)
 
void Add_Line (const Vector2 &a, const Vector2 &b, float width, unsigned long color, unsigned long color2)
 
void Add_Line (const Vector2 &a, const Vector2 &b, float width, const RectClass &uv, unsigned long color, unsigned long color2)
 
void Add_Outline (const RectClass &rect, float width=1.0F, unsigned long color=0xFFFFFFFF)
 
void Add_Outline (const RectClass &rect, float width, const RectClass &uv, unsigned long color=0xFFFFFFFF)
 
void Add_Rect (const RectClass &rect, float border_width=1.0F, uint32 border_color=0xFF000000, uint32 fill_color=0xFFFFFFFF)
 
void Set_Hidden (bool hide)
 
void Set_Z_Value (float z_value)
 
void Move (const Vector2 &a)
 
void Force_Alpha (float alpha)
 
void Force_Color (int color)
 
DynamicVectorClass< unsigned long > & Get_Color_Array (void)
 
- Public Member Functions inherited from W3DMPO
virtual ~W3DMPO ()
 

Static Public Member Functions

static ShaderClass Get_Default_Shader (void)
 
static void Set_Screen_Resolution (const RectClass &screen)
 
static const RectClassGet_Screen_Resolution (void)
 

Protected Member Functions

Vector2 Convert_Vert (const Vector2 &v)
 
void Convert_Vert (Vector2 &vert_out, const Vector2 &vert_in)
 
void Convert_Vert (Vector2 &vert_out, float x_in, float y_in)
 
void Update_Bias (void)
 
void Internal_Add_Quad_Vertices (const Vector2 &v0, const Vector2 &v1, const Vector2 &v2, const Vector2 &v3)
 
void Internal_Add_Quad_Vertices (const RectClass &screen)
 
void Internal_Add_Quad_UVs (const RectClass &uv)
 
void Internal_Add_Quad_Colors (unsigned long color)
 
void Internal_Add_Quad_VColors (unsigned long color1, unsigned long color2)
 
void Internal_Add_Quad_HColors (unsigned long color1, unsigned long color2)
 
void Internal_Add_Quad_Indicies (int start_vert_index, bool backfaced=false)
 
- Protected Member Functions inherited from W3DMPO
virtual int glueEnforcer () const =0
 

Protected Attributes

Vector2 CoordinateScale
 
Vector2 CoordinateOffset
 
Vector2 BiasedCoordinateOffset
 
TextureClassTexture
 
ShaderClass Shader
 
DynamicVectorClass< unsigned short > Indices
 
unsigned short PreAllocatedIndices [60]
 
DynamicVectorClass< Vector2Vertices
 
Vector2 PreAllocatedVertices [60]
 
DynamicVectorClass< Vector2UVCoordinates
 
Vector2 PreAllocatedUVCoordinates [60]
 
DynamicVectorClass< unsigned long > Colors
 
unsigned long PreAllocatedColors [60]
 
bool IsHidden
 
bool IsGrayScale
 
float ZValue
 

Static Protected Attributes

static RectClass ScreenResolution
 

Detailed Description

Definition at line 100 of file render2d.h.

Constructor & Destructor Documentation

◆ Render2DClass()

Render2DClass::Render2DClass ( TextureClass * tex = NULL)

Definition at line 70 of file render2d.cpp.

◆ ~Render2DClass()

Render2DClass::~Render2DClass ( void )
virtual

Definition at line 87 of file render2d.cpp.

Member Function Documentation

◆ Add_Line() [1/4]

void Render2DClass::Add_Line ( const Vector2 & a,
const Vector2 & b,
float width,
const RectClass & uv,
unsigned long color,
unsigned long color2 )

Definition at line 549 of file render2d.cpp.

◆ Add_Line() [2/4]

void Render2DClass::Add_Line ( const Vector2 & a,
const Vector2 & b,
float width,
const RectClass & uv,
unsigned long color = 0xFFFFFFFF )

Definition at line 529 of file render2d.cpp.

◆ Add_Line() [3/4]

void Render2DClass::Add_Line ( const Vector2 & a,
const Vector2 & b,
float width,
unsigned long color,
unsigned long color2 )

Definition at line 544 of file render2d.cpp.

◆ Add_Line() [4/4]

void Render2DClass::Add_Line ( const Vector2 & a,
const Vector2 & b,
float width,
unsigned long color = 0xFFFFFFFF )

Definition at line 524 of file render2d.cpp.

◆ Add_Outline() [1/2]

void Render2DClass::Add_Outline ( const RectClass & rect,
float width,
const RectClass & uv,
unsigned long color = 0xFFFFFFFF )
Todo
colin, I had to tweak these to get precise line drawing, as we want the UV bias on, but it just isn't lining up

Definition at line 591 of file render2d.cpp.

◆ Add_Outline() [2/2]

void Render2DClass::Add_Outline ( const RectClass & rect,
float width = 1.0F,
unsigned long color = 0xFFFFFFFF )

Definition at line 586 of file render2d.cpp.

◆ Add_Quad() [1/4]

void Render2DClass::Add_Quad ( const RectClass & screen,
const RectClass & uv,
unsigned long color = 0xFFFFFFFF )

Definition at line 463 of file render2d.cpp.

◆ Add_Quad() [2/4]

void Render2DClass::Add_Quad ( const RectClass & screen,
unsigned long color = 0xFFFFFFFF )

Definition at line 479 of file render2d.cpp.

◆ Add_Quad() [3/4]

void Render2DClass::Add_Quad ( const Vector2 & v0,
const Vector2 & v1,
const Vector2 & v2,
const Vector2 & v3,
const RectClass & uv,
unsigned long color = 0xFFFFFFFF )

Definition at line 413 of file render2d.cpp.

◆ Add_Quad() [4/4]

void Render2DClass::Add_Quad ( const Vector2 & v0,
const Vector2 & v1,
const Vector2 & v2,
const Vector2 & v3,
unsigned long color = 0xFFFFFFFF )

Definition at line 471 of file render2d.cpp.

◆ Add_Quad_Backfaced()

void Render2DClass::Add_Quad_Backfaced ( const Vector2 & v0,
const Vector2 & v1,
const Vector2 & v2,
const Vector2 & v3,
const RectClass & uv,
unsigned long color = 0xFFFFFFFF )

Definition at line 421 of file render2d.cpp.

◆ Add_Quad_HGradient() [1/2]

void Render2DClass::Add_Quad_HGradient ( const RectClass & screen,
unsigned long left_color,
unsigned long right_color )

Definition at line 454 of file render2d.cpp.

◆ Add_Quad_HGradient() [2/2]

void Render2DClass::Add_Quad_HGradient ( const Vector2 & v0,
const Vector2 & v1,
const Vector2 & v2,
const Vector2 & v3,
const RectClass & uv,
unsigned long left_color,
unsigned long right_color )

Definition at line 437 of file render2d.cpp.

◆ Add_Quad_VGradient() [1/2]

void Render2DClass::Add_Quad_VGradient ( const RectClass & screen,
unsigned long top_color,
unsigned long bottom_color )

Definition at line 446 of file render2d.cpp.

◆ Add_Quad_VGradient() [2/2]

void Render2DClass::Add_Quad_VGradient ( const Vector2 & v0,
const Vector2 & v1,
const Vector2 & v2,
const Vector2 & v3,
const RectClass & uv,
unsigned long top_color,
unsigned long bottom_color )

Definition at line 429 of file render2d.cpp.

◆ Add_Rect()

void Render2DClass::Add_Rect ( const RectClass & rect,
float border_width = 1.0F,
uint32 border_color = 0xFF000000,
uint32 fill_color = 0xFFFFFFFF )

Definition at line 563 of file render2d.cpp.

◆ Add_Tri()

void Render2DClass::Add_Tri ( const Vector2 & v0,
const Vector2 & v1,
const Vector2 & v2,
const Vector2 & uv0,
const Vector2 & uv1,
const Vector2 & uv2,
unsigned long color = 0xFFFFFFFF )

Definition at line 490 of file render2d.cpp.

◆ Convert_Vert() [1/3]

Vector2 Render2DClass::Convert_Vert ( const Vector2 & v)
protected

◆ Convert_Vert() [2/3]

void Render2DClass::Convert_Vert ( Vector2 & vert_out,
const Vector2 & vert_in )
protected

Definition at line 252 of file render2d.cpp.

◆ Convert_Vert() [3/3]

void Render2DClass::Convert_Vert ( Vector2 & vert_out,
float x_in,
float y_in )
protected

Definition at line 259 of file render2d.cpp.

◆ Enable_Additive()

void Render2DClass::Enable_Additive ( bool b)

Definition at line 164 of file render2d.cpp.

◆ Enable_Alpha()

void Render2DClass::Enable_Alpha ( bool b)

Definition at line 151 of file render2d.cpp.

◆ Enable_Grayscale()

void Render2DClass::Enable_Grayscale ( bool b)

added for generals to draw disabled button states - MW

added for generals to draw disabled button states - MW

Definition at line 146 of file render2d.cpp.

◆ Enable_Texturing()

void Render2DClass::Enable_Texturing ( bool b)

Definition at line 178 of file render2d.cpp.

◆ Force_Alpha()

void Render2DClass::Force_Alpha ( float alpha)

Definition at line 278 of file render2d.cpp.

◆ Force_Color()

void Render2DClass::Force_Color ( int color)

Definition at line 288 of file render2d.cpp.

◆ Get_Color_Array()

DynamicVectorClass< unsigned long > & Render2DClass::Get_Color_Array ( void )
inline

Definition at line 160 of file render2d.h.

◆ Get_Default_Shader()

ShaderClass Render2DClass::Get_Default_Shader ( void )
static

Definition at line 105 of file render2d.cpp.

◆ Get_Screen_Resolution()

static const RectClass & Render2DClass::Get_Screen_Resolution ( void )
inlinestatic

Definition at line 164 of file render2d.h.

◆ Get_Shader()

ShaderClass * Render2DClass::Get_Shader ( void )
inline

Definition at line 120 of file render2d.h.

◆ Internal_Add_Quad_Colors()

void Render2DClass::Internal_Add_Quad_Colors ( unsigned long color)
protected

Definition at line 332 of file render2d.cpp.

◆ Internal_Add_Quad_HColors()

void Render2DClass::Internal_Add_Quad_HColors ( unsigned long color1,
unsigned long color2 )
protected

Definition at line 361 of file render2d.cpp.

◆ Internal_Add_Quad_Indicies()

void Render2DClass::Internal_Add_Quad_Indicies ( int start_vert_index,
bool backfaced = false )
protected

Definition at line 376 of file render2d.cpp.

◆ Internal_Add_Quad_UVs()

void Render2DClass::Internal_Add_Quad_UVs ( const RectClass & uv)
protected

Definition at line 317 of file render2d.cpp.

◆ Internal_Add_Quad_VColors()

void Render2DClass::Internal_Add_Quad_VColors ( unsigned long color1,
unsigned long color2 )
protected

Definition at line 346 of file render2d.cpp.

◆ Internal_Add_Quad_Vertices() [1/2]

void Render2DClass::Internal_Add_Quad_Vertices ( const RectClass & screen)
protected

Definition at line 308 of file render2d.cpp.

◆ Internal_Add_Quad_Vertices() [2/2]

void Render2DClass::Internal_Add_Quad_Vertices ( const Vector2 & v0,
const Vector2 & v1,
const Vector2 & v2,
const Vector2 & v3 )
protected

Definition at line 300 of file render2d.cpp.

◆ Move()

void Render2DClass::Move ( const Vector2 & a)

Definition at line 268 of file render2d.cpp.

◆ Peek_Texture()

TextureClass * Render2DClass::Peek_Texture ( void )
inline

Definition at line 113 of file render2d.h.

◆ Render()

void Render2DClass::Render ( void )

Definition at line 604 of file render2d.cpp.

◆ Reset()

void Render2DClass::Reset ( void )
virtual

Reimplemented in Render2DTextClass.

Definition at line 120 of file render2d.cpp.

◆ Set_Coordinate_Range()

void Render2DClass::Set_Coordinate_Range ( const RectClass & range)

Definition at line 188 of file render2d.cpp.

◆ Set_Hidden()

void Render2DClass::Set_Hidden ( bool hide)
inline

Definition at line 147 of file render2d.h.

◆ Set_Screen_Resolution()

void Render2DClass::Set_Screen_Resolution ( const RectClass & screen)
static

Definition at line 92 of file render2d.cpp.

◆ Set_Texture() [1/2]

void Render2DClass::Set_Texture ( const char * filename)

Definition at line 135 of file render2d.cpp.

◆ Set_Texture() [2/2]

void Render2DClass::Set_Texture ( TextureClass * tex)

Definition at line 130 of file render2d.cpp.

◆ Set_Z_Value()

void Render2DClass::Set_Z_Value ( float z_value)
inline

Definition at line 150 of file render2d.h.

◆ Update_Bias()

void Render2DClass::Update_Bias ( void )
protected

Definition at line 199 of file render2d.cpp.

Member Data Documentation

◆ BiasedCoordinateOffset

Vector2 Render2DClass::BiasedCoordinateOffset
protected

Definition at line 169 of file render2d.h.

◆ Colors

DynamicVectorClass<unsigned long> Render2DClass::Colors
protected

Definition at line 178 of file render2d.h.

◆ CoordinateOffset

Vector2 Render2DClass::CoordinateOffset
protected

Definition at line 168 of file render2d.h.

◆ CoordinateScale

Vector2 Render2DClass::CoordinateScale
protected

Definition at line 167 of file render2d.h.

◆ Indices

DynamicVectorClass<unsigned short> Render2DClass::Indices
protected

Definition at line 172 of file render2d.h.

◆ IsGrayScale

bool Render2DClass::IsGrayScale
protected

Definition at line 181 of file render2d.h.

◆ IsHidden

bool Render2DClass::IsHidden
protected

Definition at line 180 of file render2d.h.

◆ PreAllocatedColors

unsigned long Render2DClass::PreAllocatedColors[60]
protected

Definition at line 179 of file render2d.h.

◆ PreAllocatedIndices

unsigned short Render2DClass::PreAllocatedIndices[60]
protected

Definition at line 173 of file render2d.h.

◆ PreAllocatedUVCoordinates

Vector2 Render2DClass::PreAllocatedUVCoordinates[60]
protected

Definition at line 177 of file render2d.h.

◆ PreAllocatedVertices

Vector2 Render2DClass::PreAllocatedVertices[60]
protected

Definition at line 175 of file render2d.h.

◆ ScreenResolution

RectClass Render2DClass::ScreenResolution
staticprotected

Definition at line 184 of file render2d.h.

◆ Shader

ShaderClass Render2DClass::Shader
protected

Definition at line 171 of file render2d.h.

◆ Texture

TextureClass* Render2DClass::Texture
protected

Definition at line 170 of file render2d.h.

◆ UVCoordinates

DynamicVectorClass<Vector2> Render2DClass::UVCoordinates
protected

Definition at line 176 of file render2d.h.

◆ Vertices

DynamicVectorClass<Vector2> Render2DClass::Vertices
protected

Definition at line 174 of file render2d.h.

◆ ZValue

float Render2DClass::ZValue
protected

Definition at line 182 of file render2d.h.


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