Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

[SFML] Dodanie przeźroczystości do obrazka

Ostatnio zmodyfikowano 2012-10-26 21:47
Autor Wiadomość
BasTekpew
Temat założony przez niniejszego użytkownika
[SFML] Dodanie przeźroczystości do obrazka
» 2012-10-26 20:52:35
Witam,

Chodzi o to, że mam problem z ustawieniem maski przeźroczystości dla obiektu klasy sf::Image. Mam obrazek na którym jest żółty kwadrat i w tle jest kolor 255,0,255 (taki różowy) i w kodzie po wczytaniu obrazka do zmiennej Image robię takie coś takiego:

obrazek.CreateMaskFromColor(sf::Color(255,0,255),0);


Po wczytaniu potem obrazka do sf::sprite przeźroczystość jest ale mój kwadrat ma jeszcze taką różową obwódkę coś takiego :
 Dodam jeszcze, że jak zapiszę tą grafikę po usunięciu maski do pliku na dysku i otworzę w programie graficznym  to nie ma tej obwódki, a jak znowu wczytam z tego zapisanego pliku to obwódka jest.
P-67576
Gabes
» 2012-10-26 21:13:48
Kolor (255,0,255) powinien być fioletowy, raczej u ciebie nie jest.
P-67578
DejaVu
» 2012-10-26 21:27:45
Zapisz obraz jako plik *.png z przezroczystością i powinno wszystko działać jak należy.
P-67583
BasTekpew
Temat założony przez niniejszego użytkownika
» 2012-10-26 21:47:38
Chyba znalazłem źródło problemu, otóż po powiększeniu grafiki pojawiają się rozmyte krawędzie i pewnie dlatego jest jakaś różnica w kolorze, zauważyłem, że np. IrfanView robi tak samo po powiększeniu widać wyraźnie na grafice ciemniejszy paseczek, a w przypadku painta czy gimpa tego nie ma. I tutaj pytanie czy da się w sfml'u jakoś inaczej wczytać obrazek tak żeby te rozmycia nie występowały?

edit::
udało mi się rozwiązać problem, po prostu przed wczytaniem pliku do sf::Image dałem

obrazek.SetSmooth(false);


i obrazek został wczytany bez rozmycia.
P-67588
« 1 »
  Strona 1 z 1