Formát definovania uzla a prednastavené hodnoty: Coordinate3 { point 0 0 0 # bod typu MFVec3f }Príklad
Tento uzol definuje súčasná štýl písma používaný všetkými následnými AsciiTextmi. Definujú sa len atribúty fontu. Je na prezerači, aby určil presný font pre rozličné kombinácie atribútov. Veľkosť špecifikuje vykresľovanú výšku (v jednotkách veľkosti objektu) v ghlypsoch a určuje vertikálne vzdialenosti medzi susednými riadkami textu.
Typ písma | |
SERIF | štýl Serif (podobný ako TimesRoman) |
SANS | štýl Sans Serif (podobný ako Helvetica) |
TYPEWRITER | štýl Fixed pitch (podobný ako Courier) |
Štýl písma | |
NONE | Bezo zmien do štýlu |
BOLD | Ztučnenie štýlu |
ITALIC | Zošikmenie štýlu |
Formát definovania uzla a prednastavené hodnoty: FontStyle { size 10 # veľkosť typu SFFloat family SERIF # font typu SFEnum style NONE # štýl typu SFBitMask }Príklad 1
Formát definovania uzla a prednastavené hodnoty: Info { string "Text infomácie." # reťazec typu SFString }Príklad
Špecifikovaný stredný bod LODu sa transformuje pomocou súčasnej transformácie do svetového priestoru a prepočíta sa vzdialenosť od transformovaného stredu do bodu pohľadu na svetový priestor. Ak je vzdialenosť menšia ako prvá hodnota v poli rozsahov, potom sa vykreslí prvé dieťa LOD skupiny. Ak je medzi prvými a druhými hodnotami v poli rozsahov, potom sa vykreslí druhé dieťa, atď. Ak je N hodnôt v poli rozsahov, potom by LOD skupina mala mať N+1 detí. Špecifikovaním príliš malého počtu detí sa dosiahne, že sa posledné dieťa použije opakovane pre nižšie detailové úrovne. Ak sa špecifikuje príliš veľa detí, nadbytočné z nich sa ignorujú. Každá hodnota v poli rozsahov by mala byť menšia ako predchádzajúca hodnota, inak budú výsledky nedefinované.
Formát definovania uzla a prednastavené hodnoty: LOD { range [ ] # rozsah typu MFFloat center 0 0 0 # stred typu SFVec3f }
Formát definovania uzla a prednastavené hodnoty: Material { ambientColor 0.2 0.2 0.2 # okolitá farba typu MFColor diffuseColor 0.8 0.8 0.8 # rozptylová farba typu MFColor specularColor 0 0 0 # zrkadlová farba typu MFColor emissiveColor 0 0 0 # vyžarovaná farba typu MFColor shininess 0.2 # svietivosť typu MFFloat transparency 0 # priehľadnosť typu MFFloat }Príklad 1
Spoje stien a vrcholov majú zmysel len pre tvary, ktoré sú vytvorené zo stien a vrcholov. Podobne, indexované spoje sú použité len v tvaroch, ktoré dovoľujú indexáciu.
Keď sa spoja materiály s viacerými hodnotami, hodnoty sa periodicky opakujú na základe periódy materiálového komponentu s najväčším počtom hodnôt. Napríklad, nasledujúca tabuľka ukazuje používané hodnoty pri periodickom opakovaní (alebo indexácii) materiálu s 2 okolitými farbami, 3 rozptylovými farbami a 1 zo všetkých ostatných komponent v aktuálnom materiály. (Perióda tohoto materiálového cyklu je 3):
Materiál | Okolitá farba | Rozptylová farba | Dalšie |
0 1 2 3 (rovnaký ako 0) |
0 1 1 0 |
0 1 2 0 |
0 0 0 0 |
Typy spojení | |
DEFAULT | Použi štandardné spájanie |
OVERALL | Celý objekt je z rovnakého materiálu |
PER_PART | Jeden materiál pre každú časť objektu |
PER_PART_INDEXED | Jeden materiál pre každú časť objektu, indexovaný |
PER_FACE | Jeden materiál pre každý tvar objektu |
PER_FACE_INDEXED | Jeden materiál pre každý tvar objektu, indexovaný |
PER_VERTEX | Jeden materiál pre každý vrchol objektu |
PER_VERTEX_INDEXED | Jeden materiál pre každý vrchol objektu, indexovaný |
Formát definovania uzla a prednastavené hodnoty: MaterialBinding { value DEFAULT # hodnota typu SFEnum }
Formát definovania uzla a prednastavené hodnoty: Normal { vector 0 0 1 # vektor typu MFVec3f }
Spoje stien a vrcholov majú zmysel len pre tvary, ktoré sú vytvorené zo stien a vrcholov. Podobne, indexované spoje sú použité len v tvaroch, ktoré dovoľujú indexáciu. Pre spoje, ktoré vyžadujú viaceré normály, sa uistite, že ste zadefinovali aspoň toľko normál, koľko je potrebné, inak sa objavia chyby.
Typy spojení | |
DEFAULT | Použi štandardné spájanie |
OVERALL | Celý objekt má rovnakú normálu |
PER_PART | Jeden materiál pre každú časť objektu |
PER_PART_INDEXED | Jedna normála pre každú časť objektu, indexovaná |
PER_FACE | Jedna normála pre každý tvar objektu |
PER_FACE_INDEXED | Jedna normála pre každý tvar objektu, indexovaná |
PER_VERTEX | Jedna normála pre každý vrchol objektu |
PER_VERTEX_INDEXED | Jedna normála pre každý vrchol objektu, indexovaná |
Formát definovania uzla a prednastavené hodnoty: NormalBinding { value DEFAULT # hodnota typu SFEnum }
Tieto rady dovoľujú implementáciám VRML optimalizovať isté vykresľovacie črty. Optimalizácie, ktoré smú byť urobené zahŕňajú povolenie triedenia odzadu a zakázania obojstranného svetla. Napríklad, ak je objekt pevný a má usporiadané vrcholy, implementácia smie zapnúť triedenie odzadu a vypnúť obojstranné svetlo. Ak objekt nie je pevný, ale má usporiadané vrcholy, smie sa vypnúť triedene odzadu a zapnúť obojstranné svetlo.
Uzol ShapeHints taktiež ovplyvňuje ako sa budú generovať prirodzené normály. Keď má IndexedFaceSet vygenerovať normály, používa pole creaseAngle, aby sa rozhodol, ktoré hrany majú byť hladko vytieňované a ktoré majú mať ostrý záhyb. Uhol záhybu je uhol medzi normálami povrchu na susedných polygónoch. Napríklad, uhol ohybu 0.5 radiána (štandardná hodnota) znamená, že hrana medzi dvoma susednými polygónnymi stenami bude hladko vytieňovaná, ak normály tvoria uhol menší ako 0.5 radiánu (približne 30 stupňov). Inak bude stránkovaná.
Usporiadanie vrcholov | |
UNKNOWN_ORDERING | Usporiadanie vrcholov nie je známe |
CLOCKWISE | Vrcholy steny sú usporiadané v smere chodu hodinových ručičiek (zvonka) |
COUNTERCLOCKWISE | Vrcholy steny sú usporiadané proti smeru chodu hodinových ručičiek (zvonka) |
Typy tvarov | |
UNKNOWN_SHAPE_TYPE | O tvare nie je nič známe |
SOLID | Pevný tvar |
Typy stien | |
UNKNOWN_FACE_TYPE | O stene nie je nič známe |
CONVEX | Všetky steny sú konvexné |
Formát definovania uzla a prednastavené hodnoty: ShapeHints { vertexOrdering UNKNOWN_ORDERING # usporiadanie vrcholov typu SFEnum shapeType UNKNOWN_SHAPE_TYPE # typ tvaru typu SFEnum faceType CONVEX # typ steny typu SFEnum creaseAngle 0.5 # uhol ohybu typu SFFloat }
Textúra môže byť čítaná z URL špecifikovanej pomocou poľa filename. Ak chceš vypnúť textúrovanie, nastav pole filename na prázdny reťazec ("").
Textúry môžu byť tiež špecifikované ako inline nastavením poľa image tak, aby obsahovalo dáta textúry. Špecifikovaním URL aj inline dát má za následok nedefinované správanie.
Typy obaľovania | |
REPEAT | Opakuje textúru mimo rozsahu 0-1 textúrnych súradníc |
CLAMP | Zopína súradnice textúry tak, aby ležala v rozmedzí 0-1 |
Formát definovania uzla a prednastavené hodnoty: Texture2 { filename "" # názov súboru typu SFString image 0 0 0 # obrázok typu SFImage wrapS REPEAT # obaľovanie v smere S SFEnum wrapT REPEAT # obaľovanie v smere T SFEnum }Príklad
Formát definovania uzla a prednastavené hodnoty: Texture2Transform { translation 0 0 # posun typu SFVec2f rotation 0 # otočenie typu SFFloat scaleFactor 1 1 # faktor škálovania typu SFVec2f center 0 0 # stred typu SFVec2f }Príklad 1
Súradnice textúry sú v rozsahu od 0 po 1 naprieč textúrou. Horizontálna súradnica, zvaná S, je špecifikovaná prvá a potom je vertikálna súradnica, zvaná T.
Formát definovania uzla a prednastavené hodnoty: TextureCoordinate2 { point 0 0 # bod typu MFVec2f }