Beltar
Member
- Joined
- Feb 13, 2007
- Messages
- 214
- Age
- 35
- Location
- Stein (nähe St. Pölten(A))
- ICQ
- 232357654
- LOCATION
- Stein (nähe St. Pölten(A))
Hi
Ich hab jetzt ein Bild von meinem Char gezeichnet und lese es ein mit:
Da ich aber mit dem Char in 2 Richtungen gehen will, brauch ich das ganze 2x.
Gibt es eine Möglichkeit so ein Bild einfach horizontal gespiegelt auszugeben, oder ist es sinnvoller (schneller) es einfach 2x zu laden?
mfg
Beltar
Ich hab jetzt ein Bild von meinem Char gezeichnet und lese es ein mit:
Code:
<i>
</i>//imageBuffer[slot] = SDL_Surface
void imageLoadSdl(int slot,char *path)
{
imageBuffer[slot] = IMG_Load(path);
if(!imageBuffer[slot])
{
// image failed to load
printf("IMG_Load: %s\n", IMG_GetError());
SDL_Quit();
}
}
void imageDrawSdl(int slot,int sx,int sy,int w,int h,int tx,int ty,int alpha,int transColor)
{
SDL_Rect s_dest, t_dest;
s_dest.x = sx;
t_dest.x = tx;
s_dest.y = sy;
t_dest.y = ty;
if(w != 0)
s_dest.w = w;
else
s_dest.w = imageBuffer[slot]->w;
t_dest.w = s_dest.w;
if(h != 0)
s_dest.h = h;
else
s_dest.h = imageBuffer[slot]->h;
t_dest.h = s_dest.h;
SDL_SetAlpha(imageBuffer[slot], SDL_SRCALPHA | SDL_RLEACCEL, alpha);
if(transColor != -1)
{
setColorSdl(transColor);
SDL_SetColorKey(imageBuffer[slot],SDL_SRCCOLORKEY,SDL_MapRGB(imageBuffer[slot]->format, re, gr, bl));
}
SDL_BlitSurface(imageBuffer[slot], &s_dest, screen, &t_dest);
}
Da ich aber mit dem Char in 2 Richtungen gehen will, brauch ich das ganze 2x.
Gibt es eine Möglichkeit so ein Bild einfach horizontal gespiegelt auszugeben, oder ist es sinnvoller (schneller) es einfach 2x zu laden?
mfg
Beltar