GRAFIKA Mam zamiar rozpoczćç cykl artykuîów o grafice i nie będzie to opis w stylu taka komenda Dpainta robi to a tamta to. Jest to artykuî dla tych, którzy co nieco znajć się na grafice i moţe im pomóc zrozumieç niektóre zjawiska. Artykuî moţe się teţ przydaç raytracerom i coderom oraz tym, którzy robić design (BTW design czyta się dizajn a nie dezajn, koîki) do dem lub czegokolwiek. A więc jedziemy. 1. OKO. Ludzkie oko to ciekawa zabawka. Skîada się ono z tarczówki, rogówki i innych pierdóî, co nas niewiele interesuje. Interesuje nas natomiast to, ţę widzimy dlatego ţe promienie őwiatîa odbitego od danego przedmiotu wpadajć do soczeki gdzie ulegajć zaîamaniu by przecićç się nawzajem na dnie oka które jest swego rodzaju ekranem. Dzięki tej soczewce mamy perspektywę. Więc cieszmy się ţe nasze oko to nie pîaska őwiatîoczuîa pîytka, bo byőmy mieli przejebane. I niech wam się nie wydaje, ţe byîo by tak samo jak teraz tylko dom koîo nas wygîćdaîby tak samo jak identyczny w innym mieőcie, bo widzielibyőmy tylko to co by byîo bezpoőrednio przed naszym pîaskim okiem i to w postaci jednokolorowej plamy. Jak juţ powiedziaîem, ţeby widzieç ostro promienie równolegîe muszć po przejőciu przez soczewkę przecićç się dokîadnie w jednym punkcie ekranu, czyli dna oka. I tu mi ktoő zaraz wyjedzie z "co on za gîupoty pociska, jagby tak byîo to wszystko co byőmy widzieli to jeden biaîy punkt na tle czerni". A wîaőnie, ţe dupa jasiu bo űrenica jest na tyle maîa (dla uîatwienia rozwaţań przyjmijmy ţe nieskończenie maîa), ţe jeőli trafiajć na nić promienie równolegîe to tylko wtedy jeőli pochodzć z jednego punktu (lub z punktu leţćcego na lini tamtenpunkt-űrenica). Gdy jest inaczej sć do siebie nachylone pod pewnym kćtem i przecinajć dno oka w róţnych punktach. Niestety natura trochę zjebaîa sprawę i idealnie ostro to mamy tylko w centrum widzenia. (Patrzćc na sîowo "widzenia" spróbuj przeczytaç to które jest pięç linijek niţej, trudne co?). Nie jestem pewien ale to prawdopodobnie dlatego, ţe dno oka jest czaszć i tylko w jego őrodku i bliskich okolicach promienie równolegîe przecinajć się idealnie na jego powierzchni, a im dalej od centrum tym gorzej. To nie koniec niespodzianek. Na dnie oka jest taki punkt w którym jest wyjőcie nerwów oka. Jeőli jakiő fragment oglćdanego przez nas obrazu padnie na ten punkt to go wcale nie zobaczymy. I nie będziemy mieli w obrazie ţadnej dziury, bo mózg przy analizie obrazu ignoruje ten obszar. Caîe dno oka wypeînione jest receptorami koloru albo őwiatîa. I nie jest to tak jak na Amidze ţe jak receptory koloru na danym terenie dna oka wykryjć max czerwony, zielony i niebieski to mamy biaîy. Receptory koloru sć trzech typów i kaţdy z tych typów reaguje na danć barwę podstawowć. W ten sposób, ţe iloőç tej barwy w danej wićzce őwiatîa, która trafiîa na receptor przekroczy wartoő granicznć i receptor pod jego wpîywem wytworzy impuls elektryczny który sobie pobiegnie nerwami do mózgu, albo nie i receptor ma absolutnie w dupie (o ile jć ma) jakie byîo natęţenie tej barwy. (jest to urzćdzonko jednobitowe). Co innego receptor natęţenia őwiatîa. Wîaőnie dlatego w nocy, gdy jest ciemno to co widzimy widzimy czarno biaîo, za maîe jest natęţenie barw by receptor wysîaî sygnaî a wystarczy őwiatîa by receptor od őwiatîa wysîaî sîabiutki sygnaî. Mózg więc zostaje zalany informacjami o barwach i natęţeniu őwiatîa i ma sobie z tego zrobiç obraz i to w realtajmie. I tu BTW mózgu ciekawostka. Mózg czîowieka otrzymuje tyle informacji do przetworzenia, ţe nasze poczucie rzeczywistoőci jest cztery razy wolniejsze od poczucia rzeczywistoőci karalucha. Innymi sîowy nam ramka cyka czery razy rzadziej. Teraz juţ wiecie dlaczego prymitywniejsze komputery (patrz IBM) sć szybsze od bardziej zaawansowanych (patrz Amiga). Dlatego tak trudno zîapaç karalucha. Dla niego nasze szybkie ruchy to jak film w zwolnionym tempie. Wracajćc jeszcze do receptorów w oku to majć one jeszcze jednć ciekawć cechę, a mianowicie nie sć rozîoţone równomiernie, to znaczy ţe receptorów koloru jest więcej w centrum dna oka, a receptorów őwiatîa więcej po brzegach. Jeőli jest ciemna bezchmurna noc to zrób sobie maîy eksperyment. Wyjdű na dwór, znajdű jakćő ledwie widocznć gwiazdę i popatrz na nić kćtem oka. Jaőniejsza? No wîaőnie. To by byîo na razie wszystko co mi się nasuwa w zwićzku z okiem, jak sobie jeszcze coő przypomne to dopiszę gdzieő dalej w tekőcie. 2. ŐWIATÎO. Őwiatîo to fale elektromagnetyczne o jakimőtam zakresie częstotliwoőci co nam nie jest specjalnie potrzebne więc nie będę tego szukaî po encyklopediach. (Tak przy okazji to wszystko co tu piszę piszę z gîowy i jest to moja wiedza a nie jakieő kity z ksićţek więc sorry gdyby byîy jakieő nieőcisîoőci ale istotę większoőci zjawisk rozumiem dobrze (jak sćdzę) więc nie powinno byç ţadnych) Przy czym w zaleţnoőci od częstotliwoőci mamy kolor őwiatîa od fioletu po czerwień. A őwiatîo biaîe to mieszanina wszystkich częstotliwoőci naraz. Őwiatîo w zaleţnoőci od częstotliwoőci fali rozprasza się îatwiej lub trudniej, czego najlepszym dowodem jest kolor nieba. Otóţ niebo jest niebieskie bo ten wîaőnie kolor po fiolecie rozprasza się najlepiej. Po fiolecie, czyli najîatwiej rozprasza się fiolet. I wîaőnie gdy lecimy samolotem bardzo wysoko to niebo nabiera ciemnego odcienia granatu przechodzćcego w fiolet. Dlaczego? Jeőli őwiatîo biaîe musi przebyç w powietrzu krótkć drogę to rozprasza się tylko fiolet, jeőli dîuţszć to następny w kolejce jest niebieski. Niestety nigdzie na Ziemi nie ma tak grubej warstwy atmosfery by mogîy rozproszyç się i inne kolory więc generalnie niebo jest niebieskie. A co by byîo jakby powietrze nie rozpraszaîo őwiatîa? I co to w ogóle jest őwiatîo rozproszone? Otóţ wyobraű sobie laser w próţni. Nie jesteő go wstanie zobaczyç chyba ţe wićzka lasera trafi idealnie w twojć űrenice, a wtedy to laser będzie ostatnić rzeczć którć byő zobaczyî, no chyba ţe to byîby sîaby laser. Po prostu nie widziaîbyő smugi. Jednakţe gdy pobawisz się na przykîad latarkć, to widzisz jej smugę choç promienie z niej nie sć wycelowane w twoje oczy. Jest tak dlatego ţe powietrze rozpraszajć po trochu snop őwiatîa a promienie őwiatîa rozproszonego biegnć we wszystkich kierunkach, czyli takţe trafiajć do twoich oczu co widzisz jako őwiecenie punktu w którym őwiatîo się rozproszyîo. I dlatego widzisz snop őwiatîć którym nie őwiecisz sobie po oczach. Gdyby powietrze nie rozpraszaîo őwiatîć to niebo byîo by czarne a sîońce biaîe. Dlaczego wiec sîońce jest ţóîte? Otóţ őwiatîo które się rozproszy nie biegnie dalej jako skupiona wićzka. Najsilniejsze latarki na ziemi cićgnć do kilometra po czym snop rozprasza się na amen (Jest to pewne uproszczenie, ale na nasze potrzeby w sam raz). Gdy tym czasem w próţni jak dobrze wycelujesz tć latarkć to őwiatîo z okolic Ziemi doleci do Proximy, o ile w między czasię nie natrafi na jakieő inne skupiska materii. Czyli jeőli őwiatîo biaîe leci przez powietrze to jego niebieska skîadowa się rozprasza a tym samym nie leci juţ dalej z resztć barw i nie dolatuje do naszych oczu jako częőç skîadowa őwiatîa biaîego. A teraz wîćcz sobie DPainta, przejdű do palety i ustaw jakiő kolor na RGB 15 15 15 ($0fff) i odejmij skîadowć niebieskć a otrzymasz $0ff0 i sprawdű jaki to kolor. Na 100% ţóîty. Őwiatîo rozprasza się po odbiciu od kaţdej materii z wyjćtkiem idealnego lustra. Ale na kaţdym materiale inaczej. Weűmy sobie jakiegoő raytracera, na przykîad Imagine i zróbmy kulę ze szlifowanego metalu i z kamienia. Szlifowany metal to prawie lustro, więc jeőli weűmiemy sobie jeden punkt őwiatîć i ustawimy go tak by promienie z niego padajćce (oczywiőcie nie wszystkie) po odbiciu od kuli wpadîy do obiektywu naszej kamery to na caîej czarnej kuli zauwaţymy ostro zarysowany odblask. Co innego na kamieniu. Oőwietlona częőç kuli będzie îagodnie przechodziç od biaîego do czerni, bo kamień ma duţo większy wspóîczynnik rozproszenia. Wracajćc jeszcze do őwiatîa rozproszonego przez czćsteczki powietrza. Jest to w duţym uproszczeniu tak, ţe kaţda czćsteczka odbija fotony nieregularnie w róţnych kierunkach, biorćc pod uwagę prędkoőç őwiatîa w uproszczeniu wyglćda to tak, ţe kaţda czćsteczka rozprasza őwiatîo we wszystki kierunkach, więc jeden z promieni őwiatîa od niej odbity na pewno trafi do naszego oka. Do naszego oka trafiajć więc promienie ze wszystkich czćstek powietrza i dlatego niebo dla nas őwieci jednostajnym bîękitem. Ostatnio zauwaţyîem, ţe bardzo modne jest upiększanie logosów czy teţ obrazków przez dodanie efektownego odblasku. Nie jest to wcale proste i większoőç ludzi robićcych to ręcznie robi to űle. Ja nie jestem wyjćtkiem i logo Taboo jakie zrobiîem miaîo nieprawidîowo wykonany odblask. Teraz juţ wiem na czym to polega i podzielę się z wami tć wiedzć. Otóţ jeőli robimy zdjęcie profesjonalnym aparatem, to jest takim który ma w obiektywie troche soczewek, to gdy zrobimy zdjęcie pod sîońce, to znaczy gdy na obiektyw padajć promienie bezpoőrednio ze sîońca a nie promienie odbite, to uzyskamy efektowny odblask z rozjaőnieniami w ksztaîcie okręgów biegnćcych po prostej. Istota tego zjawiska polega na tym, ţe jeőli promienie sîońca, lub innego mocnego űródîć őwiatîa padajć na szklane soczewki to częőciowo się na nim rozpraszajć czego efektem sć jasne plamy őwiatîa na wszystkich soczewkach obiektywu, które widzimy potem na zdjęciu. Jednak ţeby tak efektowne zjawisko wykonaç ręcznie trzeba coő wiedzieç. Mianowicie okręgi te (lub inne figury w zaleţnoőci od ksztaîtu przesîony, mogć to byç na przykîad szeőciokćty foremne) leţć na lini którć wyznacza űródîo őwiatîa i őrodek obiektywu. Inaczej mówićc gdy będziemy coő takiego robiç na Amidze, to musimy narysowaç sobie najpierw űródîo őwiatîa, potem prowadzimy linię od tego űródîa őwiatîć przez őrodek ekranu (160,128 w LoRes'ie) i na tej lini rysujemy koîa troche jaőniejsze od tîa (najlepiej opcjć shade z DP) których őrodki będć leţeç na tej lini a koîa te będć większe im dalej od ű. őwiatîa sˇę znajdujć. Proste? Dodatkowo moţna upiększyç taki rozbîysk rysujćc tzw. halo. Halo to zjawisko jakie występuje gdy między űródîem őwiatîa a nami jest materiaî, który dobrze rozprasza őwiatîo (na przykîad mgîa) a jest to po prostu taki pierőcień őwiatîa o őrodku w űródle őwiatîa. Jeőli nie wiesz jak to wyglćda, to popatrz we mgle na őwiatîo latarni, lub na księţyc lekko przysîonięty wysokimi chmurami (takć opalizujćcć mgieîkć). Jak juţ jestem przy őwietle to napiszę o jeszcze jednym ciekawym zjawisku, jest to wîaőciwie cecha mózgu a nie oka, a polega na tym ţe identycznej wielkoőci przedmiot w kolorze biaîym będzie wyglćdaî na większy od czarnego. Co nam to daje? Bardzo duţo. Chcesz na przykîad narysowaç bardzo cienkć srebrnć igîę w LoRes'ie. Bierzesz biaîy kolor bo to przecieţ őwiecćce srebro i rysujesz i co? Jest cienka? No cóţ, mam AGĘ, to narysuję to w SuperHiRes'ie-Interlace. A po co. Jak przed chwilć powiedziaîem wystarczy wykorzystaç ten trick z biaîym i czarnym. Rysujesz igîę na czarnym tle, więc narysuj odcinek dîugoőci paru pixli w biaîym kolorze a potem dodawaj na końcu po jesdnym pixlu w coraz to ciemniejszych odcieniach szaroőci. Efekt? Przecieţ rysowaîeő cićgle kwadraty tej samej wielkoőci a igîa jest wyraűnie ostra na końcu, cieńka jak w s-hiresie. Ale nie zawsze bardziej czarny oznacza optycznie cieńszy. Jeőli masz zamiar rysowaç coő na biaîym tle to zrób dokîadnie na odwrót od czarnego do biaîego. Efekt jest dokîadnie taki sam. Chodzi po prostu o to, ţe im dany pixel będzie bardziej kontrastowaî z otoczeniem tym będzie się wydawaî większy i na odwrót. I na tym polega pozorne zwiększanie rozdzielczoőci zwane przez niektórych smoothowaniem. 3. BARWA. Najpierw trzeba by wyjaőniç co to jest model barw. Model barw to sć trzy kolory podstawowe z których mieszania moţemy uzyskćç kaţdy kolor. I tu jest kilka rodzajów modeli w zaleţnoőci od barw podstawowych i metod ich mieszania. A więc mamy model addytywny (dodawalny?) dlatego ţe przez dodawanie kolorów uzyskujemy inne kolory (patrz Amiga DPaint paleta i suwaki RGB $0f00 or $00ff=$0fff) Inny model to model subtraktywny (odejmowalny?) to model uţywany z farbkami i filtrami őwiatîa. Tu podstawowymi sć kolory z których jeden jest taki sam jak w addytywnym a dwa pozostaîe sć sumami (addytywnymi) pozostaîych dwóch z tym pierwszym. Na przykîad czerwony ($0f00), ţóîty ($0ff0) i niebieski, ale jasny niebieski ($00ff). A teraz przez odejmowanie (skîadanie filtrów) uzyskamy z j.niebieskiego i ţóîtego zielony. Najpierw őwiatîo biegnie przez filtr j.niebieski i otrzymujemy ze őwiatîa biaîego tylko őwiatîo j.niebieski (przez f. $00ff przechodzi tylko őwiatîo $00ff (îacznie ze wszystkimi skîadowymi $000f, $00f0, $0039, $00a1 itp.) a teraz to őwiatîo przechodzi przez filtr ţóîty i otrzymujemy kolor zielony ( bo przez filtr ţóîty $0ff0 przechodzć tylko skîadowe őwiatîa R i G ale R juţ nie ma bo nie przeszîo przez filtr niebieski $00ff i dlatego przechodzć tylko $0010, $0020 ... $00f0 czyli odcienie zieleni. przefiltrujmy to őwiatîo zielone przez filtr czerwony ($0f00) i co mamy? Nic. Czarno. Nic nie przeszîo przez filtr. A teraz weűmy sobie farbki i wymieszajmy wszystkie na raz. I jaki mamy kolor? Bury. No i coő tu chyba nie gra. Miaî byç czarny a jest bury. Albo popatrzmy na niebo przez filtr ţóîty. Powinno byç zielone ($00ff and $0ff0=$00f0 filtrowo a nie arytmetycznie) a co jest tak samo tylko troche mniej niebieskie. I co pewnie wam kitu nawciskaîem? A wcale nie bo tak jest tylko jeszcze nikt nie zrobiî idealnego filtra który by zastrzymywaî 100% na przykîad czerwieni. Dlatego farbki byîy ciemno bure a nie idealnie czarne. Wracajćc jeszcze do barw to dzielimy je na ciepîe i zimne. Barwy ciepîe to pomarańczowy, ciepîy czerwony (z dodatkiem ţóîtego), ţóîty, ciepîy zielony (z dodatkiem ţóîtego), a zimne to niebieski, ciemna zieleń, fiolet. Jest to o tyle waţne, ţe kolory ciepîe przybliţajć dany obiekt a zimne optycznie oddalajć. Dlatego zaleca się malowaç postacie pierwszoplanowe kolorami ciepîymi a tîa kolorami zimnymi. Oczywiőcie to nie jest reguîa i czasem moţna z niej spokojnie zrezygnowaç. Jak zauwaţyliőcie wprowadziîem tu trochę logiki. Dla tych którzy nie wiedzć: Wartoőç logiczna zdania 1 dla zdania prawdziwego (true) i 0 dla faîszywego (false) Zaprzeczenie zdań ~P (not) P ~P not(0)=1 0 1 not(1)=0 1 0 Koniunkcja zdań P^Q (and) P Q P^Q 0 and 0=1 0 0 1 0 and 1=0 0 1 0 1 and 0=0 1 0 0 1 and 1=1 1 1 1 Alternatywa zdań PvQ (or) P Q PvQ 0 or 0=0 0 0 0 0 or 1=1 0 1 1 1 or 0=1 1 0 1 1 or 1=1 1 1 1 Alternatywa wykluczajćca v P_Q (eor - exlusive or) 0 eor 0=0 Zauwaţmy, ţe eor czegoő przez 1 0 eor 1=1 to jest to samo co not to coő. 1 eor 0=1 1 eor 1=0 Po tym lekkim przynudzaniu powróçmy do tematu. 4. CIEŃ. Cień jest rodzajem őwiatîa, a w zasadzie braku őwiatîa i podlega tym samym zasadom co ono. To znaczy, ţe jeőli mamy na przykîad jeden obiekt i jedno űródîo őwiatîa np. biaîego to mamy jeden cień: czarny (szary w przypadku őwiecenia tîa np. powietrza rozpraszajćcego őwiatîo), ale gdy dwa űródîa őwiatîa np: czerwone i zielone i dwa obiekty to ich cienie padajćc na biaîy ekran będć odpowiednio: czerwony ze őwiatîa zielonego i zielony z czerwonego a częőç wspólna cieni będzie czarna(szara), przy czym oczywiőcie obydwa obiekty majć dwa cienie. Oczywiőcie kolor cienia zalęţy teţ od koloru ekranu na który pada i cień niebieski na czerwonym ekranie będzie fioletowy. Proste? I to by byîo na razie wszystko. Jak by ktoő chciaî się jeszcze czegoő na te tematy dowiedzieç to piszcie na mój adres. Tylko nie wysyîajcie dysków bo nie odeőlę zpowrotem. WAYNE