#include <C4FoWDrawStrategy.h>
Public Types | |
enum | DrawPhase { P_None , P_Fan , P_FanMaxed , P_Fade , P_Intermediate } |
Public Member Functions | |
C4FoWDrawLightTextureStrategy (const C4FoWLight *light) | |
~C4FoWDrawLightTextureStrategy () override | |
void | DrawLightVertex (float x, float y) override |
void | DrawDarkVertex (float x, float y) override |
void | Begin (const C4FoWRegion *region) override |
void | End (C4ShaderCall &call) override |
virtual void | BeginFan () |
virtual void | EndFan () |
virtual void | BeginFanMaxed () |
virtual void | EndFanMaxed () |
virtual void | BeginFade () |
virtual void | EndFade () |
virtual void | BeginIntermediateFade () |
virtual void | EndIntermediateFade () |
Public Attributes | |
enum C4FoWDrawStrategy::DrawPhase | P_None |
Protected Attributes | |
C4FoWDrawTriangulator | triangulator |
This draw strategy is the default draw strategy that draws the light onto the given region.
Definition at line 117 of file C4FoWDrawStrategy.h.
|
inherited |
Enumerator | |
---|---|
P_None | |
P_Fan | |
P_FanMaxed | |
P_Fade | |
P_Intermediate |
Definition at line 75 of file C4FoWDrawStrategy.h.
C4FoWDrawLightTextureStrategy::C4FoWDrawLightTextureStrategy | ( | const C4FoWLight * | light | ) |
Definition at line 109 of file C4FoWDrawStrategy.cpp.
|
override |
Definition at line 115 of file C4FoWDrawStrategy.cpp.
References CStdGL::FreeVAOID(), and pGL.
|
overridevirtual |
Called before each rendering pass
Implements C4FoWDrawStrategy.
Definition at line 126 of file C4FoWDrawStrategy.cpp.
References CStdGL::GenVAOID(), and pGL.
|
inlinevirtualinherited |
Called before rendering the quads in which the light fades out
Definition at line 102 of file C4FoWDrawStrategy.h.
References C4FoWDrawStrategy::P_Fade, C4FoWDrawTriangulator::Quads(), and C4FoWDrawStrategy::triangulator.
|
inlinevirtualinherited |
Called before rendering the inner triangle fan (the area with 100% light)
Definition at line 92 of file C4FoWDrawStrategy.h.
References C4FoWDrawTriangulator::Fan(), C4FoWDrawStrategy::P_Fan, and C4FoWDrawStrategy::triangulator.
|
inlinevirtualinherited |
Called before rendering the triangle fan existnsion (100% light, maxed out normals)
Definition at line 97 of file C4FoWDrawStrategy.h.
References C4FoWDrawStrategy::P_FanMaxed, C4FoWDrawTriangulator::Quads(), and C4FoWDrawStrategy::triangulator.
|
inlinevirtualinherited |
Called before rendering the triangles that fill the space between the fadeout quads
Definition at line 107 of file C4FoWDrawStrategy.h.
References C4FoWDrawTriangulator::Fan(), C4FoWDrawStrategy::P_Intermediate, and C4FoWDrawStrategy::triangulator.
|
overridevirtual |
Reimplemented from C4FoWDrawStrategy.
Definition at line 330 of file C4FoWDrawStrategy.cpp.
References C4FoWDrawStrategy::DrawDarkVertex().
|
overridevirtual |
Reimplemented from C4FoWDrawStrategy.
Definition at line 336 of file C4FoWDrawStrategy.cpp.
References C4FoWDrawStrategy::DrawLightVertex().
|
overridevirtual |
Called after each rendering pass
Reimplemented from C4FoWDrawStrategy.
Definition at line 139 of file C4FoWDrawStrategy.cpp.
References C4FoWRSA_Color, C4FoWRSA_Position, C4FoWRSU_VertexOffset, C4FoWDrawStrategy::End(), C4ShaderCall::GetAttribute(), C4FoWDrawTriangulator::GetIndices(), C4FoWDrawTriangulator::GetNIndices(), C4FoWRegion::getSurfaceHeight(), C4FoWRegion::getSurfaceWidth(), CStdGL::GetVAO(), pGL, C4ShaderCall::SetUniform2fv(), and C4FoWDrawStrategy::triangulator.
|
inlinevirtualinherited |
Called after rendering the quads in which the light fades out
Definition at line 104 of file C4FoWDrawStrategy.h.
|
inlinevirtualinherited |
Called after rendering the inner triangle fan
Definition at line 94 of file C4FoWDrawStrategy.h.
|
inlinevirtualinherited |
Called after rendering the inner triangle fan
Definition at line 99 of file C4FoWDrawStrategy.h.
|
inlinevirtualinherited |
Called after rendering the triangles that fill the space between the fadeout quads
Definition at line 109 of file C4FoWDrawStrategy.h.
|
inherited |
|
protectedinherited |
Definition at line 112 of file C4FoWDrawStrategy.h.
Referenced by C4FoWDrawStrategy::BeginFade(), C4FoWDrawStrategy::BeginFan(), C4FoWDrawStrategy::BeginFanMaxed(), C4FoWDrawStrategy::BeginIntermediateFade(), C4FoWDrawStrategy::DrawDarkVertex(), C4FoWDrawStrategy::DrawLightVertex(), C4FoWDrawStrategy::End(), End(), and C4FoWDrawWireframeStrategy::End().