LEPSZE STEREOGRAMY O tym, jak sië wykonuje stereogramy, byîa juû mowa w Magazynie AMIGA. Moûna je robiê dowolnym programem malarskim "na oko", Personal Paintem opcjâ SIPS (lub SIRDS) i wreszcie dowolnym jëzykiem programowania. Stanisîaw Wësîawski Na wstëpie warto przytoczyê za Rafaîem Piaskiem * listing programu w AMOS-ie, pozwalajâcy tworzyê stereogramy klasyczne, skîadajâce sië z obrazka monochromatycznego, zawierajâcego "gîëbokoôci", i brusha wzoru do malowania. ^-Rem Rem Patter Stereograms by Jetboy/Elysium Rem PLIK1$=Fsel$("","",""Wybierz obrazek do konwersji","8-kolorów") PLIK2$=Fsel$("","",""Wybierz wzór do rysowania","8-kolorów 64 piksele szerok.") If(PLIK1$="") or(PLIK2$="") Then End Load Iff PLIK1$,1 WIDE =Screen Width HEIGHT=Screen Height PART=64 Load Iff PLIK2$,2 SZER=Screen Width WYS=Screen Height Screen To Front 1 Screen 1 Get Palette 2 Dim BUFF(WIDE+100) For Y=0 To HEIGHT Screen 2 For FIL=0 To WIDE BUFF(FIL)=Point(FIL mod SZER,Y mod WYS Next Screen 1 X=0 While X"" Then Save Iff PLIK$,1 End ^+Zmienna PART zawiera szerokoôê brusha, uûytego do pokrywania stereogramu wzorem. Wartoôê 64, wyznaczajâca szerokoôê "pasa" w pikselach, moûe byê oczywiôcie zmieniona. To samo dotyczy oômiokolorowej palety obrazków. Kolory obrazka, bëdâcego wzorem "gîëbokoôci" (PLIK1$), naleûy uîoûyê po kolei w palecie, poczynajâc od koloru najciemniejszego, a koïczâc na najjaôniejszym. Kolory jasne bëdâ uwaûane za kolory partii wysuniëtych bliûej w kierunku obserwatora. Program tworzy zupeînie dobry stereogram, prawie identyczny ze stworzonymi za pomocâ Personal Painta. Miaîem tylko pewne kîopoty z kolorami palety wzoru do wypeîniania. Wychodziîy mi inne barwy. Moûe winna byîa temu stara wersja AMOS-a. Niemniej jednak, jak juû wspomniaîem, stereogram jest "normalny" i algorytm po przeanalizowaniu moûe byê bardzo przydatny dla ludzi usiîujâcych zrobiê coô wiëcej w tej dziedzinie. Wróciîem wiëc do Personal Painta i zaczâîem tworzyê obrazki, przypominajâce przestrzenne mapy terenu pagórkowatego, skîadajâce sië z warstw (ciëtych po poziomicach) i oglâdane z góry. Otrzymaîem "rozsuniëte" poziomice. Zaczâîem sië zastanawiaê, od czego zaleûy odlegîoôê warstwy od warstwy? Oczywiôcie od koloru. A wîaôciwie od odlegîoôci koloru od koloru w stosunku do liczby tych kolorów w palecie. Mówiâc jaôniej, im wiëcej kolorów w palecie, tym bliûej siebie sâ sâsiadujâce ze sobâ barwy. Poniewaû warstw byîo kilka, a kolorów 16 (hi-res lace), przesunâîem kolory warstw do barw nr 1-8 (przy czarnym tle nr 0). Efekt byî zdecydowanie lepszy. Warstwy "ôciâgnëîy sië", tworzâc bardziej naturalny obraz. Jasne sië staîo teû, ûe bez AGA (256 kolorów) nie jestem w stanie zrobiê tego dokîadniej. Stereogramy przedstawia sië czësto w postaci obrazka przestrzennego z "nakîadkâ" zwykîego rysunku. Nie jestem zwolennikiem tej metody. Oko i tak zmëczone wpatrywaniem sië w stereogram musi jeszcze odnotowaê obecnoôê fragmentu "normalnego" obrazka, bëdâcego w innej przestrzeni. Niemniej jednak stereogram moûe przedstawiaê coô, co pozornie bëdzie zbliûone do normalnego obrazka. Wpadîem na pomysî wykonania przestrzeni ziemi i nieba. Pokrycie tych dwóch pîaszyzn moûe byê doôê naturalne nie tylko na brushu, ale i w koïcowym wygenerowanym stereogramie. Zakîadam, ûe obraz bëdzie przedstawiaî do poîowy swojej wysokoôci coô w rodzaju pustyni z kamieniami. Namalowaîem wiëc fragment obrazu (do póúniejszego brusha), w którym kamienie w miarë ustawiania ich coraz wyûej majâ coraz mniejsze wymiary. W ten sposób stworzyîem pewnâ namiastkë perspektywy. To samo wykonaîem na tle nieba, rysujâc chmury malejâce w miarë rysowania ich coraz niûej. Tîo na obu czëôciach obrazka wykonaîem cieniujâc niebo i ziemië gradientem. Tutaj ujawnia sië pewna wada Personal Painta, który potrafi cieniowaê tylko doôê mechanicznie ustawianym, standardowym gradientem. Poniewaû poszczególne pasy gotowego stereogramu zawierajâ róûnice obrazka przestrzennego, widziane przez lewe i prawe oko, to konieczne zakîócenia obrazu koïcowego szczególnie wyraúnie widoczne sâ na gradiencie standardowym. Takie cieniowanie wykonywane jest przez regularne desenie linii, zawierajâcych róûnâ gëstoôê punktów kolorowych w liniach. W takim wypadku lepsze byîyby gradienty oferowane przez Deluxe Paint, który potrafi zmieniaê gëstoôê gradientu oraz przede wszystkim malowaê gradientem typu RANDOM. Oczywiôcie nie ma ûadnych przeszkód, aby wykonaê rysunek przeznaczony na brush Deluxe Paintem, a potem przenieôê go do Personal Painta i kontynuowaê pracë. Po namalowaniu obrazka wycinamy i zapisujemy pionowy brush. Rysujâc taki, a nie inny, stereogram staraîem sië oczywiôcie, aby ûaden detal (kamienie i chmury) nie wykraczaî poza przewidywanâ szerokoôê brusha. Szerokoôê wybraîem na 80 punktów. Przy hi-res daje to osiem pasów. Przykîad w AMOS-ie podaje wielkoôê 64, czyli 10 pasów. Moûna powiedzieê na podstawie doôwiadczeï, ûe wiëksza liczba pasów daje "mocniejszy" efekt przestrzenny. W tym konkretnym wypadku chodziîo mi jednak o moûliwie duûy, wyraúny i maîo znieksztaîcony obrazek -- nawet PRZED zobaczeniem efektu przestrzennego. W takim wypadku 80 punktów to nie jest wcale za duûo na wykonanie wyraúnego obrazka. Po wyciëciu i zapisaniu brusha trzeba wykonaê rysunek zawierajâcy informacje o przestrzeni. Tutaj dziaîanie jest pozornie proste. Chcë mieê najdalsze punkty na linii horyzontu, a pozostaîe stopniowo coraz bliûej w miarë zbliûania sië do górnej i dolnej krawëdzi. Coô jakby wielki klin wbity w tîo. Wystarczy wiëc wykonaê cieniowanie gradientem, ustawionym tak, ûe biel jest na górnej i dolnej linii ramki obrazka, a czerï poôrodku. Personal Paintem trzeba wykonaê dwa razy FILL GRADIENT do linii podziaîu w ôrodku rysunku. Raz naleûy ustawiê kolor tîa po lewej stronie w oknie FILL, a raz po prawej. Nie bëdë wchodziî w detale wykonania gradientu. Zaznaczë tylko, ûe Personal o wiele szybciej wykona prostokât wypeîniony gradientem niû taki sam efekt "wlany" w zaznaczone pole przez FILL. Taki rysunek przedstawia ilustracja 1. Przechodzimy teraz do drugiego ENVIRONMENT, îadujemy brush wzoru i naciskamy [A] wybierajâc z zestawu filtrów SIPS HiQual. Naciôniëcie PROCEED rozpoczyna rendering. Po zakoïczeniu pracy stwierdziîem, ûe przestrzeï skîada sië z czegoô, co przypomina dekoracjë teatralnâ -- patrz ilustracja 3. Ponowny wybór filtra, tym razem SIPS LessEcho, powoduje generowanie stereogramu z bardziej wygîadzonymi krawëdziami "warstw". Przestrzeï obrazka jednak nadal wyglâda jak coô w rodzaju schodów (tym razem pokrytych dywanem). Jak wspomniaîem, dalsze wygîadzenie jest moûliwe tylko przy "mniejszej odlegîoôci" kolorów w palecie. Zaleûy to od liczby kolorów palety, ale chyba nie tylko. Natchniony tâ myôlâ wybraîem ponownie paletë obrazka gîëbokoôci (cieniowanie) i zmieniîem zakres kolorów na [0 0 0], [0 1 0]... aû do [0 15 0]. Widaê to na ilustracji 2. Jest to oczywiôcie skala, w której zmienia sië tylko jeden suwak z RGB -- w tym wypadku zielony (G). Ponowny rendering stereogramu potwierdziî sîusznoôê takiego postëpowania. Przestrzeï wyraúnie sië wygîadziîa -- patrz ilustracja 4. Jak sië okazuje, podobne efekty wygîadzania moûna uzyskaê, uûywajâc innych skîadników RGB, np. tylko czerwieni, a nawet dwóch na raz, np. R i G (skala w ûóîci). Obrazek wyglâda doôê dobrze, jest wyraúny, a efekt przestrzenny doôê równomierny. Ale poniewaû lepsze jest wrogiem dobrego, postanowiîem dodaê jakiô element z przodu -- coô w rodzaju këpek trawy na pierwszym planie. Jest to element nieregularny i moûna pozwoliê sobie na znieksztaîcenia w procesie tworzenia stereogramu. Zaczâîem od narysowania trawy w dolnej czëôci brusha dokîadnie o jego szerokoôci. Trawë naîoûyîem na gîówny brush (brush na brush), zapisaîem poprawiony duûy brush, a maîy przeniosîem dodatkowo na stronë ze wzorem przestrzeni. Tam w opcji COLOR, identycznej z tâ w Deluxe Paint, naîoûyîem ostroûnie jasnâ sylwetkë brusha (trawy) na dolnej czëôci obrazka. Trawa obok trawy, tak aby stworzyê odpowiednik przyszîego podziaîu na pasy podczas generowania stereogramu. Dalej postâpiîem podobnie jak poprzednio. Efekt widaê na ilustracji 5. Trawa lekko sië "zepsuîa", ale nie wpîywa to znaczâco na jakoôê stereogramu. Pokryîa ponadto smugë, jakâ stworzyî Personal Paint, generujâc stereogram na regularnym gradiencie. Wyglâdaîo to jak przypadkowe rozmazanie farby. Mamy wiëc przestrzeï nieba, przestrzeï ziemi z trawâ na pierwszym planie i odlegîy horyzont. Wszystko to moûna zobaczyê od razu lub przy pewnym wysiîku zezowania równieû w przestrzeni 3D. Trzeba jednak wyraúnie powiedzieê, ûe poza uwagami technicznymi, obrazek przedstawiony na ilustracjach 3-5 nie jest specjalnym "typem" stereogramu. To tylko pewien pomysî odpowiednio przygotowany. W opisywanej kiedyô przeze mnie ksiâûce ze stereogramami zauwaûyîem jeszcze wyûszy stopieï doskonaîoôci. Nie mówië tu oczywiôcie o jakoôci technicznej grafiki -- wielkiej liczbie kolorów, maîym pikselu itp. Chodzi mi o wielkâ precyzjë w wykonaniu zaplanowanego pomysîu. Mistrzowie tej techniki potrafili tak dopasowaê klasyczny "wieloobrazkowy" brush, pokryty np. liôêmi, ûe na stereogramie widaê byîo drzewo z listowiem i maîego dziëcioîa! Inny stereogram tego typu zawieraî w mnogoôci wzorków na ekranie równieû duûâ liczbë maîych oczek. Autor, Bohdan Petyhyrycz, przedstawiî przestrzennâ postaê ludzkâ tak precyzyjnie wykonanâ, ûe oczy trafiîy we wîaôciwe miejsca na twarzy. Mimo oczywistej obecnoôci tego elementu równieû obok, precyzyjne dopasowanie robi takie wraûenie, ûe elementy "tîa" nie sâ wîaôciwie widoczne. Jak z tego widaê, dobre wykonanie stereogramu zaleûy od przemyôlenia moûliwoôci technicznych, dopasowanych do konkretnego pomysîu, i oczywiôcie duûego wkîadu pracy. Po opublikowaniu (dawno temu) artykuîu "Oczy kîamiâ, dusza ôpiewa" otrzymaîem kilka stereogramów od Pana Andrzeja Czado. Wiadomoôci na temat stereogramów byîy wtedy doôê skâpe -- opisywaîem prymitywnâ metodë ich tworzenia. Niemniej zamieszczam jeden z nadesîanych stereogramów w formacie lo-res 256 kolorów, pod tytuîem "Rainview_3D". Jest to przykîad na to, jak moûna dobrym pomysîem zastâpiê niedostatki narzëdzia. Obrazek przedstawia krople deszczu na szybie, przez którâ widaê miasto. Strugi wody sâ ostre i wyraúne, obraz za oknem zamglony. Podobny widok moûna zobaczyê w naturze! Prosta metoda daîa bardzo dobry efekt dziëki dobremu pomysîowi. Dokîadne przeanalizowanie zacytowanego na poczâtku listingu moûe zaowocowaê rozwiniëciem algorytmu w program, uîatwiajâcy wykonywanie bardziej wyrafinowanych stereogramów. Wielkie pole do eksperymentów zawiera teû jeszczcze opcja SIPS w Personal Paint. Na razie udaîo mi sië odkryê to, co opisaîem. Jest to stan na czerwiec 1995 r. Zobaczymy, co bëdzie na jesieni! * "Stereogramy, to takie proste!", Rafaî Piasek, C&A, 5/95, str. 14.