Cogs.Core
Public Member Functions | Public Attributes | Static Public Attributes | Private Attributes | List of all members
Cogs::ClipmapRenderer Struct Reference

Public Member Functions

void initializeTextures (ITextures *textures)
 
void initializeEffects (IBuffers *buffers, IEffects *effects, const size_t numImagery, size_t permutation)
 
void initializeConstantBuffers (IBuffers *buffers, ClipmapEffectVariables &variables)
 
void initializeEffectVariables (IEffects *effects, EffectHandle effect, ClipmapEffectVariables &variables, const size_t numImagery, bool isDepth)
 
void initializeEffectBindings (IEffects *effects, EffectHandle effect, ClipmapTextureBindings &bindings, const size_t numImagery, bool isDepth)
 
void initializeRasterizerStates (IRenderTargets *renderTargets)
 
void initializeRenderTargets (IRenderTargets *renderTargets)
 
void cleanup (IGraphicsDevice *device)
 
void updateGlobalParameters (const RenderContext &context, const RenderOptions &renderOptions, const ClipmapState &clipmapState, const GlobalParameters &globalParameters)
 
void updateLevelParameters (IContext *context, const RenderOptions &options, const LevelParameters &parameters, const ImageryParameters &imageryParameters, size_t permutation)
 
void updateLevelTextures (IContext *context, const RenderLevel *renderLevel, size_t permutation)
 
void setCustomParameters (const unsigned char *data, int count)
 
void initLevels ()
 
bool createRenderLevel (ClipmapGeometry &clipmapGeometry, ClipmapState &clipmapState, ClipmapLevel &terrainLevel, std::vector< std::vector< ClipmapLevel > > &, ClipmapLevel *normalLevel, const GlobalParameters &globalParameters, const LevelParameters &parameters, const ImageryParameters &imageryParameters, bool fillRing, bool select=false)
 
bool createBackgroundRenderLevel (ClipmapGeometry &clipmapGeometry, ClipmapState &clipmapState, ClipmapLevel &terrainLevel, std::vector< std::vector< ClipmapLevel > > &, ClipmapLevel *normalLevel, const GlobalParameters &globalParameters, const LevelParameters &parameters, const ImageryParameters &imageryParameters, bool useSimplifiedMesh=false)
 
void setupDepthPass (RenderContext &renderContext, size_t depthDataIndex)
 
void setupDepthQueryPass (RenderContext &renderContext)
 
void setupRegularPass (RenderContext &renderContext)
 
void render (RenderContext &renderContext, const RenderOptions &renderOptions, const WorldOptions &worldOptions, bool usePreviousCullingResults=false)
 
void createBlock (ClipmapMesh &mesh, int overallWest, int overallSouth, int blockWest, int blockSouth, RenderLevel &renderLevel, bool useSimplifiedMesh=false)
 
void drawBlock (const RenderBlock &renderBlock, RenderContext &renderContext)
 
PermutationDependentClipmapRendererDatagetPermutationDependentClipmapRendererData (const size_t index)
 

Public Attributes

bool depthPass
 
SamplerStateHandle pointSamplerState
 
SamplerStateHandle linearSamplerState
 
RasterizerStateHandle solidRasterizerState
 
RasterizerStateHandle solidNoDepthClipRasterizerState
 
RasterizerStateHandle solidOffsetRasterizerState
 
RasterizerStateHandle wireframeRasterizerState
 
DepthStencilStateHandle solidDepthState
 
DepthStencilStateHandle wireframeDepthState
 
DepthStencilStateHandle transparentDepthState
 
DepthStencilStateHandle transparentWireframeDepthState
 
InputLayoutHandle inputLayout
 
BufferHandle customParametersBuffer
 
std::vector< DepthRenderDataraypickDepthData
 
TextureHandle depthQueryTextureHandle
 
int depthQuerySize
 
RenderTargetHandle depthQueryRenderHandle
 
DepthStencilHandle depthQueryTargetHandle
 
bool depthQueryRenderInitialized = false
 
bool reverseDepth = false
 
std::vector< unsigned char > customParameters
 
RenderLevel levels [kMaxNumLevels]
 
size_t levelIndex
 
bool visibleBlocks [Cogs::kMaxNumBlocks *Cogs::kMaxNumLevels]
 
struct ClipmapGeometrygeometry
 

Static Public Attributes

static const int NoPickIndex = -1
 
static const int DefaultPickIndex = 0
 

Private Attributes

std::vector< PermutationDependentClipmapRendererDatapermutationDependentClipmapRendererData
 

Detailed Description

Definition at line 57 of file ClipmapRenderer.h.

Member Function Documentation

◆ cleanup()

void Cogs::ClipmapRenderer::cleanup ( IGraphicsDevice device)

Definition at line 710 of file ClipmapRenderer.cpp.

◆ createBackgroundRenderLevel()

bool Cogs::ClipmapRenderer::createBackgroundRenderLevel ( ClipmapGeometry clipmapGeometry,
ClipmapState clipmapState,
ClipmapLevel terrainLevel,
std::vector< std::vector< ClipmapLevel > > &  imagery,
ClipmapLevel normalLevel,
const GlobalParameters &  globalParameters,
const LevelParameters &  parameters,
const ImageryParameters &  imageryParameters,
bool  useSimplifiedMesh = false 
)

Definition at line 428 of file ClipmapRenderer.cpp.

◆ createBlock()

void Cogs::ClipmapRenderer::createBlock ( ClipmapMesh mesh,
int  overallWest,
int  overallSouth,
int  blockWest,
int  blockSouth,
RenderLevel renderLevel,
bool  useSimplifiedMesh = false 
)

Definition at line 665 of file ClipmapRenderer.cpp.

◆ createRenderLevel()

bool Cogs::ClipmapRenderer::createRenderLevel ( ClipmapGeometry clipmapGeometry,
ClipmapState clipmapState,
ClipmapLevel terrainLevel,
std::vector< std::vector< ClipmapLevel > > &  imagery,
ClipmapLevel normalLevel,
const GlobalParameters &  globalParameters,
const LevelParameters &  parameters,
const ImageryParameters &  imageryParameters,
bool  fillRing,
bool  select = false 
)

Definition at line 338 of file ClipmapRenderer.cpp.

◆ drawBlock()

void Cogs::ClipmapRenderer::drawBlock ( const RenderBlock renderBlock,
RenderContext renderContext 
)

Definition at line 690 of file ClipmapRenderer.cpp.

◆ getPermutationDependentClipmapRendererData()

PermutationDependentClipmapRendererData & Cogs::ClipmapRenderer::getPermutationDependentClipmapRendererData ( const size_t  index)
inline

Definition at line 107 of file ClipmapRenderer.h.

◆ initializeConstantBuffers()

void Cogs::ClipmapRenderer::initializeConstantBuffers ( IBuffers buffers,
ClipmapEffectVariables variables 
)

Definition at line 125 of file ClipmapRenderer.cpp.

◆ initializeEffectBindings()

void Cogs::ClipmapRenderer::initializeEffectBindings ( IEffects effects,
EffectHandle  effect,
ClipmapTextureBindings bindings,
const size_t  numImagery,
bool  isDepth 
)

Definition at line 172 of file ClipmapRenderer.cpp.

◆ initializeEffects()

void Cogs::ClipmapRenderer::initializeEffects ( IBuffers buffers,
IEffects effects,
const size_t  numImagery,
size_t  permutation 
)

Definition at line 103 of file ClipmapRenderer.cpp.

◆ initializeEffectVariables()

void Cogs::ClipmapRenderer::initializeEffectVariables ( IEffects effects,
EffectHandle  effect,
ClipmapEffectVariables variables,
const size_t  numImagery,
bool  isDepth 
)

Definition at line 138 of file ClipmapRenderer.cpp.

◆ initializeRasterizerStates()

void Cogs::ClipmapRenderer::initializeRasterizerStates ( IRenderTargets renderTargets)

Definition at line 209 of file ClipmapRenderer.cpp.

◆ initializeRenderTargets()

void Cogs::ClipmapRenderer::initializeRenderTargets ( IRenderTargets renderTargets)

Definition at line 241 of file ClipmapRenderer.cpp.

◆ initializeTextures()

void Cogs::ClipmapRenderer::initializeTextures ( ITextures textures)

Definition at line 73 of file ClipmapRenderer.cpp.

◆ initLevels()

void Cogs::ClipmapRenderer::initLevels ( )

Definition at line 333 of file ClipmapRenderer.cpp.

◆ render()

void Cogs::ClipmapRenderer::render ( RenderContext renderContext,
const RenderOptions renderOptions,
const WorldOptions worldOptions,
bool  usePreviousCullingResults = false 
)

Definition at line 620 of file ClipmapRenderer.cpp.

◆ setCustomParameters()

void Cogs::ClipmapRenderer::setCustomParameters ( const unsigned char *  data,
int  count 
)

Definition at line 705 of file ClipmapRenderer.cpp.

◆ setupDepthPass()

void Cogs::ClipmapRenderer::setupDepthPass ( RenderContext renderContext,
size_t  depthDataIndex 
)

Definition at line 483 of file ClipmapRenderer.cpp.

◆ setupDepthQueryPass()

void Cogs::ClipmapRenderer::setupDepthQueryPass ( RenderContext renderContext)

Definition at line 537 of file ClipmapRenderer.cpp.

◆ setupRegularPass()

void Cogs::ClipmapRenderer::setupRegularPass ( RenderContext renderContext)

Definition at line 577 of file ClipmapRenderer.cpp.

◆ updateGlobalParameters()

void Cogs::ClipmapRenderer::updateGlobalParameters ( const RenderContext context,
const RenderOptions renderOptions,
const ClipmapState clipmapState,
const GlobalParameters &  globalParameters 
)

Definition at line 260 of file ClipmapRenderer.cpp.

◆ updateLevelParameters()

void Cogs::ClipmapRenderer::updateLevelParameters ( IContext context,
const RenderOptions options,
const LevelParameters &  parameters,
const ImageryParameters &  imageryParameters,
size_t  permutation 
)

Definition at line 280 of file ClipmapRenderer.cpp.

◆ updateLevelTextures()

void Cogs::ClipmapRenderer::updateLevelTextures ( IContext context,
const RenderLevel renderLevel,
size_t  permutation 
)

Definition at line 296 of file ClipmapRenderer.cpp.

Member Data Documentation

◆ customParameters

std::vector<unsigned char> Cogs::ClipmapRenderer::customParameters

Definition at line 148 of file ClipmapRenderer.h.

◆ customParametersBuffer

BufferHandle Cogs::ClipmapRenderer::customParametersBuffer

Definition at line 132 of file ClipmapRenderer.h.

◆ DefaultPickIndex

const int Cogs::ClipmapRenderer::DefaultPickIndex = 0
static

Definition at line 137 of file ClipmapRenderer.h.

◆ depthPass

bool Cogs::ClipmapRenderer::depthPass

Definition at line 116 of file ClipmapRenderer.h.

◆ depthQueryRenderHandle

RenderTargetHandle Cogs::ClipmapRenderer::depthQueryRenderHandle

Definition at line 142 of file ClipmapRenderer.h.

◆ depthQueryRenderInitialized

bool Cogs::ClipmapRenderer::depthQueryRenderInitialized = false

Definition at line 144 of file ClipmapRenderer.h.

◆ depthQuerySize

int Cogs::ClipmapRenderer::depthQuerySize

Definition at line 141 of file ClipmapRenderer.h.

◆ depthQueryTargetHandle

DepthStencilHandle Cogs::ClipmapRenderer::depthQueryTargetHandle

Definition at line 143 of file ClipmapRenderer.h.

◆ depthQueryTextureHandle

TextureHandle Cogs::ClipmapRenderer::depthQueryTextureHandle

Definition at line 139 of file ClipmapRenderer.h.

◆ geometry

struct ClipmapGeometry* Cogs::ClipmapRenderer::geometry

Definition at line 154 of file ClipmapRenderer.h.

◆ inputLayout

InputLayoutHandle Cogs::ClipmapRenderer::inputLayout

Definition at line 131 of file ClipmapRenderer.h.

◆ levelIndex

size_t Cogs::ClipmapRenderer::levelIndex

Definition at line 151 of file ClipmapRenderer.h.

◆ levels

RenderLevel Cogs::ClipmapRenderer::levels[kMaxNumLevels]

Definition at line 150 of file ClipmapRenderer.h.

◆ linearSamplerState

SamplerStateHandle Cogs::ClipmapRenderer::linearSamplerState

Definition at line 119 of file ClipmapRenderer.h.

◆ NoPickIndex

const int Cogs::ClipmapRenderer::NoPickIndex = -1
static

Definition at line 136 of file ClipmapRenderer.h.

◆ permutationDependentClipmapRendererData

std::vector<PermutationDependentClipmapRendererData> Cogs::ClipmapRenderer::permutationDependentClipmapRendererData
private

Definition at line 157 of file ClipmapRenderer.h.

◆ pointSamplerState

SamplerStateHandle Cogs::ClipmapRenderer::pointSamplerState

Definition at line 118 of file ClipmapRenderer.h.

◆ raypickDepthData

std::vector<DepthRenderData> Cogs::ClipmapRenderer::raypickDepthData

Definition at line 135 of file ClipmapRenderer.h.

◆ reverseDepth

bool Cogs::ClipmapRenderer::reverseDepth = false

Definition at line 146 of file ClipmapRenderer.h.

◆ solidDepthState

DepthStencilStateHandle Cogs::ClipmapRenderer::solidDepthState

Definition at line 126 of file ClipmapRenderer.h.

◆ solidNoDepthClipRasterizerState

RasterizerStateHandle Cogs::ClipmapRenderer::solidNoDepthClipRasterizerState

Definition at line 122 of file ClipmapRenderer.h.

◆ solidOffsetRasterizerState

RasterizerStateHandle Cogs::ClipmapRenderer::solidOffsetRasterizerState

Definition at line 123 of file ClipmapRenderer.h.

◆ solidRasterizerState

RasterizerStateHandle Cogs::ClipmapRenderer::solidRasterizerState

Definition at line 121 of file ClipmapRenderer.h.

◆ transparentDepthState

DepthStencilStateHandle Cogs::ClipmapRenderer::transparentDepthState

Definition at line 128 of file ClipmapRenderer.h.

◆ transparentWireframeDepthState

DepthStencilStateHandle Cogs::ClipmapRenderer::transparentWireframeDepthState

Definition at line 129 of file ClipmapRenderer.h.

◆ visibleBlocks

bool Cogs::ClipmapRenderer::visibleBlocks[Cogs::kMaxNumBlocks *Cogs::kMaxNumLevels]

Definition at line 152 of file ClipmapRenderer.h.

◆ wireframeDepthState

DepthStencilStateHandle Cogs::ClipmapRenderer::wireframeDepthState

Definition at line 127 of file ClipmapRenderer.h.

◆ wireframeRasterizerState

RasterizerStateHandle Cogs::ClipmapRenderer::wireframeRasterizerState

Definition at line 124 of file ClipmapRenderer.h.


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