[C++ AllegroPNG] przezroczystość pliku png
Ostatnio zmodyfikowano 2015-01-13 16:31
Gluti664 Temat założony przez niniejszego użytkownika |
[C++ AllegroPNG] przezroczystość pliku png » 2015-01-10 21:29:29 Witam Dopiero zaczynam przygodę z c++ i allegro. Kierując się kursem znajdującym się na tej stronie o Allegro 4 natknąłem się na problem związany z dodawaniem plików png. http://cpp0x.pl/kursy/Kurs-Allegro-4-x-C++/Dodatek-biblioteka-AllegroPNG/76Skopiowałem kod do kompilatora niestety efekt jest nie zadowalający. Grafika ładuje się jednak jej tło miało być przezroczyste a jest czarne. Czy jest możliwe załadowanie pliku PNG bez tła ? Proszę o pomoc. #include <allegro.h> #include <alpng.h>
int main() { allegro_init(); alpng_init(); install_keyboard(); set_color_depth( 32 ); set_gfx_mode( GFX_AUTODETECT_WINDOWED, 320, 240, 0, 0 ); set_palette( default_palette ); clear_to_color( screen, makecol( 255, 0, 255 ) ); BITMAP * png = load_png( "abc.png", 0 ); masked_blit( png, screen, 0, 0, 0, 0, png->w, png->h ); destroy_bitmap( png ); readkey(); allegro_exit(); return 0; } END_OF_MAIN();
|
|
DejaVu |
» 2015-01-11 13:53:36 Allebgro4 nie wspiera chyba kanału alfa. Należy podać, że np. kolor X ma być przezroczysty. Poza tym biblioteka Allegro 4 to najgorszy możliwy wybór na dzisiejsze czasy i tym samym dostępne rozwiązania. |
|
marianekA |
» 2015-01-13 16:31:34 To co ma być przezroczyste musi być na obrazku w kolorze różowym (#FF00FF) a przy wyświetlaniu trzeba użyć maski np: masked_blit( png, screen, 0, 0, 0, 0, png->w, png->h );
Jeśli dopiero zaczynasz to lepiej uczyć się Allegro 5 - ma dużą przewagę nad wersją 4. |
|
« 1 » |