Ten artykuł został stworzony dla starszych wersji GameMakera i może nie być aktualny.

Antyaliasing grafiki na przykładzie medalu

Poniedziałek, 29 Grudnia 2008, 14:39
Czas czytania 5 minut, 9 sekund
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ą.
ANTIALIASING 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.
Grafika: upload/gm/antyaliasing_tut2.png
Poprawiamy linię poziomą, aby była na środku obrazka względem osi Y.
Grafika: upload/gm/antyaliasing_tut3.png
Mamy środek. Usuwamy część linii, aby zostało nam coś takiego:
Grafika: upload/gm/antyaliasing_tut4.png
Zaczynamy robić łuk (dla ułatwienia będzie on zaznaczony na czarno):
Grafika: upload/gm/antyaliasing_tut5.png
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ę).
Grafika: upload/gm/antyaliasing_tut6.png
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.
Grafika: upload/gm/antyaliasing_tut7.png
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).
Grafika: upload/gm/antyaliasing_tut8.png
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).
Grafika: upload/gm/antyaliasing_tut9.png

    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ć.
Grafika: upload/gm/antyaliasing_tut10.png
Wypełniamy koło jakimś złotym kolorkiem. Kontury zamalowujemy na jakiś ciemno-złoty.
Grafika: upload/gm/antyaliasing_tut11.png
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):
Grafika: upload/gm/antyaliasing_tut12.pngGrafika: upload/gm/antyaliasing_tut13.png
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).
Grafika: upload/gm/antyaliasing_tut14.png
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.
Grafika: upload/gm/antyaliasing_tut15.png
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.
Grafika: upload/gm/antyaliasing_tut16.png
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.
Grafika: upload/gm/antyaliasing_tut17.png

    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:
Grafika: upload/gm/antyaliasing_tut18.png
Krok 1. Dobieramy ciemny złoty i stawiamy piksele przy najdłuższych liniach prostych (chodzi oczywiście o zewnętrzne linie).
Grafika: upload/gm/antyaliasing_tut19.png
Krok 2. Dobieramy jeszcze ciemniejszy i ponownie stawiamy go obok poprzednich pikseli, a także w pozostałych "wolnych miejscach"
Grafika: upload/gm/antyaliasing_tut20.png
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.
Grafika: upload/gm/antyaliasing_tut21.png
Krok 4. Balansujemy kolory tak aby nie były zbyt ciemne, ani tez zbyt jasne. Możemy teraz porównać medale:
Grafika: upload/gm/antyaliasing_tut15.pngGrafika: upload/gm/antyaliasing_tut22.png
Grafika: upload/gm/antyaliasing_tut17.pngGrafika: upload/gm/antyaliasing_tut23.png
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)
Grafika: upload/gm/antyaliasing_tut24.pngGrafika: upload/gm/antyaliasing_tut25.png

Dziękuję za uwagę mam nadzieję, że spodobał się wam ten artykuł, oraz że nauczyliście się czegoś przydatnego.
Komentarze (łącznie 34, wyświetlam 31 - 45):
ZeroXbot (Wto., 06 Sty. 09, 15:58)
#31

Hehe używam tego programu, ale nie w każdym przypadku uda Ci się tej funkcji wykorzystać, np. kiedy skończysz rysunek w pixelarcie nagle uważasz, że z AA wyglądałby ładniej, i co? Linii nie możesz użyć bo popsuje całą (luba część) pracę i trzeba robić ręcznie :P

Tymon (Wto., 06 Sty. 09, 16:01)
#32

Prace z automatycznym AA nie są pixelartem. =)

ZeroXbot (Wto., 06 Sty. 09, 16:08)
#33

dla laików oeaki też wygląda jak pikxelart ;)

Tymon (Wto., 06 Sty. 09, 16:25)
#34

Oekaki. Pixelart. =)

Najnowsze wersje GameMakera:

Stabilna
2024.11.0.179 • 2024.11.0.227
wydana  3 dni temu
LTS
2022.0.3.85 • 2022.0.3.99
wydana 19 dni temu
Beta
2024.1100.0.713 •
2024.1100.0.726
 0.14.0

wydana 11 dni temu
= IDE, = Runtime, = GMRT
Użytkownicy online
2 użytkowników aktywnych:
gości: 1, userów: 1
 Adriann
(~ostatnie 15 minut)
Discord
34 użytkownicy online na discordzie:
🧁Cupcake🧁, Alice, Nitro Slav, Carl-bot, lethian, jAfF, Alkapivo, TobiasM (Morgo), Kowu, LadyLush, GMRussell, OdrzuconyKrakers, fervi, r..., antek, HappyOrange, MagnusArias, yazaa, Domeen0, Dyno, szmalu, Morro, Voytec, bagno, Tidżi, Danieo, Mtax, Kandif, l..., moeglich, s..., Add92, Shockah, exigo
Shoutbox
Uzjel (20:17, 10.12.24)
Cały ruch przeniósł się na Discorda.
MagnusArias (17:43, 01.12.24)
O matko... a ja tutaj jestem od ponad 15 lat i czasami zaglądam... biernie bo biernie, ale czasem wpadnę
gnysek (11:46, 17.11.24)
Witamy, witamy!
baca (12:22, 16.11.24)
To już 25 lat.. Witam po paru latach nieobecności.
gnysek (11:05, 15.11.24)
Natomiast obecne forum istnieje od 2004, jak z iglu.cz na gmclan.org przeszliśmy i od tego czasu nie było resetów danych.
gnysek (12:35, 13.11.24)
Ogólnie GMCLAN istnieje 22 lata, ale na to trofeum nie zrobiłem (jeszcze xD)
Chell (20:41, 08.11.24)
wow, ta emotka w ogóle nie wygląda jak : O xD
Chell (20:40, 08.11.24)
tylko? :O 4tk ma 15
Borek (18:12, 07.11.24)
Właśnie dostałem powiadomienie z forum, że jestem na GMClanie 18 lat :D Ja pierdzielę...
S
Sutikku (08:43, 18.10.24)
TIL, gamemaker jest starszy ode mnie
Starsze wpisy znajdziesz w Archiwum.
Ankieta
Ile zarobiłeś do tej pory na grach stworzonych w GM?