Animer v1.04
(c) 2015 Miroslav Němeček
panda38.sweb.cz


------
1. Charakteristika

Animer je editor a generátor 2D obrázkových animací. Obrázky je možné ve scéně posouvat, otáčet, měnit velikost, barvu a průhlednost. Obrázek lze připoutat k jinému obrázku jako k rodiči, pozice a otočení se pak bude vztahovat k rodiči. Výslednou animaci lze vygenerovat do sekvence snímků TGA s rozlišením 1920x1080 nebo 3840x2160. Snímky se sloučí do videa programem např. VirtualDub, s nastaveným časováním 29.97 fps.

Parametry obrázku (pozice, otočení atd.) mohou být měněny pro každý snímek zvlášť. Program zajistí interpolaci hodnot pro snímky, kde hodnota není zadaná.



------
2. Příprava obrázků

Animer používá ke své práci rozhraní OpenGL. Je napsán v programovacím nástroji Petr (varianta ScreenShot-OpenGL) a proto má některá technická omezení. Podporuje (nepřímo) obrázky ve formátu BMP, TGA, JPG a PNG, s průhledností nebo bez. Obrázky nelze do programu načítat přímo, musí být před použitím zkonvertovány do modifikovaného formátu BMP přiloženým programem AnimerPic. Program AnimerPic rozšíří plochu obrázku tak, aby rozměr byl mocninou 2 (což vyžaduje 3D engine), do souboru uloží informaci o skutečném původním rozměru obrázku (aby Animer věděl, jak zvětšený obrázek oříznout) a případně uloží obrázek i s alfa kanálem (standardně BMP formát nepodporuje průhlednost).

Program AnimerPic je konzolový program. Vstupní konvertované obrázky uložte do složky img. Spusťte program AnimerPic a ten zkonvertuje všechny soubory obrázků ze složky img do složky bmp. Ze složky bmp potom načítejte obrázky do programu Animer. Pokud některý obrázek změníte nebo přidáte, nevadí když se novým spuštěním zkonvertují všechny obrázky znovu. Pozor však ať nepoužijete stejné jméno obrázků s různými příponami, protože by se konverzí na společnou příponu bmp stejná jména přepsala.

Tip: Pokud vám při importu obrázků z Illustrátoru s průhlednými obrysy vznikají obrysy s nesprávným odstínem hrany obrysu, importujte obrázky do Photoshopu ve dvojnásobné velikosti a poté je ve Photoshopu zmenšete na polovinu. Photoshop rozšíří barvy z okrajů i do průhledných oblastí a tím se při zmenšování obrázku v Animer zajistí správná interpolace barev na hranách.



------
3. Tlačítka na horní liště - hlavní menu

Nový - vymaže projekt a založí nový, prázdný projekt.

Otevřít - otevře existující projekt. Projekt je soubor s příponou *.ani. Jedná se o textový soubor ve formátu Windows INI, není tedy problém soubor editovat běžným textovým editorem.

Uložit - uloží provedené změny do souboru projektu. Pokud byl projekt změněn, zobrazí se na ikoně tlačítka vykřičník. Pokud nebyl soubor projekt ještě zadán, program si vyžádá zadání jména souboru projektu.

Uložit jako - uloží projekt do souboru jiného jména.

Pozadí - nastaví barvu pozadí scény. Barva se zadává jako 3 čísla barevných složek RGB v rozsahu 0..255. V pravém poli je vidět náhled barvy pozadí scény.

Přidat obrázek - do scény přidá obrázek. Obrázek musí být ve formátu Animer-BMP a před načtením musí být připraven programem AnimerPic. Obrázky mohou zabírat mnoho paměti a proto se doporučuje používat obrázky přibližně v takovém rozměru, jaká bude jejich velikost v generovaném videu.

Přidat sekvenci - do scény přidá animovanou sekvenci obrázků. Sekvence je číslovaná posloupnost obrázků BMP. Při otevření vyberte první obrázek sekvence, program si sám rozpozná i všechny další obrázky patřící do sekvence. Sekvence se během přehrávání videa opakovaně přehrává s fází odvozenou od čísla snímku videa. První obrázek sekvence odpovídá prvnímu snímku videa. Ve vlastnostech obrázku lze zadat interval mezi jednotlivými snímky animace. Obrázky animace se po otevření načtou do paměti všechny. To může být náročné na paměť a proto se doporučuje používat sekvenci jen u krátkých animací s malými rozměry obrázků. Pro rozsáhlejší animace použít raději sekvenci videa.

Přidat video - do scény přidá sekvenci obrázků videa. Video je číslovaná posloupnost obrázků. Pro export z videa použijte např. VirtualDub a obrázky poté zkonvertujte hromadně pomocí conv_all.bat. Pro video platí stejné jako pro animovanou sekvenci, s tím rozdílem, že snímky videa se nenačítají najednou při otevření, ale načítá se vždy pouze jeden snímek a to v okamžiku jeho zobrazení ve scéně. Díky tomu video nezabírá mnoho paměti, avšak načítání obrázků může trvat dlouho. Proto je možné načítání obrázků videa vypnout ve vlastnostech videa - pak zůstává při náhledu a editaci načten stále stejný obrázek, další obrázky videa se načítají pouze při generování výsledného videa. Během funkce rychlého náhledu videa je načítání videí vypnuto vždy, nezávisle na nastavení přepínače.

Zduplikovat - zduplikuje vybraný obrázek včetně všech klíčových snímků.

Nahoru - posune vybraný obrázek nahoru, tedy umístí ho více do pozadí scény. Obrázky se ve scéně přes sebe překrývají tak, že obrázek nahoře je v pozadí za obrázkem, který je více dole. Čím je obrázek v seznamu níže, tím se zobrazuje více v popředí přes všechny ostatní obrázky.

Dolů - posune vybraný obrázek dolů, tedy umístí ho více do popředí scény.

Přejmenovat - zadá nové jméno vybraného obrázku v seznamu obrázků projektu. Jméno obrázku slouží pouze ke zpřehlednění seznamu obrázků.

Smazat - smaže vybraný obrázek.

Procenta - šířka a výška obrázků se bude nastavovat v procentech původní velikosti, namísto v pixelech.

Zámek - při nastavování šířky a výšku obrázků bude zachován původní poměr stran.

Kopírovat - zkopíruje nastavení vybraného obrázku pro aktuálně vybraný snímek do paměti. Jako paměť slouží konfigurace INI souboru programu Animer (nepožívá se schránka Windows).

Kopírovat interval - zkopíruje do paměti nastavení vybraného obrázku v intervalu snímků zadaných výběrovým blokem od-do.

Vložit - vloží do vybraného obrázku nastavení snímků z paměti, od pozice kurzoru. V paměti se uchovávají pouze hodnoty klíčových snímků. Při vložení se klíčové snímky doplní, tj. jen se přidá nebo opraví informace. Existující klíčové hodnoty se neruší. Klíčové snímky se vkládají od pozice aktuálně vybraného snímku. Tato operace nemění délku videa.

Vložit snímky - do videa vloží nové prázdné snímky na pozici aktuálně vybraného snímku. Délka videa se vložením snímků zvýší. Klíčové snímky nacházející se za aktuální pozicí kurzoru se odsunou dále.

Smazat snímky - z videa se zruší snímky podle intervalu zadaného výběrovým blokem od-do, a to včetně prvního i koncového snímku. Délka videa se zrušením snímků zkrátí. Leží-li začátek bloku za koncem bloku (Od je větší než Do), zruší se doplněk bloku vyjma prvního a koncového snímku.

Délka videa - editační pole, nastaví počet snímků videa. Pokud při zkrácení zůstanou nějaké klíčové snímky za koncem videa, neodmažou se, ale mohou nesprávně ovlivňovat animaci.

Začátek bloku - editační pole pro nastavení prvního snímku bloku videa. Blok se používá při operacích "Kopírovat interval", "Smazat snímky", "Přehrát blok" a "Generovat blok".

Nastavit začátek bloku - tlačítko uločí do editačního pole začátku bloku číslo aktuálně nastaveného snímku.

Konec bloku - editační pole pro nastavení posledního snímku bloku videa.

Nastavit konec bloku - tlačítko uločí do editačního pole konce bloku číslo aktuálně nastaveného snímku.

Renderovat HD - vyrenderuje číslovanou posloupnost obrázků videa. Video se renderuje v plném rozsahu snímků, s rozlišením 1920x1080. Vygenerované snímky lze sestavit do videa např. pomocí programu VirtualDub, s nastaveným časováním 29.97 fps.

Renderovat 4K - vyrenderuje číslovanou posloupnost obrázků videa v rozlišení 3840x2160.

Renderovat HD blok - vyrenderuje číslovanou posloupnost obrázků videa v rozlišení 1920x1080. Renderují se pouze snímku ve zvoleném bloku od-do.

Renderovat 4K blok - vyrenderuje číslovanou posloupnost obrázků videa v rozlišení 3840x2160. Renderují se pouze snímku ve zvoleném bloku od-do.

AutoOpen - nastaví, aby se aktuálně otevřený projekt otevřel automaticky při příštím spuštění programu. Chcete-li tuto funkci zrušit, vymažte nejdříve projekt tlačítkem Nový projekt a poté stiskněte toto tlačítko.

Jazyk - zvolí jazyk (česky nebo anglicky).



------
4. Editace vlastností obrázku I. - globální část, nezávislá na zvoleném snímku

Seznam obrázků - obrázky se ve scéně vykreslují v pořadí shora dolů. Pořadí překrývání obrázků lze řídit tlačítky Nahoru a Dolů.

Cesta k souboru - zobrazí se cesta k souboru obrázku. U videí a animací je zde uveden první obrázek sekvence obrázků.

Obrázek/Video - přepínač používaný u video sekvence. Je-li vypnut, nenačítají se při náhledu další obrázky videa (aby načítání obrázků nezdržovalo editaci a náhled). Načítání je automaticky vypnuto také během zrychleného přehrávání videa.

Prodleva - nastavení prodlevy mezi snímky animace nebo videa. Prodleva se nastavuje v počtu snímků.

Fáze - počáteční fáze animací. Číslo se přičte k aktuálnímu snímku a tím dojde k posunu animace videa vpřed.

Rodič - volba rodiče, ke kterému je obrázek připojen. Je-li obrázek připojen k nějakému rodiči, uplatňují se parametry X, Y a Rotace relativně k rodiči (obrázek je "přilepen" k rodiči). Má-li rodičovský obrázek sloužit pouze jako "kloub" pro další transformace, lze použít prázdný průhledný obrázek (přiložen jako soubor Empty.bmp).

Rodič s velikostí - obrázek bude od rodiče dědit i změnu rozměrů.

Mód - nastavení módu průhlednosti. Mód průhlednosti je kombinace barvy obrázku s barvou podkladu podle vztahu: výsledná_barva = zdrojová_barva*zdrojový_koeficient + cílová_barva*cílový_koeficient. Číselný kód módu je kombinací zdrojového a cílového kódu koeficientu: kód = cílový_kód*10 + zdrojový_kód. Kód má význam: 0=složka se neuplatní, 1=složka se uplatní plně, 2=zdrojová barva, 3=1-zdrojová barva, 4=alfa, 5=1-alfa, 6=cílová barva, 7=1-cílová barva. Např. mód průhlednosti "54 Alfa" je modulace alfa kanálem, který přepíná obraz mezi popředím a pozadím podle vztahu: barva = zdrojová_barva*alfa + cílová barva*(1-alfa).

Vyhlazení - vyhlazení rastru textur. Je-li přepínač zapnut, obrázek se lineárně interpoluje. Při vypnutí přepínače se použije nejbližší bod bez interpolace. Běžně je přepínač zapnut, čímž se zajistí hladký vzhled obrázků. V některých případech může být vhodné přepínač vypnout - např. má-li se obrázek zobrazit ve 100% velikosti a bez otáčení. V takovém případě by mohla zapnutá interpolace způsobit neostrost obrazu.



------
5. Editace vlastností obrázku II. - vlastnosti nastavitelné samostatně pro každý snímek

Následující skupinu vlastností je možné nastavovat pro každý snímek videa zvlášť. Snímek s nastavenou hodnotou se nazývá klíčový snímek. Program dopočítá hodnoty pro snímky, ve kterých nejsou hodnoty zadány.

Na levé straně ovládacích prvků se nachází přepínače udávající, zda pro aktuálně vybraný snímek je hodnota nastavená. Není-li hodnota nastavená, program hodnotu vypočítá interpolací ze sousedních klíčových snímků.

Po pravé straně jsou přepínače pro plynulé vyhlazení hodnoty. Je-li přepínač zapnut, nemá hodnota v místě snímku ostrý zlom, ale mění se plynule podle Bezierovy křivky. Důsledkem vyhlazení je, že parametr nemusí dosáhnout nastavené hodnoty, ale průběh se zaoblí a projde kolem bodu hladce. V poli vlastností se přitom zobrazuje hodnota odpovídající lineárnímu průběhu, ne skutečnému vyhlazenému. Krajní hranice zaoblení spočívají v polovině intervalu mezi klíčovými snímky. Těmito hraničními body hodnota projde vždy, ať je nebo není vyhlazená.

Táhla pro řízení parametrů obrázků mají přednastaven určitý rozsah. Neznamená to však, že tento rozsah musí být dodržen. V editačním poli lze zadat jakoukoliv hodnotu, včetně desetinných čísel. Souřadnice a rozměry obrázků jsou nastavitelné vzhledem k implicitnímu rozměru 1920x1080, nezávisle na tom, zda se bude generovat video v rozlišení FullHD nebo UltraHD.

Viditelnost - zapne viditelnost obrázku. Obrázek lze během animace libovolně zapínat či vypínat. Jsou-li k obrázku připojené i jiné obrázky jako potomci, je ovlivněna viditelnost i připojených obrázků.

Šířka - nastaví šířku obrázku v pixelech nebo procentech. Při otevření obrázku je přednastavena původní šířka obrázku pro 100% zvětšení. Zadáním negativní šířky se obrázek horizontálně překlopí.

Výška - nastaví výšku obrázku v pixelech nebo procentech. Při otevření obrázku je přednastavena původní výška obrázku pro 100% zvětšení. Zadáním negativní výšky se obrázek vertikálně překlopí.

Rotace - nastaví otočení obrázku proti směru hodinových ručiček. Údaj je ve stupních. Úhel se nevztahuje k předešlé hodnotě, ale jedná se o absolutní úhel otočení proti výchozímu stavu. Je-li obrázek připojen k jinému obrázku, vztahuje se rotace relativně k obrázku rodiče.

X - nastaví horizontální souřadnici X. Je-li obrázek připojen k jinému obrázku, vztahuje se souřadnice X relativně k obrázku rodiče.

Y - nastaví vertikální souřadnici Y. Je-li obrázek připojen k jinému obrázku, vztahuje se souřadnice Y relativně k obrázku rodiče.

RGBA barva - nastaví barvu obrázku pomocí barevných složek R=červená, G=zelená, B=modrá a A=průhlednost. Složky mají hodnotu v rozsahu 0..255 (pro průhlednost 0=zcela průhledný, 255=neprůhledný). Složka průhlednosti se uplatní jen u některých módů průhlednosti a také ve spojení s parametrem Ořez.

Ořez - zajistí odstranění bodů obrázku s nízkou hodnotou alfa kanálu. Ořez je vhodné používat např. u módů průhlednosti nepodporujících alfa kanál - zajistí se tím odstranění průhledných částí obrázku. Ořez je vhodné používat také v případech, kdy díky nesprávné barvě pozadí průhledných částí dochází ke vzniku nežádoucích zbarvení obrysů obrázku. Např. obrysy mají tmavý nádech, pokud se okolí obrázku vymaže s použitím černé průhledné barvy.



------
6. Přehrávací tlačítka

Začátek - převine ukazatel na začátek videa.

Začátek bloku - převine ukazatel na začátek výběrového bloku.

Předešlý klíčový snímek - vyhledá předešlý snímek s klíčovou hodnotou. Není-li snímek s klíčovou hodnotou nalezen, pokračuje se v hledání od konce videa.

O 100 snímků zpět - převine ukazatel o 100 snímků zpět.

O 10 snímků zpět - převine ukazatel o 10 snímků zpět.

O snímek zpět - převine ukazatel o 1 snímek zpět.

O snímek vpřed - převine ukazatel o 1 snímek vpřed.

O 10 snímků vpřed - převine ukazatel o 10 snímků vpřed.

O 100 snímků vpřed - převine ukazatel o 100 snímků vpřed.

Další klíčový snímek - vyhledá další snímek s klíčovou hodnotou. Není-li snímek s klíčovou hodnotou nalezen, pokračuje se v hledání od začátku videa.

Konec bloku - převine ukazatel na konec výběrového bloku.

Konec - převine ukazatel na konec videa.

Stop - zastaví přehrávání nebo renderování videa.

Přehrát - přehraje náhled videa běžnou rychlostí od aktuální pozice. Po dosažení konce se v přehrávání pokračuje opět od začátku. Po zastavení zůstane ukazatel na aktuální pozici přehrávání.

Přehrát blok - přehraje náhled videa ve vybraném bloku od-do. Přehrávání začne na začátku bloku a po dosažení konce bloku pokračuje opět od začátku bloku. Po zastavení se ukazatel vrátí na pozici před zahájením přehrávání.

Přehrát rychle - spustí 5x zrychlené přehrávání. Video sekvence obrázků nenačítají další snímky.

Aktuální snímek - je číslo aktuálně vybraného snímku.



------
7. Historie verzí

16.8.2015 Zkušební verze 0.9 beta
26.8.2015 Verze 1.0
1.9.2015 Verze 1.01: možnost dědění velikosti od rodiče, přesah konce při vkládání snímků z paměti.
10.9.2015 Verze 1.02: Doplněna počáteční fáze animací
19.9.2015 Verze 1.03: Omezení velikosti textur zvýšeno na 8192x8192. Možnost automatického otevření minulého projektu.
27.9.2015 Verze 1.04: Oprava textu "Video snímky"
