raSystem  1.0 bata
raTexturedMaterial.cpp
Go to the documentation of this file.
1 #include "..\include\raMain.h"
2 
3 namespace System
4 {
5  raTexturedMaterial::raTexturedMaterial(raSmartPointer<raDirectX> dx, LPCSTR EffectFile, LPCSTR Technique,
6  LPCSTR textureFileName, LPCSTR effectVariable) :
7  raMaterial(dx, EffectFile, Technique),
8  m_TextureFileName(textureFileName)
9  {
10  m_pRV = NULL;
11  m_ptxDiffuseVariable = NULL;
12  m_effectVariableName = effectVariable;
13  }
15  {
17 
18  HRESULT hr;
20 
21  m_ptxDiffuseVariable = m_pEffect->GetVariableByName(m_effectVariableName)->AsShaderResource();
22  return true;
23  };
25  {
27  if(m_pRV) m_pRV->Release();
28  return true;
29  }
31  {
34  m_ptxDiffuseVariable->SetResource(m_pRV);
35  }
37  {
38  m_dx->GetImmediateContext()->GenerateMips(m_pRV);
39  }
40 };
ID3D11ShaderResourceView * m_pRV
static raResource & Instance()
Definition: raResource.cpp:38
virtual bool Create()
Definition: raMaterial.cpp:56
ID3D11DeviceContext * GetImmediateContext(void)
Definition: raDirectX.h:31
HRESULT CreateTextureFromFile(raSmartPointer< raDirectX > dx, raString pSrcFile, ID3D11ShaderResourceView **ppOutputRV, bool bSRGB=false)
Definition: raResource.h:25
ID3DX11Effect * m_pEffect
Definition: raMaterial.h:57
virtual void Setup()
Definition: raMaterial.cpp:160
ID3DX11EffectShaderResourceVariable * m_ptxDiffuseVariable
raSmartPointer< raDirectX > m_dx
Definition: raMaterial.h:53
raTexturedMaterial(raSmartPointer< raDirectX > dx, LPCSTR EffectFile, LPCSTR Technique, LPCSTR textureFileName="grass.jpg", LPCSTR effectVariable="g_MeshTexture")
virtual bool Destroy()
Definition: raMaterial.cpp:99