abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Navštivte Abc obchůdek se samolepkami a přívěsky!
Rozšířené hledání
×
dnes 06:11 | Komerce
Rozrůstající se softwarová společnost v Plzni zabývající se telematikou hledá schopné vývojáře a nadšence se zájmem o OS Linux. Uplatnění zde najdou především vývojáři C++ se znalostí OS Linuxu, dále programátoři v jazyku Java nebo vývojáři se zkušenostmi s Oracle DB a Oracle ADF. Více informací o společnosti. … více »
Reklama | Komentářů: 0
24.5. 22:45 | IT novinky
NASA, která společně s Rackspace stála u zrodu projektu OpenStack, se již nadále nebude podílet na dalším vývoji této "infrastructure-as-a-service" platformy. V NASA totiž došli k závěru, že vzhledem k podpoře OpenStacku ze strany společností jako Red Hat, AT&T a HP lze jejich práci považovat za dokončenou. Posléze se NASA plánuje stáhnout i z vývoje další platformy pro cloud computing jménem Nebula.
Migilenik | Komentářů: 0
24.5. 22:45 | Upozornění
Blíží se svátek IPv6 a s ním i konference IPv6 Day. Na návštěvníky této akce čeká nejen bohatý program, ale také jedna speciální nabídka – v průběhu setkání bude možné získat se slevou 66 procent třetí vydání knihy IPv6 vysokoškolského pedagoga a publicisty Pavla Satrapy, tedy za 105 korun. … více »
Vilem Sladek | Komentářů: 4
24.5. 16:14 | Pozvánky

Přijďte si zasprintovat na Djangu, jiném Python open-source projektu, nebo jen potkat ostatní vývojáře!

… více »
Whit | Komentářů: 0
24.5. 10:20 | Nová verze
Na zrcadlech a torrentech jsou již k dispozici ISO obrazy distribuce Mageia 2. Poznámky k vydání čtěte zde.
Liborek | Komentářů: 14
23.5. 13:47 | Pozvánky

Letos v říjnu se v Praze uskuteční hned několik konferencí. Odehraje se zde nově vzniklá konference LinuxDays. K ní se přidá čtvrtý ročník openSUSE Conference, dvanáctý ročník SUSE Labs conference a aby to nebylo málo, přidá se i první ročník Gentoo miniconf. A to vše ve stejné dny a na stejném místě.

… více »
Miška | Komentářů: 7
23.5. 13:27 | Zajímavý projekt
Printerd je název nového projektu tiskového démona, který bude využívat PolicyKit a D-Bus. Projekt je zatím na úplném začátku, takže nejde o nic vhodného k produkčnímu nasazení. Mimo jiné aktuálně akceptuje jako vstup jen PDF dokumenty.
Luboš Doležel (Doli) | Komentářů: 56
23.5. 13:25 | Zajímavý software
Tři vývojáři ze společnosti Engine Yard přecházejí po dohodě mezi firmami do Red Hatu. Jde o vývojáře zabývající se rozvojem projektu JRuby. To ukazuje, že Red Hat má zájem o podporu alternativních jazyků nad OpenJDK.
Luboš Doležel (Doli) | Komentářů: 1
23.5. 13:20 | Zajímavý software
Fedora přejde na knihovnu libusbx, což je fork původní knihovny libusb. Důvodem pro fork byl zjevný nedostatek času nebo zájmu ze strany správce projektu. libusbx už teď nabízí užitečné funkce navrch.
Luboš Doležel (Doli) | Komentářů: 4
23.5. 10:29 | Nová verze
Vyšlo LLVM 3.1. Vylepšení se dotýkají podpory C++ 11 nebo architektur ARM a MIPS. Dále se můžete těšit z Python bindings nebo nástroje AddressSanitizer pro detekci chyb při práci s pamětí.
Luboš Doležel (Doli) | Komentářů: 0
Pokud by se prohlížeč Opera stal svobodným:
 (9%)
 (32%)
 (1%)
 (58%)
Celkem 248 hlasů
 Komentářů: 31, poslední včera 22:38
    Rozcestník
    Reklama
    Autoškola testy online Levný benzín

    GIMP v příkladech - 8 (planeta)

    7. 2. 2006 | Vítězslav Šmíd | Návody | 16767×

    V dnešním díle budeme kreslit planetu, kterou jsme minule jen velmi zlehka začali. Mimo jiné si představíme velmi důležitou a užitečnou metodu - bump-mapping.

    Na konci minulého dílu jsme si připravili základ pro povrch budoucí planety - jednoduchý gradient. I ten by se dal sám o sobě jednoduše použít, pokud bychom chtěli stvořit plynného obra, tedy planetu bez pevného povrchu a viditelného zvrásnění. Věnujme se však něčemu zajímavějšímu a utvořme si těleso s členitým povrchem. Na kontrolované "zhrbolatění" vrstvy se výborně hodí bump-mapping, zvaný též elevační mapa či mapa vyvýšení.

    V textu budu používat anglický název bump-mapping, protože jde o zavedený a běžně používaný termín. [bump = hrbol, boule]

    Bump-mapping

    Pro použití tohoto filtru potřebujeme dvě vrstvy (nemusí být ve stejném obrázku). Jedna je ta, kterou chceme zvrásnit - nazveme si ji cílovou. Pak máme druhou vrstvu, kterou nazveme elevační mapa. Právě podle ní se bude řídit ono vrásnění (bumping) vrstvy cílové.

    Filtr funguje zhruba tak, že si vezme elevační mapu, převede ji na režim grayscale (šedé odstíny) a podle její světlosti provede bumping cílové vrstvy. Tmavé oblasti na místě [X; Y] v elevační mapě způsobí na místě [X; Y] cílové vrstvy prohlubně, světlé oblasti naopak pohoří.

    Pomocí Blenderu a GIMPu jsem se pokusil ilustrovat toto převední elevační mapy na bump-mapu:

    GIMP 8 Schéma převední elevační mapy na bump-mapu

    Filtr se nachází v menu Filtry -> Mapa -> Mapa vyvýšení (Filters -> Map -> Bump map) a nabízí nám poměrně rozsáhlé možnosti:

    • Mapa vyvýšení (Bump map): Zde se vybírá použitá elevační mapa. V nabídce jsou všechny vrstvy ze všech současně otevřených obrázků.
    • Druh mapy (Map type): Druh mapy ovlivňuje výpočet kontrastu. Typ Lineární provádí klasické bump-mapování bez úprav, typy Kulový a Sinusoidní používají ještě různé vyvažování odstínů. Nejlepší je s volbami experimentovat.
    • Kompenzovat tmavnutí (Compensate for darkening): Přirozeným (d)efektem bump-mappingu je celkové ztmavnutí obrazu. Zaškrtnutím můžete tento jev eliminovat.
    • Invertovat mapu vyvýšení (Invert bumpmap): Na elevační mapě je před použitím provedena inverze barev. Z hor se tak stanou údolí a naopak.
    • Opakovat mapu vyvýšení (Tile bumpmap): Pokud je tato volba aktivována a elevační mapa je menší než cílová vrstva, je poskládána vícekrát vedle sebe.
    • Azimut (Azimuth): Úhel určující pozici světla, 0 - 360 stupňů. Podle polohy světla se v nově vznikajícím "terénu" vykreslují stíny.
    • Zdvih (Elevation): Úhel určující výšku světla nad "obzorem", 0 - 90 stupňů. Podle polohy světla se v nově vznikajícím "terénu" vykreslují stíny.
    • Hloubka (Depth): Určuje rozsah elevační škály neboli rozdíl mezi nejvyšším a nejnižším bodem.
    • Posun X (X Offset): Relativní posunutí elevační mapy vůči cílové vrstvě v horizontální (X) ose.
    • Posun Y (Y Offset): Relativní posunutí elevační mapy vůči cílové vrstvě ve vertikální (Y) ose.
    • Výška hladiny (Waterlevel): Tento parametr má význam, pokud cílová vrstva obsahuje alpha kanál. Vyšší alpha zesiluje bumpmapovací efekt, nižší ho "přidušuje". Výška hladiny zde hraje roli konstanty, která tuto interakci ovlivňuje.
    • Okolí (Ambient): Nastavuje sílu tzv. ambientního světla, tedy světla, které ozařuje scénu všesměrově.

    Teď, když už víme, jak zvrásnit budoucí povrch naší planety, musíme ještě najít vhodnou elevační mapu. Je také možné postupně po sobě použít dvě různé. Dobře mohou vypadat třeba fotografie Marsu, Měsíce nebo Europy, problém ale může být s jejich opakovatelností (tileabity). Dostačující může být i textura kamene nebo, paradoxně, i samotné Země. Prostě něco, co bude připomínat kontinenty, pohoří, moře, ostrovy atd. Google jako vždy poskytne spoustu podkladů.

    Nelze bohužel jednoznačně říci, jak filtr nastavit, protože pro každou elevační mapu se hodí něco jiného. V podstatě je potřeba pohrát si s volbami Druh mapy (Lineární / Kulový), Zdvih a Hloubka. Mně z filtru vypadlo něco takového:

    GIMP 8 Povrch planety po aplikaci bump-mapy

    Budiž koule!

    Základní povrch máme připraven, pojďme jej tedy "natáhnout" do toho správného tvaru, a to pomocí známého filtru Mapovat objekt (Map Object) [Filtry -> Mapa -> Mapovat objekt (Filters -> Map -> Map object)]. Nastavení bude zhruba následující:

    • Volby - Mapovat na (Options - Map to): Kouli (Sphere)
    • Volby - Průhledné pozadí (Options - Transparent background): Ano
    • Materiál - Odrazivost - Odraz (Material - Reflectivity - Specular): 0.0

    Umístěním světla (na záložce Světlo [Light]) v tomto filtru už si de facto určujete, kde bude planeta mizet ve stínu - na straně opačné od zdroje světla. Po aplikaci filtru se může stát, že povrchové detaily na planetě budou trochu rozmazané a neostré. Proto nám přijde vhod další jednoduchý filtr, a to Filtry -> Vylepšení -> Doostřit (Filters -> Enhance -> Sharpen). Funkce má pouze jediný parametr, kterým je všeříkající Ostrost (Sharpness). Za pomoci náhledu si zvolte vhodnou hodnotu, mně pomohlo číslo 50:

    GIMP 8 Povrch planety namapovaný na
kouli

    Nyní přichází na řadu namodralá (nebo jiná) záře atmosféry, kterou pro nás zařídí filtr Skript-fu -> Alfa do loga -> Mimozemská záře (Script-fu -> Alpha to logo -> Alien Glow). Má velmi podobné nastavení jako Sálající záře, takže snad ani nemá smysl se jím zabývat. Barvu nastavte světle modrou až bílou, třeba #d6f5f9. Rozumná velikost efektu je 200 pixelů při rozměrech celého obrázku 210 x 210:-). Pozor, jak už jsem několikrát v tomto seriálu zmiňoval, plug-iny Script-fu s vrstvami pěkně zacvičí a přímo zničí tu vrstvu, na kterou jsou použity. Proto si zkopírujte vrstvu Povrch (kterou byste si už měli přejmenovat na Planetu) a filtr Mimozemská záře použijte na tuto kopii. Jakmile skončí jeho řádění, smažte vrstvy Planeta kopie a Background, vrstvu Alien glow si přejmenujte na Atmosféra a zařaďte ji pod vrstvu Planeta. Výtvor nyní, včetně jednoduchého hvězdného pozadí, vypadá takto:

    GIMP 8 Planeta s atmosférickou září

    Země stínů

    Poslední etapou je zakrytí části planety stínem, což uskutečníme pomocí masky vrstvy (layer mask). Podobně jako u kauzy mlha pokryjeme masku gradientem. Protože do mizení planety musíme zahrnout i záři její atmosféry, obě vrstvy sloučíme. Vyberte Planetu a v kontextovém menu zvolte Sloučit dolů (Merge down). Vzniklou jedinou vrstvu Atmosféra přejmenujte zpět na Planeta a přidejte jí masku příkazem Přidat masku vrstvy (Add layer mask) z kontextového menu. Jako inicializaci ponechejte výchozí Bílá (White). Poté se již jen stačí chopit nástroje Gradient. Stiskem D si zvolíme výchozí barvy (černá a bílá) a jako typ gradientu vybereme Popředí do pozadí (FG to BG). V okně vrstev se ujistíme, že máme vybraný náhled masky, nikoli samotné vrstvy, a můžeme začít experimentovat. Je mnoho možností, jak planetu zastínit. Může být jak lehce pohlazena stínem, tak téměř úplně pohlcena temnotou. Na menší stín stačí použít tvar Lineární, ale pro větší zastínění je vhodnější Radiální.

    Zůstává nám tu poslední problém - planeta je sice částečně ve stínu, ale protože stín je v tomto případě pouhá průhlednost, jsou přes ni vidět hvězdy za ní, a to je hrubá chyba. Řešení je několik. Například jsme mohli rezignovat na použití masky vrstvy, raději si vzít gradient Popředí do průhlednosti (FG to transparent) a překreslit s ním samotnou planetu tak, aby čistá průhlednost začínala tam, kde má být planeta normálně viditelná, černá by končila tam, kde je planeta totálně zastíněná. Toto řešení by však znamenalo vzdát se flexibility masky (jednoduše upravitelná průhlednost). My to vyřešíme jinak - pod vrstvu Planeta vsuneme černý "koláček" stejných rozměrů, který bude překrývat nežádoucí hvězdy pod planetou. K tomu nám postačí jen trochu hrátek s výběrem (selection).

    1. Vytvořte novou průhlednou vrstvu, zařaďte ji mezi vrstvy Planeta a Pozadí a pojmenujte ji Stín.
    2. Vyberte vrstvu Planeta. Poté zvolte Vrstva -> Průhlednost -> Alfa do výběru (Layer -> Transparency -> Alpha to selection). Tato funkce zahrne do výběru úplně neprůhledné části vrstvy, průhledných se ani nedotkne. V našem případě to znamená, že máme vybrané ty části vrstvy, které jsou částí planety.
    3. Vyberte znovu vrstvu Stín. Výběr (selection) v obrázku nám stále zůstává.
    4. Aktivujte nástroj Plechovka (Bucket fill) (Shift+B), zatrhněte volbu Vyplnit celý výběr (Fill whole selection) a černou barvou vyplňte výběr, který nyní platí pro vrstvu Stín. Tím pádem máme vyplněnou stejnou oblast, jakou zaujímá samotná planeta.

    Velkou výhodou stále zůstává, že se zastíněním planety si můžeme pořád hrát, jak je libo, maska vrstvy je krásně upravitelná bez zásahů do zbytku obrázku. Za tuto flexibilitu jsme zaplatili malou cenu - černou podkladovou vrstvu Stín.

    GIMP 8 Hotová planeta

    Tím jsme v podstatě hotovi. V příštím díle si možná ukážeme ještě jedno drobné vylepšení tohoto obrazu, a to přidání vycházející hvězdy.

    Nejčtenější články posledního měsíce

    Komiks xkcd 150: Dospěláci
    Komiks xkcd 1048: Emoce
    Komiks xkcd 131: Větráky

    Nejkomentovanější články posledního měsíce

    GIMP 2.8: V jednom okně a s celou řadou vylepšení
    Komiks xkcd 150: Dospěláci
    Průlomový rozsudek Soudního dvoru Evropské unie ve věci C-406/10, SAS v WPL
      všechny statistiky »

    Seriál GIMP v příkladech (dílů: 19)

    GIMP v příkladech - 1 (hvězdná obloha) (první díl)
    <—« GIMP v příkladech - 7 (mlha na fotografii, planeta)
    »—> GIMP v příkladech - 9 (hvězda, semafor)
    GIMP v příkladech - 19 (kiwi 3) (poslední díl)

    Související články

    GIMP v příkladech - 1 (hvězdná obloha)
    GIMP v příkladech - 2 (hvězdná obloha 2)
    GIMP v příkladech - 3 (kámen)
    GIMP v příkladech - 4 (meteor)
    GIMP v příkladech 5 - (blesk)
    GIMP v příkladech - 6 (kometa, mraky)
    GIMP v příkladech - 7 (mlha na fotografii, planeta)
    GIMP v příkladech - 9 (hvězda, semafor)
    GIMP v příkladech - 10 (Semafor)
    GIMP v příkladech - 11 (semafor pro chodce, spirála, pružina)
    GIMP v příkladech - 12 (mapa k pokladu)
    GIMP v příkladech - 13 (mapa k pokladu 2)
    Recenze: GIMP - Grafický editor pro Linux a Windows
    Snímání obrazovky aneb vyfoťte si okno
    GNU Lilypond - The music Typesetter - I
    Scribo, scribere, Scribus
    Geomview - váš interaktivní 3D prohlížeč
    Reportáž: Blender Conference 2005, De Waag, Amsterdam
    Myslíme trojrozmerne

    Odkazy a zdroje

    GIMP

    Další články z této rubriky

    Netcat - Švýcarský armádní nůž pro TCP/IP
    Migrace systému: praxe
    Unixové nástroje – 22 (taskset, ionice, chrt)
    Migrace systému: bootovací proces
    Začínáme s VirtualBoxem: Nastavení virtuálního počítače
           

    Hodnocení: 97 %

            špatnédobré        

    Nástroje: Tisk bez diskuse

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    7.2.2006 11:13 xxxxxxxx | skóre: 16 | blog: mrtvy blog | v nebi
    Rozbalit Rozbalit vše Re: GIMP v příkladech - 8 (planeta)

    jen tak dál!

    7.2.2006 14:37 Mazal
    Rozbalit Rozbalit vše Re: GIMP v příkladech - 8 (planeta)
    Super seriál.........
    7.2.2006 15:18 hynx | skóre: 7 | Martin
    Rozbalit Rozbalit vše Re: GIMP v příkladech - 8 (planeta)
    tak tato cast sa mi najviac paci, len tak dalej
    7.2.2006 17:51 Ricardo | skóre: 27 | blog: Ricardo | Horní Suchá
    Rozbalit Rozbalit vše Re: GIMP v příkladech - 8 (planeta)
    Neuvěřitelné, super seriál, prostě krásné ... Netušil jsem, že GIMP má takové možnosti.
    My mind may be raving, my words may be void, but I am not afraid of being moderated below threshold!
    7.2.2006 18:47 trancelius | skóre: 22
    Rozbalit Rozbalit vše spike
    Na tom prvním obrázku si bump mapa s tou 3D elevací zrovna moc neodpovídá - např. v levém horním rohu a ve středu, kde je mapa de facto pouze světlá, je vyvýšený pouze jeden čtverec (a měly by být všechny)
    Víťa Šmíd avatar 7.2.2006 19:02 Víťa Šmíd | skóre: 42 | blog: vituv_blog | Praha
    Rozbalit Rozbalit vše Re: spike
    Ony vyvýšené jsou, ale asi to není moc vidět... Evidentně jsem tu scénu v Blenderu přesvítil, takže elevační mapa (vlevo) je skoro celá bílá, i když neměla být :-(
    When Chuck Norris plays Monopoly, it affects the actual world economy. | Matematika pro normální lidi
    7.2.2006 19:33 trancelius | skóre: 22
    Rozbalit Rozbalit vše Re: spike
    To se mi nějak nepozdává, vždyť v tom (upper left) rohu jsou dva čtverce skoro stejně světlé a přitom jeden [0;0] je úplně nahoře a druhej [0;1] zase dole... a navíc ten nižší z nich je mnohem níž než tmavší čtverec na souřadnicích [0;4]
    8.2.2006 08:03 Robert Krátký | skóre: 94 | blog: Robertův bloček | Praha
    Rozbalit Rozbalit vše Re: spike
    Nechci se do toho moc plést, ale není to jedno? Má to být jen pro ilustraci, ne?
    8.2.2006 13:48 trancelius | skóre: 22
    Rozbalit Rozbalit vše Re: spike
    jj samozřejmě, nezáleží na tom... chtěl jsem jen upozornit na chybu
    7.2.2006 20:32 wajsup | skóre: 10
    Rozbalit Rozbalit vše Re: GIMP v příkladech - 8 (planeta)
    Ten seriál je jak komiks na pokračování - nemůžu se dočkat, až bude na abc další díl, abych viděl zase něco novýho. Autor to umí podat vyloženě zábavně. Doufám, že toho nakreslíme společně ještě hodně. Díky.
    9.2.2006 17:06 Vladimir Kotala | skóre: 17
    Rozbalit Rozbalit vše Re: GIMP v příkladech - 8 (planeta)
    Jen poznamka k realisticnosti: IMHO by ten stin v zaveru nemel byt linearni pres celou kouli, ale spise jakysi pulmesic. Zkuste si treba v Blenderu nasvitit kouli - hned to bude jasne. (Neumim to jednoduse a jasne popsat.) Koneckoncu po tom prvnim namapovani to je trochu videt, jak to ma vypadat.

    Takhle to proste nevypada dobre. I kdyz uznavam, ze pulmesic by se nedal udelat tak lehce a elegantne ;-)
    10.2.2006 12:10 Milan Uhrák | skóre: 16 | blog: milan_at_ABC
    Rozbalit Rozbalit vše GIMP - help
    No, tohle je spíše dotaz ...
    Mám dojem, že něco dělám špatně. Sedím u XP (MDK mám doma) a snažím se z gimpu vytisknout nově vytvořenou vizitku. Kdysi jsem něco podobného tvořil doma, a tam mi vždy Gimp sdělil, že takvhle to nepůjde, že si musí před tiskem sloučit vrstvy (MDV 2006, verzi GIMPu nevím). Dneska mi to u XP nic neohlásí, pouze vytiskne vybranou vrstvu. Mám dojem, že při té první vizitce mi to nedělal ani doma, ani zde v práci. Už jsem si stáhl i novou verzi 2.2.10, ale tim o asi nebude, poněvadž zde kladu dotaz. Mám tušení, že závada je mezi židlí a klávesnicí, ale nevím kde. Google vyhazuje pouze odkazy na Gimp-Print, což je u XP poněkud nepoužitelné.
    Děkuji za každou rozumnou radu.
    Milan

    Založit nové vláknoNahoru

    ISSN 1214-1267   Powered by Hosting 90 Server hosting
    © 1999-2012 Argonit s. r. o. Všechna práva vyhrazena.