Next Previous Contents

3.1 Obecné vlastnosti

Popis scénáře je realizován jazykem A. Jazyk A umožňuje popis objektů scény v závislosti na čase. Objekty scény jsou trysky (poloha, směr, rychlost proudu, poloměr průřezu, rozptyl), světla (poloha, směr, barva, úhel kužele), pohlcovací plocha (poloha, rozměry), kamera (poloha, look_at, up), externí proměnné scény (vektor).

Chování např. trysky je zadáno (volně řečeno) po časových blocích. U každého bloku je určen počátek, délka trvání a co se v průběhu bloku děje. Tento děj může být popsán v podstatě libovolnou (rozumnou) funkcí. Tato funkce bude mít jako proměnnou čas. Při následné simulaci pak bude pro každý okamžik tato funkce vyhodnocena.

Omezením jazyka je, že počátky bloků musí být ve scénáři vzestupně uspořádány. Toto je velmi výhodné pro simulační program, neboť si nemusí udržovat v paměti celý scénář, ale pouze aktuální část. Nicméně pro autora tohoto scénáře je to naopak velmi nevýhodné, zvláště při ladění pohybů několika nezávislých objektů. Například pokud máme celý scénář fontány již hotový, jen bychom rádi upravili pohyb kamery.

Proto zde vznikl velmi prostý jednoduchý ``přeuspořádávač'', jazyk JA. Ten umožňuje nesekvenční popis scény a jeho úkolem je pouze tyto bloky uspořádat. Výstupem je pak korektní kód jazyka A.

Pro větší pohodlí autora scénáře přibyla ještě preprocesová fáze. Díky preprocesoru cpp je možné rozdělit nezávislé části scénaře do více souborů. S tím se ``svezly'' i všechny ostatní vymoženosti cpp jako jsou definování maker, podmíněný překlad atd.


Next Previous Contents