Advertisement
expired6978

Test

May 3rd, 2014
213
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.72 KB | None | 0 0
  1. if(g_textureGroup) {
  2.         NiRenderedTexture * renderedTexture = g_textureGroup->renderedTexture[0];
  3.         if(renderedTexture) {
  4.  
  5.             if(!pStateBlock)
  6.                 pDevice->CreateStateBlock(D3DSBT_ALL,&pStateBlock);
  7.  
  8.             pStateBlock->Capture();
  9.  
  10.             LPDIRECT3DBASETEXTURE9 oldTexture;
  11.             LPDIRECT3DSURFACE9 oldTarget;
  12.             pDevice->GetRenderTarget(0,&oldTarget);
  13.             pDevice->GetTexture(0, &oldTexture);
  14.  
  15.             LPDIRECT3DSURFACE9 pRenderSurface = NULL;
  16.             LPDIRECT3DTEXTURE9 pRenderTexture = (LPDIRECT3DTEXTURE9)((NiTexture::NiDX9TextureData*)renderedTexture->rendererData)->texture;
  17.             pRenderTexture->GetSurfaceLevel(0, &pRenderSurface);
  18.             pDevice->SetRenderTarget(0, pRenderSurface);
  19.             pDevice->Clear(0,NULL,D3DCLEAR_TARGET | D3DCLEAR_ZBUFFER,0,1.0f,0);
  20.             pDevice->SetTexture(0,pRenderTexture);
  21.  
  22.             LPD3DXMESH meshBox;
  23.             pDevice->SetRenderState(D3DRS_ZENABLE,false);
  24.             pDevice->SetRenderState(D3DRS_ALPHABLENDENABLE, TRUE);
  25.             pDevice->SetRenderState(D3DRS_SRCBLEND,D3DBLEND_SRCALPHA);
  26.             pDevice->SetRenderState(D3DRS_DESTBLEND,D3DBLEND_INVSRCALPHA);
  27.             pDevice->SetTextureStageState(0,D3DTSS_COLOROP,D3DTOP_SELECTARG1);
  28.             pDevice->SetTextureStageState(0,D3DTSS_COLORARG1,D3DTA_TEXTURE);
  29.             pDevice->SetTextureStageState(0,D3DTSS_COLORARG2,D3DTA_DIFFUSE);  
  30.             pDevice->SetFVF( D3DFVF_XYZRHW | D3DFVF_TEX1 );
  31.             pDevice->SetPixelShader(NULL);
  32.             pDevice->SetRenderState(D3DRS_FILLMODE, D3DFILL_WIREFRAME);
  33.  
  34.             D3DXCreateBox(pDevice, 2.0f, 2.0f, 2.0f, &meshBox, 0);
  35.             //D3DXMATRIX matrix;
  36.             //D3DXMatrixTranslation(&matrix,  0.0f, 0.0f,  0.0f);
  37.             //pDevice->SetTransform(D3DTS_WORLD, &matrix);
  38.             meshBox->DrawSubset(0);
  39.  
  40.             pDevice->SetRenderTarget(0, oldTarget);
  41.             pDevice->SetTexture(0, oldTexture);
  42.  
  43.             pStateBlock->Apply();
  44.         }
  45.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement