mirror of
https://github.com/joel16/SDL2.git
synced 2025-03-03 00:55:31 +00:00
Added code to testsprite to detect tearing when flipping
--HG-- extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/trunk%40588
This commit is contained in:
parent
c52f887171
commit
cfe943448d
@ -8,6 +8,8 @@
|
|||||||
|
|
||||||
#include "SDL.h"
|
#include "SDL.h"
|
||||||
|
|
||||||
|
#define DEBUG_FLIP 1
|
||||||
|
|
||||||
#define NUM_SPRITES 100
|
#define NUM_SPRITES 100
|
||||||
#define MAX_SPEED 1
|
#define MAX_SPEED 1
|
||||||
|
|
||||||
@ -52,6 +54,10 @@ int LoadSprite(SDL_Surface *screen, char *file)
|
|||||||
|
|
||||||
void MoveSprites(SDL_Surface *screen, Uint32 background)
|
void MoveSprites(SDL_Surface *screen, Uint32 background)
|
||||||
{
|
{
|
||||||
|
#if DEBUG_FLIP
|
||||||
|
static int t = 0;
|
||||||
|
#endif
|
||||||
|
|
||||||
int i, nupdates;
|
int i, nupdates;
|
||||||
SDL_Rect area, *position, *velocity;
|
SDL_Rect area, *position, *velocity;
|
||||||
|
|
||||||
@ -82,6 +88,20 @@ void MoveSprites(SDL_Surface *screen, Uint32 background)
|
|||||||
sprite_rects[nupdates++] = area;
|
sprite_rects[nupdates++] = area;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if DEBUG_FLIP
|
||||||
|
{
|
||||||
|
Uint32 color = SDL_MapRGB (screen->format, 255, 0, 0);
|
||||||
|
SDL_Rect r;
|
||||||
|
r.x = (sin((float)t * 2 * 3.1459) + 1.0) / 2.0 * (screen->w-20);
|
||||||
|
r.y = 0;
|
||||||
|
r.w = 20;
|
||||||
|
r.h = screen->h;
|
||||||
|
|
||||||
|
SDL_FillRect (screen, &r, color);
|
||||||
|
t+=2;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
/* Update the screen! */
|
/* Update the screen! */
|
||||||
if ( (screen->flags & SDL_DOUBLEBUF) == SDL_DOUBLEBUF ) {
|
if ( (screen->flags & SDL_DOUBLEBUF) == SDL_DOUBLEBUF ) {
|
||||||
SDL_Flip(screen);
|
SDL_Flip(screen);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user