Shader_HDR Class Reference

Inheritance diagram for Shader_HDR:
Shader_Postprocess Shader

List of all members.

Public Member Functions

 Shader_HDR (ID3D10Device *device)
bool compile (const D3D10_SHADER_MACRO *macros, DWORD shaderFlags)
bool createRenderTargetViews (ID3D10RenderTargetView *backbuffer, const DXGI_SWAP_CHAIN_DESC &swapChainDesc, int multiSampleCount)
void releaseRenderTargetViews ()
void apply ()
void setInputTexture (ID3D10ShaderResourceView *texture)

Private Attributes

ID3D10ShaderResourceView * sceneTexture
ID3D10EffectTechnique * sourceToLumTechnique
ID3D10EffectTechnique * downscaleLumTechnique
ID3D10EffectTechnique * brightPassTechnique
ID3D10EffectTechnique * blurTechnique
ID3D10EffectTechnique * finalTechnique
ID3D10EffectTechnique * adaptiveLumTechnique
Vec2_int renderTargetSize
ID3D10ShaderResourceView * toneMapSRV [NUM_TONEMAP_TEXTURES]
ID3D10RenderTargetView * toneMapRTV [NUM_TONEMAP_TEXTURES]
ID3D10ShaderResourceView * bloomSRV [NUM_BLOOM_TEXTURES]
ID3D10RenderTargetView * bloomRTV [NUM_BLOOM_TEXTURES]
ID3D10ShaderResourceView * adaptiveLumSRV [NUM_ADAPTIVE_LUM_TEXTURES]
ID3D10RenderTargetView * adaptiveLumRTV [NUM_ADAPTIVE_LUM_TEXTURES]
ID3D10ShaderResourceView * brightSRV
ID3D10RenderTargetView * brightRTV
struct {
   ID3D10EffectShaderResourceVariable *   luminanceTexture
   ID3D10EffectShaderResourceVariable *   bloomTexture
variables

Static Private Attributes

static const int NUM_TONEMAP_TEXTURES = 5
static const int TONEMAP_RESIZE = 3
static const int NUM_BLOOM_TEXTURES = 2
static const int NUM_ADAPTIVE_LUM_TEXTURES = 2
static const int BLOOM_SCALE = 4

Member Function Documentation

void Shader_HDR::apply (  )  [virtual]

Draw the shader's buffer contents.

Reimplemented from Shader.


Member Data Documentation

const int Shader_HDR::BLOOM_SCALE = 4 [static, private]

Bloom texture size = backbuffersize / BLOOM_SCALE

const int Shader_HDR::TONEMAP_RESIZE = 3 [static, private]

How much each tonemapping size downsamples


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

Generated by  doxygen 1.6.2