Advertisement
Guest User

Init code

a guest
Jan 4th, 2011
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.80 KB | None | 0 0
  1. HRESULT InitializeSurfaces()
  2.     {
  3.         HRESULT hr = S_OK;
  4.  
  5.         assert(m_pDev);
  6.  
  7.         SAFE_RELEASE(m_pTexture);
  8.         SAFE_RELEASE(m_pSurface);
  9.         SAFE_RELEASE(m_pSysMemSurface);
  10.         SAFE_RELEASE(m_pRenderToSurface);
  11.  
  12.         V_RETURN(D3DXCreateTexture(m_pDev, 1, 1, 1, D3DUSAGE_RENDERTARGET, D3DFMT_R32F, D3DPOOL_DEFAULT, &m_pTexture));
  13.         V_RETURN(m_pTexture->GetSurfaceLevel(0, &m_pSurface));
  14.         V_RETURN(m_pSurface->GetDesc(&m_desc));
  15.         V_RETURN(m_pDev->CreateOffscreenPlainSurface(1, 1, D3DFMT_R32F, D3DPOOL_SYSTEMMEM, &m_pSysMemSurface, nullptr));
  16.         V_RETURN(D3DXCreateRenderToSurface(m_pDev, 1, 1, D3DFMT_R32F, FALSE, D3DFMT_UNKNOWN, &m_pRenderToSurface));
  17.        
  18.         return hr;
  19.     }
  20.  
  21.     HRESULT InitializeVertexBuffer()
  22.     {
  23.         HRESULT hr = S_OK;
  24.  
  25.         SAFE_RELEASE(m_pVB);
  26.         V_RETURN(m_pDev->CreateVertexBuffer(sizeof(vec3_ty),D3DUSAGE_DYNAMIC|D3DUSAGE_WRITEONLY, D3DFVF_XYZ, D3DPOOL_DEFAULT, &m_pVB, nullptr));
  27.  
  28.         return hr;
  29.     }
  30.  
  31.     HRESULT InitializeEffect()
  32.     {
  33.         HRESULT hr = S_OK;
  34.  
  35.         ID3DXBuffer* pErrors = nullptr;
  36.         SAFE_RELEASE(m_pEffect);
  37.         DWORD dwShaderFlags = 0;
  38. #if defined( DEBUG ) || defined( _DEBUG )
  39.         dwShaderFlags |= D3DXSHADER_DEBUG;
  40. #endif
  41.         if (FAILED(D3DXCreateEffectFromFile(m_pDev, cvEFFECT_FILE.c_str(), 0, 0, dwShaderFlags, 0, &m_pEffect, &pErrors)))
  42.         {
  43.             if (pErrors)
  44.             {
  45.                 pErrors->Release();
  46.             }
  47.  
  48.             return E_FAIL;
  49.         }
  50.  
  51.         return hr;
  52.     }
  53.  
  54.     HRESULT InitializeMatrices()
  55.     {
  56.         vec3_ty zero(0,0,0);
  57.         vec3_ty unitY(0,1,0);
  58.         vec3_ty unitZ(0,0,1);
  59.  
  60.         D3DXMatrixLookAtLH(&m_matView, &zero, &unitZ, &unitY);
  61.         D3DXMatrixOrthoLH(&m_matProjection, 1, 1, 0.1f, 10.0f);
  62.         D3DXMatrixTranslation(&m_matWorld, -1/2, -1/2, 0);
  63.         m_viewport.X = 0;
  64.         m_viewport.Y = 0;
  65.         m_viewport.Width = 1;
  66.         m_viewport.Height = 1;
  67.         m_viewport.MinZ = 0.01f;
  68.         m_viewport.MaxZ = 1.0f;
  69.  
  70.         return S_OK;
  71.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement