From 887b57fef4eab725f1976d94bedd25bd5c5b15d8 Mon Sep 17 00:00:00 2001 From: twinaphex Date: Thu, 6 Mar 2014 02:51:06 +0100 Subject: [PATCH] (XDK1) Use faster SwitchTexture after the first SetTexture call - should change a texture in ten x86 instructions --- xdk/xdk_d3d.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/xdk/xdk_d3d.cpp b/xdk/xdk_d3d.cpp index 11f60ee4cf..7ca6d3fe7b 100644 --- a/xdk/xdk_d3d.cpp +++ b/xdk/xdk_d3d.cpp @@ -743,7 +743,12 @@ static void render_pass(void *data, const void *frame, unsigned width, unsigned blit_to_texture(d3d, frame, width, height, pitch); set_vertices(d3d, 1, width, height); - RD3DDevice_SetTexture(d3dr, 0, d3d->lpTexture); +#ifdef _XBOX1 + if (g_extern.frame_count) + d3dr->SwitchTexture(0, d3d->lpTexture); + else +#endif + RD3DDevice_SetTexture(d3dr, 0, d3d->lpTexture); RD3DDevice_SetViewport(d3d->dev, &d3d->final_viewport); RD3DDevice_SetSamplerState_MinFilter(d3dr, 0, g_settings.video.smooth ? D3DTEXF_LINEAR : D3DTEXF_POINT); RD3DDevice_SetSamplerState_MagFilter(d3dr, 0, g_settings.video.smooth ? D3DTEXF_LINEAR : D3DTEXF_POINT);