VRML ([ˈvɜː(r)ml]; Virtual Reality Modeling Language) je grafický formát založený na deklarativnímprogramovacím jazyce, který byl navržen především pro popis trojrozměrných scén obsahujících aktivní i pasivní objekty, použité například v aplikacích virtuální reality. Nejedná se o jediný formát (či jazyk) této kategorie, dnes se například poměrně razantním způsobem prosazuje formát X3D, který lze chápat jako ideového nástupce VRML; v minulosti si mnoho korporací vytvářející 3D aplikace navrhlo vlastní formát, ovšem doposud se z grafických formátů a deklarativních jazyků určených pro popis virtuální reality nejvíce rozšířil právě jazyk VRML.
Historie
Jazyk VRML začal vznikat už koncem 80. let, kdy programátoři ze Silicon Graphics [ˈsɪlɪkən ˈɡræfɪks] navrhli knihovnu pro práci s prostorovými objekty nazvanou Inventor [ɪnˈventə(r)]. Šlo se o nadstavbu grafické knihovny GL. Na počátku 90. let vznikla nová grafická knihovna OpenGL [ˌəʊpən džiː ˈelː] a spolu s ní i nová aplikační knihovna OpenInventor [ˌəʊpən ɪnˈventə(r)], která se stala základem jazyka VRML. Silicon Graphics definovali v roce 1995 formát VRML 1.0, který rozšiřuje OpenInventor o možnost využití prostorových dat z internetu. O rok později představili verzi 2.0,[1] vypuštěnou následujícího roku; ta je dnes známá jako VRML97. Koncem roku byla oficiálně přijata za standard ISO s označením ISO/IEC 14772-1:1997. VRML nyní nahrazuje formát X3D (ISO/IEC 19775-1).
Ukázka kódu
VRML soubory jsou běžně nazývány „světy“ (worlds [wɜːrldz]) mající příponu .wrl. Ukázka kódu níže definuje jednoduchý statický objekt.
Virtuální světy se zapisují do textových souborů, takové soubory se skládají z jednotlivých částí, těm se říká uzly. Uzly mohou mít své parametry a v roli parametrů se mohou objevovat jiné uzly; dochází zde k tomu, že objekty mohou dědit své vlastnosti po rodičích. Lze tedy použít dědičnost známou z objektově orientovaného programování. Znak # označuje komentář (s výjimkou prvního řádku). Na následujících řádcích je popsáno několik základních uzlů.
#VRML V2.0 utf8 #hlavička VRML souboruAppearance{…}#vzhled povrchu, parametrem může být např. ''texture''Box{…}#kvádr, jedno ze základních přednastavených tělesCollison{…}#detekce nárazuDirectionalLight{…}#zdroj přímého světlaExtrusion{…}#plochy pokrývající těleso vzniklé tažením a otáčením #rovinného obrysu po trajektorii určené lomenou čárouGroup{…}#spojení více uzlů do jednoho stromuMaterial{…}#barevné vlastnostiPositionInterpolator{}#interpolace polohyText{…}#textTimeSensor{…}#časovačTouchSensor{…}#detektor dotykuViewpoint{…}#nastavení pohledů a průletů kameryWorldInfo{…}#informace o světě (autor,popis,datum)
Jazyk VRML slouží pro vytváření a zobrazování 3D grafiky. Tento jazyk má také prostředky pro tvorbu virtuální reality. Jednotlivé objekty se mohou hýbat, měnit barvu, dají se přemístit táhnutím myši. Mohou reagovat na přítomnost Avatara (virtuální návštěvník), na časovač, na jiné objekty generující nějakou událost. Další silnou stránkou je, že jazyk VRML byl navržen pro použití na internetu. Virtuálními světy tedy můžeme procházet na webu v reálném čase, stačí mít jen nainstalovaný plugin pro internetový prohlížeč.
Možnosti použití
VRML lze použít pro různé účely jako např. reklamní účely, vizualizace pro prodej nemovitostí, geografické informační systémy, výukové účely (zobrazování složitých struktur, simulace), návrhy interierů aj. Přestože jazyk VRML je jedinečný jazyk pro tvorbu a popis virtuální reality na internetu a nabízí mnohé výhody, tak nezaujal významné místo na internetu a nyní lze považovat za přežitý.