Pyrogenesis  trunk
Classes | Namespaces | Macros | Functions
OverlayRenderer.cpp File Reference
#include "precompiled.h"
#include "OverlayRenderer.h"
#include "graphics/Camera.h"
#include "graphics/LOSTexture.h"
#include "graphics/Overlay.h"
#include "graphics/ShaderManager.h"
#include "graphics/Terrain.h"
#include "graphics/TextureManager.h"
#include "lib/hash.h"
#include "maths/MathUtil.h"
#include "maths/Quaternion.h"
#include "ps/CStrInternStatic.h"
#include "ps/Game.h"
#include "ps/Profile.h"
#include "renderer/backend/PipelineState.h"
#include "renderer/DebugRenderer.h"
#include "renderer/Renderer.h"
#include "renderer/SceneRenderer.h"
#include "renderer/TexturedLineRData.h"
#include "renderer/VertexArray.h"
#include "renderer/VertexBuffer.h"
#include "renderer/VertexBufferManager.h"
#include "simulation2/components/ICmpWaterManager.h"
#include "simulation2/Simulation2.h"
#include "simulation2/system/SimContext.h"
#include <unordered_map>
Include dependency graph for OverlayRenderer.cpp:

Classes

struct  anonymous_namespace{OverlayRenderer.cpp}::Shader
 
struct  anonymous_namespace{OverlayRenderer.cpp}::QuadBatchKey
 Key used to group quads into batches for more efficient rendering. More...
 
struct  anonymous_namespace{OverlayRenderer.cpp}::QuadBatchHash
 
class  anonymous_namespace{OverlayRenderer.cpp}::QuadBatchData
 Holds information about a single quad rendering batch. More...
 
struct  OverlayRendererInternals
 

Namespaces

 anonymous_namespace{OverlayRenderer.cpp}
 

Macros

#define VERT(a, b, c)   vertexes.push_back(a); vertexes.push_back(b); vertexes.push_back(c);
 
#define FACE(a, b, c)
 

Functions

void anonymous_namespace{OverlayRenderer.cpp}::AdjustOverlayGraphicsPipelineState (Renderer::Backend::SGraphicsPipelineStateDesc &pipelineStateDesc, const bool depthTestEnabled)
 
Shader anonymous_namespace{OverlayRenderer.cpp}::CreateShader (const CStrIntern name, const CShaderDefines &defines, const bool depthTestEnabled)
 
static void TessellateSphereFace (const CVector3D &a, u16 ai, const CVector3D &b, u16 bi, const CVector3D &c, u16 ci, std::vector< float > &vertexes, std::vector< u16 > &indexes, int level)
 
static void TessellateSphere (std::vector< float > &vertexes, std::vector< u16 > &indexes, int level)
 

Macro Definition Documentation

◆ FACE

#define FACE (   a,
  b,
 
)
Value:
CVector3D(vertexes[a*3], vertexes[a*3+1], vertexes[a*3+2]), a, \
CVector3D(vertexes[b*3], vertexes[b*3+1], vertexes[b*3+2]), b, \
CVector3D(vertexes[c*3], vertexes[c*3+1], vertexes[c*3+2]), c, \
vertexes, indexes, level);
Definition: Vector3D.h:30
static void TessellateSphereFace(const CVector3D &a, u16 ai, const CVector3D &b, u16 bi, const CVector3D &c, u16 ci, std::vector< float > &vertexes, std::vector< u16 > &indexes, int level)
Definition: OverlayRenderer.cpp:729

◆ VERT

#define VERT (   a,
  b,
 
)    vertexes.push_back(a); vertexes.push_back(b); vertexes.push_back(c);

Function Documentation

◆ TessellateSphere()

static void TessellateSphere ( std::vector< float > &  vertexes,
std::vector< u16 > &  indexes,
int  level 
)
static

◆ TessellateSphereFace()

static void TessellateSphereFace ( const CVector3D a,
u16  ai,
const CVector3D b,
u16  bi,
const CVector3D c,
u16  ci,
std::vector< float > &  vertexes,
std::vector< u16 > &  indexes,
int  level 
)
static