karatetlacitka.png (12925 bytes) Intro Buildable objects Effects Parameters Extra Home

3d efekty

K3d.fx obsahuje efekty pro pohyb ve 3d prostoru a jeho nastavení. Dále pro efekty s texturami a deformace objektů (morph).


Draw3dWorld

    <Fx>
        <Pa> Draw3DWorld </Pa>   vytvoří "3dsvět" s kterým je svázán tvůj objekt(y)
        <Pa></Pa>                název rectangle
        <Pa> world1 </Pa>        název
        <Pa> camera </Pa>        název kamery
        <Pa> cte|0 </Pa>         čas (použitelné pro lightwave objekty)
        <Pa> cte|0.1 </Pa>       cutplane near (musí být větší než 0)
        <Pa> cte|20 </Pa>        cutplane far (musí být větší než předchozí číslo)
    </Fx>

Zobrazí World3d a všechny objekty co k němu patří.

Zde se také nastavuje velikost "3d prostoru". Pomocí hodnot near cutplane a far cutplane si nastavíš v jak velkém prostoru je 3d objekt zobrazen. Pokud je objekt vetší než 3d prostor (a naopak), bude vidět jen z části. Viz první příklad.

3dworldtop.png (8189 bytes)
Pohled shora. Objekt je ve středu scény.
3dworldside.png (8351 bytes)
Každý další Draw3dWorld může být nastaven jinak.
draw3dworldfx1.png (13298 bytes)
Kostka se zobrazuje jen v úzkém prostoru.
draw3dworldfx2.png (7818 bytes)
Velikost prostoru se plynule mění. Viz druhý příklad.

Set3dObject

    <Fx>
        <Pa> Set3dObject </Pa>
        <Pa> objekt1  </Pa>          název 3d objektu
        <Pa> cte |0.5 </Pa>          pozice x
        <Pa> cte |0.5 </Pa>                 y
        <Pa> cte |0.5 </Pa>                 z

        <Pa> cte |0  </Pa>           rotace x
        <Pa> cte |0  </Pa>                  y
        <Pa> cte |0  </Pa>                  z

        <Pa> cte |0.7 </Pa>  scale-velikost x
        <Pa> cte |0.7 </Pa>                 y
        <Pa> cte |0.7 </Pa>                 z
    </Fx>

Umístí 3d objekt do prostoru ve 3d souřadnicích (střed je 0|0|0).

Je možná změna pozice, rotace a velikosti. Ta probíhá ve třech osách a podle středu objektu.

set3dobjectfx1.png (11627 bytes)
Objekt se točí a je umístěn mimo střed.
set3dobjectfx2.png (8660 bytes)
Objekt se pohybuje po screenu a mění svou velikost.

Sett3dShade

    <Fx>
        <Pa> Sett3dShade </Pa>
        <Pa> grey64  </Pa>   název textury s šedou paletou
        <Pa> coltab1 </Pa>   název colortable
        <Pa> sin|0|2|1 </Pa> průběh průhlednosti
    </Fx>

Efekt řídí průhlednost šedé textury. Potřebuje colortable a texturu kterou máš předem připravenou.

sett3dshadefx1.png (25432 bytes)
Textura "bliká" na objektu.
sett3dshadefx2.png (43707 bytes)
Víc objektů víc zábavy.

Scrollt3d

    <Fx>
        <Pa> Scrollt3d </Pa>
        <Pa> textura1  </Pa>     název textury
        <Pa> aff |0|0.002 </Pa>  U
        <Pa> aff |0|0.005 </Pa>  V
    </Fx>

Efekt mění UV koordináty zvolené textury.

scrollt3dfx1.png (34174 bytes)
Textura se pohybuje na objektu.
scrollt3dfx2.png (13404 bytes)
Dvě stejné textury, ale každá se pohybuje jinak.

Clone3dShape

    <Fx>
        <Pa> Clone3dShape </Pa> pouzije tvar (vertexy)
        <Pa> objekt  </Pa>      puvodniho objektu
        <Pa> objektA </Pa>      jako pocatecni tvar pro morph a deformaci
    </Fx>

Naklonuje tvar objektu na jiný neviditelý objekt se kterým pak pracují efekty VertexAddMorph a VertexSin


VertexAddMorph

    <Fx>
        <Pa> VertexAddMorph </Pa>
        <Pa> objekt  </Pa>        název 3d objektu
        <Pa> objektA </Pa>        tvar 1
        <Pa> objektB </Pa>        tvar 2
        <Pa> sin |0.5|1.2|0.5 </Pa>  průběh morphu
    </Fx>

K tomuto efektu potřebuješ 3 objekty. Dva stejné, ale jeden z nich musí mít "neviditelný" World3d. Třetí objekt může mít jiný tvar nebo nastavení a také musí mít "neviditelný" World3d.

Nejdříve však musíš naklonovat tvar (vertexy) objektu na objektA. Viz efekt Clone3dShape.

vertexaddmorphfx1.png (14735 bytes)
Jeden tvar (nastavení objektu) přechází do druhého.
vertexaddmorphfx2.png (7872 bytes)
Dva různé lwo objekty se stejným počtem vertexů.

VertexSin

    <Fx>
        <Pa> VertexSin </Pa>
        <Pa> objekt1   </Pa>  název objektu
        <Pa> sin |0|0.4|0.5 </Pa>  offset x
        <Pa> sin |0|0.8|0.5 </Pa>         y
        <Pa> sin |0|0.35|0.5 </Pa>        z

        <Pa> cte |0.2 </Pa>  frekvence x
        <Pa> cte |0.2 </Pa>            y
        <Pa> cte |0.2 </Pa>            z

        <Pa> cte |0.4 </Pa>  amplituda x
        <Pa> cte |0.4 </Pa>            y
        <Pa> cte |0.4 </Pa>            z
    </Fx>

Deformuje 3d objekt. K tomuto efektu potřebujes objekty dva. Původní a stejný ovšem s "neviditelným" World3d. Do samotného efektu zapiš název původního objektu.

Nejdříve však musíš naklonovat tvar (vertexy) objektu na objektA. Viz efekt Clone3dShape.

vertexsinfx1.png (50951 bytes)
Torus se deformuje v reálném čase.
vertexsinfx2.png (10658 bytes)
Experimentovat s nastavením se vyplatí.

SetCamToWorld

    <Fx>
        <Pa> SetCamToWorld </Pa>
        <Pa> kamera1 </Pa>   název kamery
        <Pa> world1  </Pa>   název World3d
        <Pa> aff |0|1 </Pa>  0 start|1 rychlost
    </Fx>

Převezme pohyb kamery a objektů z Lightwave scény lws.

temp.png (1124 bytes)
Popis obrázku vlevo.
temp.png (1124 bytes)
Popis obrázku vpravo.
ghh don'tpanic