Voila comment que je fais pour mettre des datas dans une surface ( avec dx9 )
HRESULT result; IDirect3DSurface9 *surfacedx9; RECT sourcerect;
// Selection du premier mip-map ( le + détaillé ) result = texturedx9->GetSurfaceLevel(0,&surfacedx9); if(result != D3D_OK) return false;
// Selection de la taille de la source sourcerect.left = 0; sourcerect.top = 0; sourcerect.right = m_width; sourcerect.bottom = m_height; result = D3DXLoadSurfaceFromMemory ( surfacedx9, NULL, NULL, pixels, // pointeur sur tes pixels D3DFMT_A8R8G8B8, // format de tes pixels m_width*sizeof(u32), // largeur d'une ligne en octets NULL, &sourcerect, D3DX_FILTER_TRIANGLE, 0 ); if(result != D3D_OK) return false;
// Fini de charger le mip-map 0 surfacedx9->Release ();
// Création des autres mip-maps if(m_mipmaplevels!=1) { result = D3DXFilterTexture ( m_dx9textures[a].texturedx9, NULL, 0, D3DX_FILTER_TRIANGLE ); if(result != D3D_OK) return false; }
|