video/wiiu: Add support for DRC/TV only windows (#1)

This commit is contained in:
Ash Logan 2019-03-07 21:59:49 +11:00
parent f814e40fcf
commit da762c2f05
2 changed files with 19 additions and 9 deletions

View File

@ -101,19 +101,22 @@ static void render_scene(SDL_Renderer * renderer) {
void WIIU_SDL_RenderPresent(SDL_Renderer * renderer)
{
WIIU_RenderData *data = (WIIU_RenderData *) renderer->driverdata;
//SDL_Window *window = renderer->window;
//GX2Flush();
Uint32 flags = SDL_GetWindowFlags(renderer->window);
WHBGfxBeginRender();
WHBGfxBeginRenderTV();
render_scene(renderer);
WHBGfxFinishRenderTV();
/* Only render to TV if the window is *not* drc-only */
if (!(flags & SDL_WINDOW_WIIU_GAMEPAD_ONLY)) {
WHBGfxBeginRenderTV();
render_scene(renderer);
WHBGfxFinishRenderTV();
}
WHBGfxBeginRenderDRC();
render_scene(renderer);
WHBGfxFinishRenderDRC();
if (!(flags & SDL_WINDOW_WIIU_TV_ONLY)) {
WHBGfxBeginRenderDRC();
render_scene(renderer);
WHBGfxFinishRenderDRC();
}
WHBGfxFinishRender();

View File

@ -35,4 +35,11 @@ typedef struct
GX2Texture texture;
} WIIU_WindowData;
typedef struct
{
SDL_bool tv_window_exists;
SDL_bool drc_window_exists;
SDL_bool mirrored_window_exists;
} WIIU_VideoDeviceData;
#endif //SDL_wiiuvideo_h