Kanał alfa

Z Wikipedii, wolnej encyklopedii
Skocz do: nawigacja, szukaj
Przykład ilustrujący kanał alfa powodujący przezroczystość kolorów

Kanał alfa (ang. alpha channel) w grafice komputerowej jest dodatkowym kanałem, który definiuje przezroczystość wyświetlanych informacji graficznych. Jest on zapisywany w pamięci wykorzystywanej przez kartę graficzną razem z trzema wartościami barw składowych RGB (ang. Red, Green, Blue – czerwony, zielony i niebieski). Wartość zerowa tego kanału oznacza pełną widoczność tła, zaś maksymalna – całkowitą nieprzezroczystość.

W systemach korzystających z 32-bitowych trybów graficznych kanał alfa ma postać liczby 8-bitowej, trzy pozostałe kanały, również 8-bitowe, przeznaczone są na informacje o poziomie nasycenia kolorów składowych RGB. Utworzony w ten sposób format RGBA (RGB+Alfa) pozwala precyzyjnie określić stopień przezroczystości oraz udział poszczególnych kolorów składowych w wyświetlanym obrazie.

Jeśli przykładowo obraz w formacie JPG zostanie otwarty w programie do obróbki grafiki (z obsługą kanałów), będzie on zawierał jedną warstwę – tło. Warstwa ta nie będzie miała kanału alfa, jednak będzie można go w takim programie dodać. Należy jednak pamiętać że nie wszystkie formaty plików graficznych są w stanie przechowywać informacje o kanale alfa. Przykładem popularnego formatu graficznego obsługującego przezroczystość jest format PNG. Po dodaniu kanału alfa można usunąć warstwę tła lub np. stworzyć przejście tonalne z określonego koloru do przezroczystości i zapisać tak utworzoną grafikę w odpowiednim formacie graficznym.

W różnych programach do grafiki 2D czy 3D kanał alfa może być odmiennie definiowany. Kanał ten może przykładowo służyć do przechowywania masek. Każda maska jest wtedy zapisana do oddzielnego kanału alfa i może zostać użyta powtórnie, bez ponownego jej tworzenia. Kanał alfa pozwala także przechowywać informację o odcieniach szarości – kolor biały definiuje wówczas całkowitą przezroczystość, czarny – nieprzezroczystość, natomiast pośrednie odcienie szarości określają stopnie częściowej przezroczystości. W innym podejściu kanał alfa pozwala określać stopień przezroczystości tekstury, który można zdefiniować w sposób następujący: wartość maksymalna 255 (przy kanale 8-bitowym) oznacza „zupełnie nieprzezroczysty”, zaś wartość minimalna (zero) oznacza „zupełnie przezroczysty”. Nałożenie tekstury z kanałem alfa równym zero praktycznie nic nie zmienia – tekstura ta nie będzie w ogóle widoczna. Jeśli wartość kanału alfa jest równa np. 125, to tekstura jest półprzezroczysta – obiekt, na który zostanie nałożona będzie „prześwitujący” i będzie można zobaczyć zarówno sam obiekt, jak i obiekty znajdujące się za nim.

Zobacz też[edytuj | edytuj kod]