diff src/video/directfb/SDL_DirectFB_render.c @ 5145:c8e049de174c

Making the API simpler, the renderer present semantics are always having a backbuffer and then discarding it. This is best for hardware accelerated rendering.
author Sam Lantinga <slouken@libsdl.org>
date Tue, 01 Feb 2011 12:19:46 -0800
parents 31e7f523ab3d
children 5429daf5e3f9
line wrap: on
line diff
--- a/src/video/directfb/SDL_DirectFB_render.c	Mon Jan 31 23:37:30 2011 -0800
+++ b/src/video/directfb/SDL_DirectFB_render.c	Tue Feb 01 12:19:46 2011 -0800
@@ -87,10 +87,7 @@
     DirectFB_CreateRenderer,
     {
      "directfb",
-     (SDL_RENDERER_SINGLEBUFFER | SDL_RENDERER_PRESENTCOPY |
-      SDL_RENDERER_PRESENTFLIP2 | SDL_RENDERER_PRESENTFLIP3 |
-      SDL_RENDERER_PRESENTVSYNC | SDL_RENDERER_PRESENTDISCARD |
-      SDL_RENDERER_ACCELERATED),
+     (SDL_RENDERER_PRESENTVSYNC | SDL_RENDERER_ACCELERATED),
      14,
      {
       SDL_PIXELFORMAT_INDEX4LSB,
@@ -256,7 +253,6 @@
     SDL_VideoDisplay *display = window->display;
     SDL_Renderer *renderer = NULL;
     DirectFB_RenderData *data = NULL;
-    DFBSurfaceCapabilities scaps;
     char *p;
 
     SDL_DFB_CALLOC(renderer, 1, sizeof(*renderer));
@@ -288,8 +284,7 @@
     renderer->window = window;      /* SDL window */
     renderer->driverdata = data;
 
-    renderer->info.flags =
-        SDL_RENDERER_ACCELERATED | SDL_RENDERER_PRESENTDISCARD;
+    renderer->info.flags = SDL_RENDERER_ACCELERATED;
 
     data->window = window;
 
@@ -301,15 +296,6 @@
     } else
         data->flipflags |= DSFLIP_ONSYNC;
 
-    SDL_DFB_CHECKERR(windata->surface->
-                     GetCapabilities(windata->surface, &scaps));
-    if (scaps & DSCAPS_DOUBLE)
-        renderer->info.flags |= SDL_RENDERER_PRESENTFLIP2;
-    else if (scaps & DSCAPS_TRIPLE)
-        renderer->info.flags |= SDL_RENDERER_PRESENTFLIP3;
-    else
-        renderer->info.flags |= SDL_RENDERER_SINGLEBUFFER;
-
     data->isyuvdirect = 0;      /* default is off! */
     p = SDL_getenv(DFBENV_USE_YUV_DIRECT);
     if (p)