00001 #pragma once
00002
00003 #include "shader_postprocess.h"
00004 #include "texturecache.h"
00005
00006 class Shader_FirstPass : public Shader_Postprocess
00007 {
00008 private:
00009 struct
00010 {
00011 ID3D10EffectVectorVariable* flash;
00012 ID3D10EffectShaderResourceVariable* texInputMSAA;
00013 } variables;
00014
00015
00016 public:
00017 bool compile(const D3D10_SHADER_MACRO *macros, DWORD shaderFlags);
00018 Shader_FirstPass(ID3D10Device *device);
00019 bool createRenderTargetViews(ID3D10RenderTargetView *backbuffer, const DXGI_SWAP_CHAIN_DESC &swapChainDesc, int multiSampleCount);
00020 void Shader_FirstPass::setInputTexture(ID3D10ShaderResourceView *texture);
00021 void flash(Vec4 &color) const;
00022 };