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

#include <streakRender.h>

Public Types

enum  TextureMapMode { UNIFORM_WIDTH_TEXTURE_MAP = 0x00000000 , UNIFORM_LENGTH_TEXTURE_MAP = 0x00000001 , TILED_TEXTURE_MAP = 0x00000002 }
 

Public Member Functions

 StreakRendererClass (void)
 
 StreakRendererClass (const StreakRendererClass &that)
 
StreakRendererClassoperator= (const StreakRendererClass &that)
 
 ~StreakRendererClass (void)
 
void Init (const W3dEmitterLinePropertiesStruct &props)
 
TextureClassGet_Texture (void) const
 
TextureClassPeek_Texture (void) const
 
ShaderClass Get_Shader (void) const
 
float Get_Width (void) const
 
const Vector3Get_Color (void) const
 
float Get_Opacity (void) const
 
float Get_Noise_Amplitude (void) const
 
float Get_Merge_Abort_Factor (void) const
 
unsigned int Get_Current_Subdivision_Level (void) const
 
TextureMapMode Get_Texture_Mapping_Mode (void) const
 
int Is_Merge_Intersections (void) const
 
int Is_Freeze_Random (void) const
 
int Is_Sorting_Disabled (void) const
 
int Are_End_Caps_Enabled (void) const
 
void Set_Texture (TextureClass *texture)
 
void Set_Shader (ShaderClass shader)
 
void Set_Width (float width)
 
void Set_Color (const Vector3 &color)
 
void Set_Opacity (float opacity)
 
void Set_Noise_Amplitude (float amplitude)
 
void Set_Merge_Abort_Factor (float factor)
 
void Set_Current_Subdivision_Level (unsigned int lv)
 
void Set_Texture_Mapping_Mode (TextureMapMode mode)
 
void Set_Merge_Intersections (int onoff)
 
void Set_Freeze_Random (int onoff)
 
void Set_Disable_Sorting (int onoff)
 
void Set_End_Caps (int onoff)
 
void Reset_Line (void)
 
void Render (RenderInfoClass &rinfo, const Matrix3D &transform, unsigned int point_count, Vector3 *points, const SphereClass &obj_sphere)
 
void RenderStreak (RenderInfoClass &rinfo, const Matrix3D &transform, unsigned int point_count, Vector3 *points, Vector4 *colors, float *widths, const SphereClass &obj_sphere, unsigned int *personalities)
 

Friends

class SegmentedLineClass
 

Detailed Description

StreakRendererClass This class implements the low-level line rendering functionality used by both SegmentedLineClass and ParticleBufferClass

Definition at line 64 of file streakRender.h.

Member Enumeration Documentation

◆ TextureMapMode

Enumerator
UNIFORM_WIDTH_TEXTURE_MAP 
UNIFORM_LENGTH_TEXTURE_MAP 
TILED_TEXTURE_MAP 

Definition at line 73 of file streakRender.h.

Constructor & Destructor Documentation

◆ StreakRendererClass() [1/2]

StreakRendererClass::StreakRendererClass ( void )

Definition at line 62 of file streakRender.cpp.

◆ StreakRendererClass() [2/2]

StreakRendererClass::StreakRendererClass ( const StreakRendererClass & that)

Definition at line 82 of file streakRender.cpp.

◆ ~StreakRendererClass()

StreakRendererClass::~StreakRendererClass ( void )

Definition at line 123 of file streakRender.cpp.

Member Function Documentation

◆ Are_End_Caps_Enabled()

int StreakRendererClass::Are_End_Caps_Enabled ( void ) const
inline

Definition at line 97 of file streakRender.h.

◆ Get_Color()

const Vector3 & StreakRendererClass::Get_Color ( void ) const
inline

Definition at line 86 of file streakRender.h.

◆ Get_Current_Subdivision_Level()

unsigned int StreakRendererClass::Get_Current_Subdivision_Level ( void ) const
inline

Definition at line 90 of file streakRender.h.

◆ Get_Merge_Abort_Factor()

float StreakRendererClass::Get_Merge_Abort_Factor ( void ) const
inline

Definition at line 89 of file streakRender.h.

◆ Get_Noise_Amplitude()

float StreakRendererClass::Get_Noise_Amplitude ( void ) const
inline

Definition at line 88 of file streakRender.h.

◆ Get_Opacity()

float StreakRendererClass::Get_Opacity ( void ) const
inline

Definition at line 87 of file streakRender.h.

◆ Get_Shader()

ShaderClass StreakRendererClass::Get_Shader ( void ) const
inline

Definition at line 84 of file streakRender.h.

◆ Get_Texture()

TextureClass * StreakRendererClass::Get_Texture ( void ) const

Definition at line 165 of file streakRender.cpp.

◆ Get_Texture_Mapping_Mode()

StreakRendererClass::TextureMapMode StreakRendererClass::Get_Texture_Mapping_Mode ( void ) const
inline

Definition at line 200 of file streakRender.h.

◆ Get_Width()

float StreakRendererClass::Get_Width ( void ) const
inline

Definition at line 85 of file streakRender.h.

◆ Init()

void StreakRendererClass::Init ( const W3dEmitterLinePropertiesStruct & props)

Definition at line 129 of file streakRender.cpp.

◆ Is_Freeze_Random()

int StreakRendererClass::Is_Freeze_Random ( void ) const
inline

Definition at line 95 of file streakRender.h.

◆ Is_Merge_Intersections()

int StreakRendererClass::Is_Merge_Intersections ( void ) const
inline

Definition at line 94 of file streakRender.h.

◆ Is_Sorting_Disabled()

int StreakRendererClass::Is_Sorting_Disabled ( void ) const
inline

Definition at line 96 of file streakRender.h.

◆ operator=()

StreakRendererClass & StreakRendererClass::operator= ( const StreakRendererClass & that)

Definition at line 102 of file streakRender.cpp.

◆ Peek_Texture()

TextureClass * StreakRendererClass::Peek_Texture ( void ) const
inline

Definition at line 83 of file streakRender.h.

◆ Render()

void StreakRendererClass::Render ( RenderInfoClass & rinfo,
const Matrix3D & transform,
unsigned int point_count,
Vector3 * points,
const SphereClass & obj_sphere )

Definition at line 197 of file streakRender.cpp.

◆ RenderStreak()

void StreakRendererClass::RenderStreak ( RenderInfoClass & rinfo,
const Matrix3D & transform,
unsigned int point_count,
Vector3 * points,
Vector4 * colors,
float * widths,
const SphereClass & obj_sphere,
unsigned int * personalities )

NEW ///// // TODO: Does not work correctly when subdivision are not 0

Parameters
widths//////////// DIFFERENT FROM RENDER( )
obj_sphere//////////// DIFFERENT FROM RENDER( )
personalities//////////// DIFFERENT FROM RENDER( )

Definition at line 307 of file streakRender.cpp.

◆ Reset_Line()

void StreakRendererClass::Reset_Line ( void )
inline

Definition at line 221 of file streakRender.h.

◆ Set_Color()

void StreakRendererClass::Set_Color ( const Vector3 & color)
inline

Definition at line 103 of file streakRender.h.

◆ Set_Current_Subdivision_Level()

void StreakRendererClass::Set_Current_Subdivision_Level ( unsigned int lv)
inline

Definition at line 107 of file streakRender.h.

◆ Set_Disable_Sorting()

void StreakRendererClass::Set_Disable_Sorting ( int onoff)
inline

Definition at line 119 of file streakRender.h.

◆ Set_End_Caps()

void StreakRendererClass::Set_End_Caps ( int onoff)
inline

Definition at line 120 of file streakRender.h.

◆ Set_Freeze_Random()

void StreakRendererClass::Set_Freeze_Random ( int onoff)
inline

Definition at line 118 of file streakRender.h.

◆ Set_Merge_Abort_Factor()

void StreakRendererClass::Set_Merge_Abort_Factor ( float factor)
inline

Definition at line 106 of file streakRender.h.

◆ Set_Merge_Intersections()

void StreakRendererClass::Set_Merge_Intersections ( int onoff)
inline

Definition at line 117 of file streakRender.h.

◆ Set_Noise_Amplitude()

void StreakRendererClass::Set_Noise_Amplitude ( float amplitude)
inline

Definition at line 105 of file streakRender.h.

◆ Set_Opacity()

void StreakRendererClass::Set_Opacity ( float opacity)
inline

Definition at line 104 of file streakRender.h.

◆ Set_Shader()

void StreakRendererClass::Set_Shader ( ShaderClass shader)
inline

Definition at line 101 of file streakRender.h.

◆ Set_Texture()

void StreakRendererClass::Set_Texture ( TextureClass * texture)

Definition at line 160 of file streakRender.cpp.

◆ Set_Texture_Mapping_Mode()

void StreakRendererClass::Set_Texture_Mapping_Mode ( StreakRendererClass::TextureMapMode mode)
inline

Definition at line 205 of file streakRender.h.

◆ Set_Width()

void StreakRendererClass::Set_Width ( float width)
inline

Definition at line 102 of file streakRender.h.

Friends And Related Symbol Documentation

◆ SegmentedLineClass

friend class SegmentedLineClass
friend

Definition at line 190 of file streakRender.h.


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