[SDL] Problem z SDL_CreateRGBSurface()
Ostatnio zmodyfikowano 2011-06-27 16:02
programista12 Temat założony przez niniejszego użytkownika |
[SDL] Problem z SDL_CreateRGBSurface() » 2011-06-26 20:18:06 SDL_Surface * test = NULL; test = SDL_CreateRGBSurface( SDL_SWSURFACE, w, h, 32, 255, 0, 0, SDL_SRCALPHA ); SDL_SetAlpha( test, SDL_SRCALPHA, 128 );
ShowImage( x, y, test, screen );
Chodzi o to, że jak w funkcji SDL_CreateRGBSurface podam kolor inny niż R=0,G=0,B=0 to prostokąt nie pokazuje się. Jak to naprawić? |
|
DejaVu |
» 2011-06-26 21:45:34 Pewnie kanał alfa źle obsługujesz :) |
|
kamillo121 |
» 2011-06-26 23:46:22 SDL_Surface * test = NULL; test = SDL_CreateRGBSurface( SDL_SWSURFACE, w, h, 32, r, g, b, SDL_SRCALPHA ); SDL_SetAlpha( test, SDL_SRCALPHA, 128 );
Spróbuj jeszcze ustawić za r g i b wartości z powierzchni ekranowej. Chyba to były pola rmask, gmask i bmask ale głowy za to nie dam. |
|
programista12 Temat założony przez niniejszego użytkownika |
» 2011-06-27 09:16:07 W parametrach RBG podałem screen->format->Rmask itd., ale dalej nie działa. Wykomentowałem też SDL_SetAlpha(), ale nadal nie działa. Wyczytałem w internecie, że tą funkcję trzeba wywołać przed funkcją SDL_SetVideoMode(), ale to też nie pomaga. |
|
programista12 Temat założony przez niniejszego użytkownika |
» 2011-06-27 16:02:06 Problem rozwiązany. Użyłem na tworzonej powierzchni funkcji SDL_FillRect() i kolory działają. Temat zamykam. |
|
« 1 » |