Mathematics, philosophy, code, travel and everything in between. More about me…

I write about

GIMP v příkladech 18: Kiwi II

Dnes dokončíme minule započatou práci na plochém řezu napříč kiwi a vrhneme se na jeho převod do 3D. Článek původně vyšel 23.8.2006 na serveru AbcLinuxu.cz.

Minule jsme skončili namalováním tmavých pruhů v kiwi. Stačí přidat černá oválná semínka a již můžeme pracovat na 3D vzhledu.

Semínka

Semínka nakreslíme ručně na novou vrstvu Semínka umístěnou přímo pod Viewportem. Použijeme nástroj Štětec (Paintbrush) se stopou (brush) Circle (07) a černou barvou.

Kiwi s ručně nakreslenými semínky

Protože jsou ale takto vytvořená semínka příliš ostře ohraničená, musíme je ještě trochu zjemnit, rozostřit. Jako obvykle to obstará filtr Gaussovo rozostření (Gaussian blur). Nepoužijeme jej ale přímo na vrstvu Semínka. Vytvoříme kopii této vrstvy, umístíme ji pod originál a pak ji filtrem rozmažeme. Ideální poloměry rozostření (radius) se zdají být 5.0 px. Rozmazanou vrstvu pojmenujeme Semínka – stín.

Kiwi s rozostřenými semínky

V posledním kroku ještě ztmavíme dužinu kolem semínek. Opět zkopírujeme a rozmažeme vrstvu Semínka, ale tentokrát vrstvu před rozmazáním přebarvíme na zeleno.

Použijeme dialog Vrstva -> Barvy -> Obarvit (Layers -> Colors -> Colourise). Tato funkce změní barvy vrstvy podle následující analogie: vrstva je převedena na odstíny šedé (grayscale) a poté je přes ni „položeno“ barevné sklo. Barva tohoto imaginárního „skla“ se nastavuje v režimu HSVOdstín, Sytost, Světlost/Jas (Hue, Saturation, Lightness/Value).

Vrstvu Semínka tedy zduplikujeme, kopii pojmenujeme vynalézavě Ztmavení a umístíme ji pod vrstvu Jádro. Ze současné černé ji chceme přebarvit na tmavě zelenou. Pro výše zmíněný dialog se k tomu hodí například toto nastavení:

Semínka přebarvená na zeleno

Máme-li semínka přebarvená, můžeme přistoupit k jejich radikálnímu rozmazání (opět filtrem Gaussian blur) s oběma poloměry (radius) 60 px. Samozřejmě, že z vrstvy toho moc viditelného nezbude, a proto ji jednou nebo dvakrát zkopírujeme a všechny kopie zase ihned sloučíme.

Kiwi s tmavou dužinou

Sloučení vrstev

Před přechodem k 3D je třeba sloučit všechny vrstvy. Musíme to ale udělat promyšleně, protože budeme potřebovat dvě varianty celého kiwi – jednak „normální“ kiwi ohraničené Viewportem, jednak kiwi, které se rozkládá přes celou plochu obrázku (jako by Viewport neexistoval) a k tomu nemá žádné jádro. Proč, to uvidíte až na konci naší cesty.

V obrázku máme dvě vrstvy Pruhy, přičemž jedna z nich má režim Násobení (Multiply). Obě vrstvy si pro přehlednost pojmenujeme Pruhy #1Pruhy #2. Až doposud nevadilo, že u obou vrstev stále zůstávají ohniska Supernovy, protože byla skryta vrstvou Jádro. Teď už se jich ale musíme zbavit. Stručný postup bude následující:

  1. Vybereme vrstvu Jádro a z menu vyvoláme: Vrstva -> Průhlednost -> Alfa do výběru (Layer -> Transparency -> Alpha to selection). Tuto funkci jsme již v seriálu používali; zahrne do výběru neprůhledné části vrstvy.
  2. Přepneme se na vrstvu Pruhy #1 a z kontextového menu v panelu vrstev zvolíme Přidat masku vrstvy (Add layer mask). Jako inicializaci masky nastavíme Výběr (Selection) a zaškrtneme políčko Invertovat masku (Invert mask).
  3. Krok 2 zopakujeme u vrstvy Pruhy #2.

Sloučení provedeme již jednou popisovanou funkcí Sloučit viditelné vrstvy (Merge visible layers) se zkratkou Ctrl+M.

  1. Zneviditelníme vrstvy ViewportJádro.
  2. Sloučíme všechny viditelné vrstvy a výsledek pojmenujeme Kiwi – inverze.
  3. Zduplikujeme vrstvu Kiwi – inverze a duplikát pojmenujeme Kiwi.
  4. Zviditelníme vrstvu Jádro a sloučíme ji s Kiwi.

V obrázku teď máme tři vrstvy. Kiwi však ještě musíme oříznout podle Viewportu, což bude velmi snadná operace. Technika je téměř shodná s „vyříznutím“ ohniska Supernovy:

  1. Vybereme vrstvu Viewport a z menu vyvoláme: Vrstva -> Průhlednost -> Alfa do výběru (Layer -> Transparency -> Alpha to selection).
  2. Přepneme se na vrstvu Kiwi a z kontextového menu v panelu vrstev zvolíme Přidat masku vrstvy (Add layer mask). Jako inicializaci masky nastavíme Výběr (Selection) a zaškrtneme políčko Invertovat masku (Invert mask).
  3. Ze stejného kontextového menu zvolíme Použít masku vrstvy (Apply layer mask).
  4. Vrstvu Viewport smažeme.

Těmito čtyřmi kroky jsme obrázek „zkrouhli“ na dvě podobné vrstvy – Kiwi má správný tvar, kdežto Kiwi – inverze je bez jakýchkoliv hranic a nadto nemá jádro.

Vrstva Kiwi-inverze Vrstva Kiwi Vlevo: Kiwi – inverze; vpravo: Kiwi

Třetí rozměr

Nyní jsme připraveni ke konverzi plochého obrázku na trojrozměrný objekt. Použijeme k tomu dva filtry: Mapovat objekt (Map object) a Světelné efekty (Lighting effects).

Našemu kiwi dodáme 3D „look & feel“ dvojím použitím filtru Mapovat objekt (Map object) – současný zelený řez filtrem namapujeme na plochu otočenou v prostoru, pak vezmeme texturu slupky kiwi, namapujeme ji na kouli a  tu podsuneme pod řez. Po nutné úpravě viditelnosti získáme trojrozměrný obrázek kiwi rozříznutého napůl.

Namapování plochy

Kromě nastavení samotné rotace plochy je u filtru nutné nastavit ještě dvě věci: na záložce Volby (Options) zapneme Průhledné pozadí (Transparent background) a na záložce Světlo (Light) naopak vypneme jakékoliv světlo: Typ zdroje světla (Lightsource type) = Žádné světlo (No light).

Rotaci plochy na záložce Orientace (Orientation) nastavíme dle uvážení. Filtr pro rotaci používá tento model:

Schéma modelu os pro rotaci

Já jsem použil tyto hodnoty:

Výsledek pak vypadá takto:

Kiwi namapované na plochu

Prozatím záhadnou vrstvu Kiwi – inverze potřebujeme namapovat přesně stejně, můžeme ji tedy vybrat a použít trik se zopakováním filtru – Ctrl+F.

Vrstva Kiwi - inverze namapovaná na plochu

V příští části dílo dokonáme. Vytvoříme slupku kiwi, naučíme se pracovat s novým komplexním filtrem a odhalíme tajemství vrstvy Kiwi – inverze.

August 23, MMVI — GIMP in Examples.