mirror of
https://github.com/libretro/RetroArch
synced 2025-03-25 16:44:01 +00:00
(D3D/MSVC) Build fix and include d3d_wrapper.c for MSVC build
This commit is contained in:
parent
127441e0c6
commit
05c7d4e573
@ -14,10 +14,17 @@
|
||||
* If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "d3d.hpp"
|
||||
#include "d3d_wrapper.h"
|
||||
#include "render_chain.hpp"
|
||||
|
||||
void d3d_swap(d3d_video_t *d3d, LPDIRECT3DDEVICE dev)
|
||||
void d3d_swap(void *data, LPDIRECT3DDEVICE dev)
|
||||
{
|
||||
d3d_video_t *d3d = (d3d_video_t*)data;
|
||||
|
||||
if (!d3d)
|
||||
return;
|
||||
|
||||
#if defined(_XBOX1)
|
||||
D3DDevice_Swap(0);
|
||||
#elif defined(_XBOX360)
|
||||
@ -56,7 +63,7 @@ void d3d_set_stream_source(LPDIRECT3DDEVICE dev, unsigned stream_no,
|
||||
D3DDevice_SetStreamSource_Inline(dev, stream_no, stream_vertbuf,
|
||||
offset_bytes, stride);
|
||||
#else
|
||||
dev->SetStreamSource(steam_no, stream_vertbuf, offset_bytes, stride);
|
||||
dev->SetStreamSource(stream_no, stream_vertbuf, offset_bytes, stride);
|
||||
#endif
|
||||
}
|
||||
|
||||
@ -137,7 +144,7 @@ void d3d_lockrectangle_clear(LPDIRECT3DTEXTURE tex,
|
||||
D3DTexture_LockRect(tex, level, &lock_rect, &rect, flags);
|
||||
memset(lock_rect.pBits, 0, tex_height * lock_rect.Pitch);
|
||||
#else
|
||||
if (SUCCEEDED(tex->LockRect(level, &lock_rect, rect, flags)))
|
||||
if (SUCCEEDED(tex->LockRect(level, &lock_rect, &rect, flags)))
|
||||
{
|
||||
memset(lock_rect.pBits, level, tex_height * lock_rect.Pitch);
|
||||
tex->UnlockRect(0);
|
||||
@ -145,12 +152,18 @@ void d3d_lockrectangle_clear(LPDIRECT3DTEXTURE tex,
|
||||
#endif
|
||||
}
|
||||
|
||||
void d3d_textureblit(d3d_video_t *d3d,
|
||||
void d3d_textureblit(void *data, void *renderchain_data,
|
||||
LPDIRECT3DTEXTURE tex, D3DSURFACE_DESC desc,
|
||||
D3DLOCKED_RECT lr, const void *frame,
|
||||
unsigned width, unsigned height, unsigned pitch)
|
||||
{
|
||||
d3d_video_t *d3d = (d3d_video_t*)d3d;
|
||||
(void)desc;
|
||||
(void)d3d;
|
||||
|
||||
if (!d3d)
|
||||
return;
|
||||
|
||||
#if defined(_XBOX360)
|
||||
tex->GetLevelDesc(0, &desc);
|
||||
XGCopySurface(lr.pBits, lr.Pitch, width, height, desc.Format, NULL,
|
||||
@ -163,13 +176,18 @@ void d3d_textureblit(d3d_video_t *d3d,
|
||||
memcpy(out, in, width * d3d->pixel_size);
|
||||
}
|
||||
#else
|
||||
renderchain_t *chain = (renderchain_t*)renderchain_data;
|
||||
|
||||
if (!chain)
|
||||
return;
|
||||
|
||||
if (SUCCEEDED(tex->LockRect(0, &lr, NULL, D3DLOCK_NOSYSLOCK)))
|
||||
{
|
||||
for (unsigned y = 0; y < height; y++)
|
||||
{
|
||||
const uint8_t *in = (const uint8_t*)frame + y * pitch;
|
||||
uint8_t *out = (uint8_t*)lr.pBits + y * lr.Pitch;
|
||||
memcpy(out, in, width * d3d->pixel_size);
|
||||
memcpy(out, in, width * chain->pixel_size);
|
||||
}
|
||||
tex->UnlockRect(0);
|
||||
}
|
||||
|
@ -20,7 +20,7 @@
|
||||
#include "../context/win32_common.h"
|
||||
#include "d3d_defines.h"
|
||||
|
||||
void d3d_swap(d3d_video_t *d3d, LPDIRECT3DDEVICE dev);
|
||||
void d3d_swap(void *data, LPDIRECT3DDEVICE dev);
|
||||
|
||||
HRESULT d3d_create_vertex_buffer(LPDIRECT3DDEVICE dev,
|
||||
unsigned length, unsigned usage, unsigned fvf,
|
||||
@ -50,7 +50,7 @@ void d3d_lockrectangle_clear(LPDIRECT3DTEXTURE tex,
|
||||
unsigned level, D3DLOCKED_RECT lock_rect, RECT rect,
|
||||
unsigned flags);
|
||||
|
||||
void d3d_textureblit(d3d_video_t *d3d,
|
||||
void d3d_textureblit(void *data,
|
||||
LPDIRECT3DTEXTURE tex, D3DSURFACE_DESC desc,
|
||||
D3DLOCKED_RECT lr, const void *frame,
|
||||
unsigned width, unsigned height, unsigned pitch);
|
||||
|
@ -161,7 +161,7 @@ bool renderchain_add_pass(void *data, const LinkInfo *info)
|
||||
? D3DUSAGE_SOFTWAREPROCESSING : 0,
|
||||
0,
|
||||
D3DPOOL_DEFAULT,
|
||||
&pass.vertex_buf,
|
||||
pass.vertex_buf,
|
||||
NULL)))
|
||||
return false;
|
||||
|
||||
|
@ -219,6 +219,7 @@
|
||||
<ClCompile Include="..\..\deps\rzlib\unzip.c" />
|
||||
<ClCompile Include="..\..\deps\rzlib\zutil.c" />
|
||||
<ClCompile Include="..\..\file_extract.c" />
|
||||
<ClCompile Include="..\..\gfx\d3d9\d3d_wrapper.c" />
|
||||
<ClCompile Include="..\..\playlist.c" />
|
||||
<ClCompile Include="..\..\file_list.c" />
|
||||
<ClCompile Include="..\..\frontend\menu\backend\menu_common_backend.c" />
|
||||
|
@ -258,6 +258,10 @@
|
||||
<ClCompile Include="..\..\gfx\context\win32_common.c">
|
||||
<Filter>gfx\context</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\frontend\menu\menu_action.c" />
|
||||
<ClCompile Include="..\..\gfx\d3d9\d3d_wrapper.c">
|
||||
<Filter>gfx\d3d9</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="resource.h" />
|
||||
|
Loading…
x
Reference in New Issue
Block a user