From 2cb7cc01bfa0c59593c930bebdc944edc6af03de Mon Sep 17 00:00:00 2001 From: twinaphex Date: Thu, 20 Oct 2016 05:00:20 +0200 Subject: [PATCH] (D3D) Cleanups --- gfx/common/d3d_common.cpp | 9 ++++++--- gfx/common/d3d_common.h | 6 +++--- gfx/drivers/d3d.cpp | 2 +- gfx/drivers/d3d.h | 4 +--- 4 files changed, 11 insertions(+), 10 deletions(-) diff --git a/gfx/common/d3d_common.cpp b/gfx/common/d3d_common.cpp index b38064e52d..1ce01ad47d 100644 --- a/gfx/common/d3d_common.cpp +++ b/gfx/common/d3d_common.cpp @@ -141,8 +141,9 @@ LPDIRECT3DVERTEXBUFFER d3d_vertex_buffer_new(LPDIRECT3DDEVICE dev, return buf; } -void d3d_vertex_buffer_unlock(LPDIRECT3DVERTEXBUFFER vertbuf) +void d3d_vertex_buffer_unlock(void *vertbuf_ptr) { + LPDIRECT3DVERTEXBUFFER vertbuf = (LPDIRECT3DVERTEXBUFFER)vertbuf_ptr; /* This is a stub on Xbox 1, see docs. */ #ifndef _XBOX1 @@ -159,9 +160,10 @@ void d3d_vertex_buffer_unlock(LPDIRECT3DVERTEXBUFFER vertbuf) #endif } -void *d3d_vertex_buffer_lock(LPDIRECT3DVERTEXBUFFER vertbuf) +void *d3d_vertex_buffer_lock(void *vertbuf_ptr) { void *buf; + LPDIRECT3DVERTEXBUFFER vertbuf = (LPDIRECT3DVERTEXBUFFER)vertbuf_ptr; #if defined(_XBOX1) buf = (void*)D3DVertexBuffer_Lock2(vertbuf, 0); @@ -197,9 +199,10 @@ void d3d_vertex_buffer_free(void *vertex_data, void *vertex_declaration) } void d3d_set_stream_source(LPDIRECT3DDEVICE dev, unsigned stream_no, - LPDIRECT3DVERTEXBUFFER stream_vertbuf, unsigned offset_bytes, + void *stream_vertbuf_ptr, unsigned offset_bytes, unsigned stride) { + LPDIRECT3DVERTEXBUFFER stream_vertbuf = (LPDIRECT3DVERTEXBUFFER)stream_vertbuf_ptr; #if defined(HAVE_D3D8) IDirect3DDevice8_SetStreamSource(dev, stream_no, stream_vertbuf, stride); #elif defined(_XBOX360) diff --git a/gfx/common/d3d_common.h b/gfx/common/d3d_common.h index dcae9f221c..b0a09bd60a 100644 --- a/gfx/common/d3d_common.h +++ b/gfx/common/d3d_common.h @@ -30,8 +30,8 @@ LPDIRECT3DVERTEXBUFFER d3d_vertex_buffer_new(LPDIRECT3DDEVICE dev, unsigned length, unsigned usage, unsigned fvf, D3DPOOL pool, void *handle); -void *d3d_vertex_buffer_lock(LPDIRECT3DVERTEXBUFFER vertbuf); -void d3d_vertex_buffer_unlock(LPDIRECT3DVERTEXBUFFER vertbuf); +void *d3d_vertex_buffer_lock(void *data); +void d3d_vertex_buffer_unlock(void *data); void d3d_vertex_buffer_free(void *vertex_data, void *vertex_declaration); @@ -43,7 +43,7 @@ LPDIRECT3DTEXTURE d3d_texture_new(LPDIRECT3DDEVICE dev, PALETTEENTRY *palette); void d3d_set_stream_source(LPDIRECT3DDEVICE dev, unsigned stream_no, - LPDIRECT3DVERTEXBUFFER stream_vertbuf, unsigned offset_bytes, + void *stream_vertbuf, unsigned offset_bytes, unsigned stride); void d3d_texture_free(LPDIRECT3DTEXTURE tex); diff --git a/gfx/drivers/d3d.cpp b/gfx/drivers/d3d.cpp index 8ca45dafec..27b428381d 100644 --- a/gfx/drivers/d3d.cpp +++ b/gfx/drivers/d3d.cpp @@ -403,7 +403,7 @@ static void d3d_overlay_render(d3d_video_t *d3d, overlay_t *overlay) vert[i][1] += 0.5f; } - overlay->vert_buf->Lock(0, sizeof(vert), &verts, 0); + verts = d3d_vertex_buffer_lock(overlay->vert_buf); memcpy(verts, vert, sizeof(vert)); d3d_vertex_buffer_unlock(overlay->vert_buf); diff --git a/gfx/drivers/d3d.h b/gfx/drivers/d3d.h index 609703e567..240c8a313b 100644 --- a/gfx/drivers/d3d.h +++ b/gfx/drivers/d3d.h @@ -67,9 +67,7 @@ typedef struct bool enabled; float alpha_mod; LPDIRECT3DTEXTURE tex; -#ifdef HAVE_D3D9 - LPDIRECT3DVERTEXBUFFER vert_buf; -#endif + void *vert_buf; } overlay_t; #ifdef _XBOX