(360) Have xdk_d3d_frame decide to draw XUI instead of

it being done in rmenu_iterate
This commit is contained in:
twinaphex 2012-12-15 17:46:57 +01:00
parent 1725bfbebc
commit 4076dda011
2 changed files with 14 additions and 21 deletions

View File

@ -1149,7 +1149,6 @@ static void ingame_menu_resize (void)
bool rmenu_iterate(void)
{
static bool preinit = true;
HRESULT hr;
xdk_d3d_video_t *device_ptr = (xdk_d3d_video_t*)driver.video_data;
if(preinit)
@ -1162,13 +1161,9 @@ bool rmenu_iterate(void)
g_extern.frame_count++;
if(g_extern.console.emulator_initialized)
rarch_render_cached_frame();
else
{
device_ptr->ctx_driver->clear();
g_extern.frame_count++;
}
device_ptr->ctx_driver->clear();
rarch_render_cached_frame();
XINPUT_STATE state;
XInputGetState(0, &state);
@ -1202,9 +1197,6 @@ bool rmenu_iterate(void)
break;
}
hr = app.Render(); /* Render XUI */
hr = XuiTimersRun(); /* Update XUI timers */
if(g_extern.console.rmenu.mode == MODE_EMULATION || g_extern.console.rmenu.mode == MODE_EXIT)
goto deinit;

View File

@ -39,6 +39,8 @@
#if defined(_XBOX1)
unsigned font_x, font_y;
#elif defined(_XBOX360)
#include "../360/frontend-xdk/menu.h"
extern CRetroArch app;
const DWORD g_MapLinearToSrgbGpuFormat[] =
{
GPUTEXTUREFORMAT_1_REVERSE,
@ -678,11 +680,6 @@ static bool xdk_d3d_frame(void *data, const void *frame,
if (d3d->should_resize)
xdk_d3d_set_viewport(false);
#ifdef _XBOX360
d3d->d3d_render_device->Clear(0, NULL, D3DCLEAR_TARGET,
0xff000000, 1.0f, 0);
#endif
d3d->d3d_render_device->SetTexture(0, d3d->lpTexture);
#ifdef HAVE_HLSL
@ -812,16 +809,20 @@ static bool xdk_d3d_frame(void *data, const void *frame,
d3d->font_ctx->render_msg_place(d3d, mem_width, mem_height + 30, 0, 0, fps_txt);
}
if (msg
#ifdef _XBOX360
&& !menu_enabled
#endif
)
if (msg)
d3d->font_ctx->render_msg_place(d3d, msg_width, msg_height, 0.0f, 0, msg);
if(!d3d->block_swap)
gfx_ctx_xdk_swap_buffers();
#ifdef _XBOX360
if(menu_enabled)
{
app.Render();
XuiTimersRun();
}
#endif
return true;
}