SFML - kolor kluczowy
Ostatnio zmodyfikowano 2010-12-04 08:48
Elaine |
» 2010-12-03 15:31:29 Wiesz, że nie wywołałeś tej metody...? |
|
Handy90 Temat założony przez niniejszego użytkownika |
» 2010-12-03 23:10:39 Nie podałem bo nie wiem co w niej napisać i gdzie to wkleić. |
|
F90M |
» 2010-12-04 08:48:00 Warto by zajrzeć do dokumentacji SFLM'a, jest tam opisana metoda CreateMaskFromColor(). Używasz jej dopiero po załadowaniu obrazka z pliku, a czy użyjesz jej po stworzeniu sprite'a czy przed to już twoja decyzja. Przykładowo powinno wyglądać to tak: sf::Image Image; if( !Image.LoadFromFile( "image.png" ) ) return EXIT_FAILURE;
Image.CreateMaskFromColor( sf::Color( 255, 255, 255 ), 0 );
Pierwszy parametr to kolor który ma być przeźroczysty, drugi to alpha czyli jak bardzo ma być przeźroczysty (0 - całkowicie przeźroczysty, 255 - nieprzeźroczysty). Kolor możesz podawać także za pomocą zdefiniowanych w SFML'u stałych: Image.CreateMaskFromColor( sf::Color::White, 0 ); . Edit: Co do hurtowej zmiany koloru na alfę to możesz zrobić tak: sf::Image Image[ 20 ]; if( !Image[ 0 ].LoadFromFile( "image.png" ) ) return EXIT_FAILURE;
...
for( int i = 0; i < 20; ++i ) Image[ i ].CreateMaskFromColor( sf::Color( 255, 255, 255 ), 0 );
Aby poprawić sobie czytelność programu, możesz zrobić coś takiego #define _gracz Image[0] #define _wrog Image[1] #define _mapa Image[2] #define _objekt1 Image[3] #define _obiekt2 Image[4]
|
|
1 « 2 » |