the texture will be used on this way: each pixel is a vector.
What i need is a:
new Texture------the main thing
ShaderResouceView with an effectShaderResourceVariable---- to read it
RenderTargetView-------- to write to it
This are the variables used:
ID3D10Texture2D* VectorsBuffer;
ID3D10ShaderResourceView* g_pTexture2 = NULL;
ID3D10EffectShaderResourceVariable* g_pTx2 = NULL;
ID3D10RenderTargetView* g_pRenderTargetView2 = NULL;
AND THE CODE
ID3D10Texture2D* VectorsBuffer; D3D10_TEXTURE2D_DESC texD; texD.Width = width; texD.Height = height; texD.MipLevels = 1; texD.ArraySize = 1; texD.Format = DXGI_FORMAT_R32G32B32_FLOAT; texD.SampleDesc.Count = 1; texD.SampleDesc.Quality = 0; texD.Usage = D3D10_USAGE_DEFAULT; texD.BindFlags = D3D10_BIND_RENDER_TARGET | D3D10_BIND_SHADER_RESOURCE; texD.CPUAccessFlags = 0; texD.MiscFlags = 0; hr = g_pd3dDevice->CreateTexture2D(&texD, 0, &VectorsBuffer); if( FAILED( hr ) ) return hr; hr = g_pd3dDevice->CreateRenderTargetView( VectorsBuffer, 0, &g_pRenderTargetView2 ); if( FAILED( hr ) ) return hr; D3D10_SHADER_RESOURCE_VIEW_DESC srvD; srvD.Format = DXGI_FORMAT_R32G32B32_FLOAT; srvD.ViewDimension = D3D10_SRV_DIMENSION_TEXTURE2D; srvD.Texture2D.MipLevels = 1; srvD.Texture2D.MostDetailedMip = 0; hr = g_pd3dDevice->CreateShaderResourceView(VectorsBuffer,&srvD, &g_pTexture2); if( FAILED( hr ) ) return hr; g_pTx2 = g_pEffect->GetVariableByName( "TextureRW" )->AsShaderResource(); g_pTx2->SetResource( g_pTexture2 );
is it ok?






