/// Begin render to texture. /// Call this instead of pD3DDevice->BeginScene(). bool RenderTexture::BeginScene() { HRESULT hr; LPDIRECT3DSURFACE9 pTextureSurface = NULL; hr = m_pTexture->GetSurfaceLevel(0, &pTextureSurface); if (FAILED(hr)) { ReportD3DError(hr); return false; } hr = m_pRenderSurface->BeginScene(pTextureSurface, NULL); if (FAILED(hr)) { ReportD3DError(hr); return false; } SAFE_RELEASE(pTextureSurface); return true; } /// Begin render to texture. /// Call this instead of pD3DDevice->EndScene(). void RenderTexture::EndScene() { HRESULT hr; hr = m_pRenderSurface->EndScene(D3DX_DEFAULT); if (FAILED(hr)) { ReportD3DError(hr); } }