Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <SDL/SDL.h>
- int main(int argc, char *argv[])
- {
- SDL_Surface *Ekran, *Obrazek_1, *Obrazek_2, *Obrazek_3;
- SDL_Event Komunikat;
- int Koniec=0, i;
- if(SDL_Init(SDL_INIT_VIDEO|SDL_INIT_TIMER|SDL_INIT_AUDIO))
- {
- printf("Co¶ poszło nie tak: %s\n",SDL_GetError());
- }
- else
- {
- if(!(Ekran=SDL_SetVideoMode(640,480,24,SDL_ANYFORMAT)))
- {
- printf("Co¶ poszło nie tak: %s\n",SDL_GetError());
- }
- else
- {
- SDL_WM_SetCaption("Program 18","Program 18");
- Obrazek_1=SDL_LoadBMP("do sdl.bmp");
- Obrazek_2=SDL_LoadBMP("do sdl2.bmp");
- Obrazek_3=SDL_LoadBMP("do sdl3.bmp");
- if((!Obrazek_1)||(!Obrazek_2)||(!Obrazek_3))
- {
- printf("Co¶ poszło nie tak: %s\n",SDL_GetError());
- }
- else
- {
- if((Obrazek_1->format->palette)&&(Ekran->format->palette))
- {
- SDL_SetColors(Ekran,Obrazek_1->format->palette->colors,0,Obrazek_1->format->palette->ncolors);
- }
- if((Obrazek_2->format->palette)&&(Ekran->format->palette))
- {
- SDL_SetColors(Ekran,Obrazek_2->format->palette->colors,0,Obrazek_2->format->palette->ncolors);
- }
- if((Obrazek_3->format->palette)&&(Ekran->format->palette))
- {
- SDL_SetColors(Ekran,Obrazek_3->format->palette->colors,0,Obrazek_3->format->palette->ncolors);
- }
- for(i=0;i<255;i++)
- {
- SDL_SetAlpha(Obrazek_1,SDL_SRCALPHA,i);
- SDL_FillRect(Ekran,NULL,SDL_MapRGB(Ekran->format,0,0,0));
- SDL_BlitSurface(Obrazek_1,NULL,Ekran,NULL);
- SDL_UpdateRect(Ekran,0,0,640,480);
- SDL_Delay(5);
- }
- for(i=0;i<255;i++)
- {
- SDL_SetAlpha(Obrazek_2,SDL_SRCALPHA,i);
- SDL_BlitSurface(Obrazek_1,NULL,Ekran,NULL);
- SDL_BlitSurface(Obrazek_2,NULL,Ekran,NULL);
- SDL_UpdateRect(Ekran,0,0,640,480);
- SDL_Delay(5);
- }
- for(i=0;i<255;i++)
- {
- SDL_SetAlpha(Obrazek_3,SDL_SRCALPHA,i);
- SDL_BlitSurface(Obrazek_2,NULL,Ekran,NULL);
- SDL_BlitSurface(Obrazek_3,NULL,Ekran,NULL);
- SDL_UpdateRect(Ekran,0,0,640,480);
- SDL_Delay(5);
- }
- while((!Koniec)&&(SDL_WaitEvent(&Komunikat)))
- {
- if((Komunikat.type)==(SDL_QUIT))
- {
- Koniec=1;
- }
- }
- }
- if(Obrazek_1)
- {
- SDL_FreeSurface(Obrazek_1);
- }
- if(Obrazek_2)
- {
- SDL_FreeSurface(Obrazek_2);
- }
- if(Obrazek_3)
- {
- SDL_FreeSurface(Obrazek_3);
- }
- SDL_FreeSurface(Ekran);
- }
- SDL_Quit();
- }
- return(0);
- }
Add Comment
Please, Sign In to add comment