Antyaliasing grafiki na przykładzie medalu
Witam Cię szanowny czytelniku. Napisałem ten poradnik dla tych, którzy myślą, że najlepszym "antialiasingiem" jest efekt "blur" oraz dla tych co zaczynają przygodę z pixelartem lub też dla tych co nie mają nic lepszego do roboty i się dokształcają. Zaczynajmy!
Najpierw stwórzmy jakiś obrazek. Nie bójcie się nie będzie on skomplikowany. Dajmy na to medal, najzwyklejszy w świecie złoty medal. Zaczynamy od lineartu. Być może większośc z was zrobiłaby to narzędziem kółko, ale dziś spróbujemy inaczej. Nauczę was sposób na robienie łuków, z których skonstruujemy koło. Wierzcie mi przyda wam się to.
A więc tworzymy obrazek o wymiarach 15x15 na przykład, i wyznaczamy środek. Możecie liczyć piksele lub też zrobić linię poziomą (wskażę ona nam wymiar obrazka) podzielić wymiar na pół i mamy środek obrazka względem osi X.
UWAGA: Wszystkie obrazki są powiększone x4, później x8!
Teraz robimy to samo tylko, że linia musi być pionowa.
Poprawiamy linię poziomą, aby była na środku obrazka względem osi Y.
Mamy środek. Usuwamy część linii, aby zostało nam coś takiego:
Zaczynamy robić łuk (dla ułatwienia będzie on zaznaczony na czarno):
Krok 1. Zaczynamy od lewego końca rysując kreskę na 1/6 całego obrazka, czyli 1/3 połowy. U nas będzie to 3 piksele (razem ze środkiem zaokrąglając w górę). To samo robimy z górnego końca (oczywiście muszą się one kierować we wspólną stronę).
Krok 2. Teraz kolejne linie będą miały długość połowy poprzedniej linii (także zaokrąglone w górę), czyli 3 po podzieleniu i zaokrągleniu daje nam 2 piksele. Rysujemy.
Krok 3. Teraz będą nam wychodzić same pojedyncze piksele więc rysujemy je tak, aby złączyć nasze elementy (u nas to będzie tylko jeden piksel).
Krok 4. Kopiujemy łuk i obracamy, a następnie łączymy tak, żeby powstało koło (pamiętajmy, że środek jest częścią wspólną łuków).
Mamy już koło. Możecie teraz zobaczyć, że narzędziem ‘koło’ zrobilibyście identyczne ;D . Jednakże teraz wiecie jak robić łuk bez rysowania koła i babrania się w gumowanie. Zaczynamy malować.
Wypełniamy koło jakimś złotym kolorkiem. Kontury zamalowujemy na jakiś ciemno-złoty.
Teraz robimy wewnątrz robimy wgłębienie o kształcie koła. Tu już jeśli chcecie możecie użyć narzędzia "koło" (jeżeli używasz painta radzę zrobić je w trybie obramowania, a potem wypełnić), ale kto chce może spróbować wyżej wymienionego sposobu. Cieniujemy (opiszę krokami):
Krok 1. Ustalmy, że światło pada z górnego lewego rogu. Cieniujemy wgłębienie, a ponieważ to jest wgłębienie to górna, lewa część będzie nieoświetlona, a dolna prawa tak. Dobieramy odpowiednie kolory. Cień powinien być "pomarańczowniejszy" ( w tym wypadku), a oświetlenie mniej nasycone (bledsze).
Krok 2. Cieniujemy teraz pozostałą część. Nasz medal nie będzie idealnie płaski tylko leciutko wygięty, a więc padać na niego będzie światło. Dobieramy jaśniejszy kolor tak jak poprzednio i zamalowujemy 3/4 medalu tak, aby dolna, prawa część była lekko ciemniejsza.
Krok 3. Dobieramy kolor jeszcze jaśniejszy i malujemy nim lewą, górną część. Zmieniamy kolor tła na czarny, aby łatwiej nam było dalej pracować z tymi jasnymi kolorami.
Krok 4. Czas na "łagodzenie" konturów, czyli tam gdzie pada więcej światła, kontury są jaśniejsze. Dzięki temu nasz medal będzie jeszcze ładniejszy.
Nasz medal gotowy, ale jak widzicie jest trochę kanciasty przez to, że piksele są kwadratowe. Nadchodzi pora na oczekiwany z pewnością antialiasing. Teraz mamy dwie opcje robimy AA z pomocą kanału alpha (przeźroczystość) lub bez. Jeżeli macie tylko painta, to niestety musicie sobie radzić bez. Na czarnym tle AA robi się trudniej szczególnie bez przeźroczystości, ale żółty jest słabo widoczny na białym tle, więc tutaj przewagę ma czarne tło. Robi się to tak:
Krok 1. Dobieramy ciemny złoty i stawiamy piksele przy najdłuższych liniach prostych (chodzi oczywiście o zewnętrzne linie).
Krok 2. Dobieramy jeszcze ciemniejszy i ponownie stawiamy go obok poprzednich pikseli, a także w pozostałych "wolnych miejscach"
Krok 3. Robimy jeszcze ciemniejszy i stawiamy go (jakby to wam wytłumaczyć hmm…) na miejscach o współrzędnych (pierwszy piksel to (0,0)): (1,1), (13,1), (1,13) i (13,13). Myślę, że zrozumiecie o co mi chodzi.
Krok 4. Balansujemy kolory tak aby nie były zbyt ciemne, ani tez zbyt jasne. Możemy teraz porównać medale:
Widzicie różnicę? Jakąś na pewno, lecz to tylko jeden rodzaj antyaliasingu. Zapoznam was teraz z AA linii (już bez tłumaczenia, za to pokażę kolejne "etapy" tworzenia AA)
Dziękuję za uwagę mam nadzieję, że spodobał się wam ten artykuł, oraz że nauczyliście się czegoś przydatnego.