LPDIRECT3DVERTEXBUFFER d3d_vertex_buffer_new(LPDIRECT3DDEVICE dev, unsigned length, unsigned usage, unsigned fvf, D3DPOOL pool, void *handle) { HRESULT hr; LPDIRECT3DVERTEXBUFFER buf; #ifndef _XBOX if (usage == 0) { if (dev->GetSoftwareVertexProcessing()) usage = D3DUSAGE_SOFTWAREPROCESSING; } #endif #if defined(HAVE_D3D8) hr = IDirect3DDevice8_CreateVertexBuffer(dev, length, usage, fvf, pool, &buf); #elif defined(HAVE_D3D9) hr = IDirect3DDevice9_CreateVertexBuffer(dev, length, usage, fvf, pool, &buf, NULL); #else hr = dev->CreateVertexBuffer(length, usage, fvf, pool, &buf, NULL); #endif if (FAILED(hr)) return NULL; return buf; }
LPDIRECT3DVERTEXBUFFER d3d_vertex_buffer_new(LPDIRECT3DDEVICE dev, unsigned length, unsigned usage, unsigned fvf, D3DPOOL pool, void *handle) { HRESULT hr; LPDIRECT3DVERTEXBUFFER buf; #if defined(HAVE_D3D8) hr = IDirect3DDevice8_CreateVertexBuffer(dev, length, usage, fvf, pool, &buf); #elif defined(HAVE_D3D9) hr = IDirect3DDevice9_CreateVertexBuffer(dev, length, usage, fvf, pool, &buf, NULL); #else hr = dev->CreateVertexBuffer(length, usage, fvf, pool, &buf, NULL); #endif if (FAILED(hr)) return NULL; return buf; }