VRML
VRML (ang. Virtual Reality Modelling Language, początkowo znany przed 1995 jako Virtual Reality Markup Language) – wolny od tantiem standard formatu pliku, opisujący grafikę trójwymiarową (3D), interaktywną grafikę wektorową, projektowaną głównie z myślą o stronach WWW. VRML został zastąpiony przez X3D (Extensible 3D)[1].
Format pliku WRL[edytuj | edytuj kod]
Plik VRML jest to plik tekstowy gdzie np. wierzchołki i krawędzie wielokątów mogą być opisane dodatkowymi cechami takimi jak: kolor powierzchni, mapowanie tekstur UV, odblaskowość powierzchni materiału, przeźroczystość i innymi parametrami.[2][3].
Formaty URL mogą być przypisane do komponentów graficznych, które przeglądarka internetowa może pobrać ze strony internetowej lub do innych plików VRML z internetu, kiedy użytkownik kliknie określony komponent graficzny. Animacje, dźwięki, światła i inne aspekty oraz elementy wirtualnego świata mogą wchodzić w interakcję z użytkownikiem lub być inicjowane zewnętrznie przez programowanie zdarzeniowe takie jak liczniki (stopery). Specjalny węzeł Script pozwala dodawać do pliku VRML kod programu (np. napisany w językach Java lub ECMAScript (podzbiór JavaScript)).
Pliki VRML są powszechnie nazywane światami i mają rozszerzenie *.wrl (np. mapa_miasta.wrl). Pliki VRML są zapisane w zwykłym formacie tekstowym i generalnie dobrze się kompresują za pomocą GNU zip, który jest użyteczny do przyspieszenia transferu danych przez internet. (niektóre pliki spakowane gzipem używają rozszerzenia *.wrz)
Wiele programów służących do modelowania 3D może zapisywać obiekty i sceny w formacie VRML.
Standaryzacja[edytuj | edytuj kod]
Konsorcjum Web3D zostało powołane do dalszego zbiorowego opracowywania tego formatu. VRML (i jego następca, X3D), zostały zaakceptowane jako międzynarodowe standardy przez International Organization for Standardization (ISO). Pierwsza wersja VRML została wydana w listopadzie 1994 roku. Ta wersja wywodziła się i dokładnie przypominała API i format pliku modułu programowego Open Inventor, pierwotnie zaprojektowanego przez Silicon Graphics. Rozwój wersji 2.0 był kierowany przez doraźną organizację "VRML Architecture Group (VAG)".[4] Wersja robocza została opublikowana w sierpniu 1996.[5] Formalna współpraca pomiędzy VAG a SC24 podlegające ISO rozpoczęła się w 1996.[6]po czym VRML 2.0 został zgłoszony do ISO celem wdrożenia jako standard międzynarodowy. Bieżącą i w pełni funkcjonalną kompletną wersją jest VRML97 (ISO/IEC 14772-1:1997). VRML obecnie został wyparty przez format X3D (ISO/IEC 19775-1).
Pojawienie się, popularność i konkurencyjne uaktualnienia techniczne[edytuj | edytuj kod]
Wyrażenie VRML zostało wymyślone przez Dave'a Raggetta w sprawozdaniu zatytułowanym „Extending WWW to support Platform Independent Virtual Reality”[7] przedstawionym na Pierwszej Konferencji WWW[8] w 1994 roku i po raz pierwszy dyskutowane na WWW94 VRML BOF ustanowionym przez Tima Bernersa-Leego, gdzie Mark Pesce zaprezentował demo Labyrynth zaprojektowane wraz z Tonym Parisim[9] i Peterem Kennardem[10]. VRML został ujawniony dla szerszej publiczności na targach SIGGRAPH Course, VRML: Using 3D to Surf the Web[11] w sierpniu 1995. W październiku 1995, w Internet World, Template Graphics Software (TGS) zademonstrował wtyczkę 3D/VRML dla wydania beta Netscape 2.0 od Netscape Communications[12]. Mark Pesce i Tony Parisi szybko zaadaptowali się do nowej implementacji, pomagając wprowadzać nowy standard do otwartej wspólnoty, podczas gdy w tym samym czasie grupowali kadrę innych rozwijających przeglądarki i publikowali książki dotyczące ekscytującego nowego standardu. Na końcu ponad 30 przeglądarek VRML zostało wytworzonych, wiele wykorzystujących pakiet autorski Open Inventor. SGI i TGS.com pozostają, i, podczas gdy zapał dla VRML przeminął, 3D weszło do głównego nurtu poprzez filmy z rodzaju Pixar i mnóstwo gier komputerowych. W październiku 1995 Silicon Graphics i TGS.com, przewodzeni odpowiednio przez Rikka Careya i Roberta Weidemana, zaskoczyli raczkującą grupę dyskusyjną VRML przez wprowadzenie kompletnego 3D dla implementacji sieciowej opartej na SGI Open Inventor, zaawansowanym pakiecie autorskim 3D, zasadniczo kooptując wkład VRML. Wspierani przez 15 sprzętowych i programowych liderów, w tym Apple, IBM, HP, Netscape, SGI i TGS.com wprowadzili pierwszą przeglądarkę VRML 3D, WebSpace Navigator na targach Internet World w tym samym miesiącu, wraz z SGI dostarczającym przeglądarkę dla ich platformy UNIX i TGS dostarczającym wersje dla platform Windows, Sun, HP i IBM. Jako wynik VRML 1.0, i w dużym stopniu VRML 2.0 były oparte na podzbiorze struktury Open Inventor 3D.[13]
W 1997, nowa wersja formatu została ukończona jako VRML97 (także znany jako VRML2 lub VRML 2.0), i została standardem ISO. VRML97 był wykorzystywany w Internecie na prywatnych stronach WWW oraz stronach takich jak „CyberTown” oferujących pogawędki 3D (ang. 3D chats) za pośrednictwem oprogramowania Blaxxun. Format był wspierany przez oddział SGI – Cosmo Software, a kiedy SGI został zrestrukturyzowany, oddział ten został sprzedany oddziałowi VREAM Platinum Technologies, który to oddział z kolei został przejęty przez Computer Associates, który już nie rozwijał ani nie sprzedawał tego oprogramowania. W celu wypełnienia pustki, wiele własnościowych formatów Web3D pojawiło się w następnych latach, włączając w to Microsoft Chrome i Adobe Atmosphere, z których żaden nie jest obecnie wspierany. Zdolności VRML pozostały nadal te same, podczas gdy grafika 3D czasu rzeczywistego była ciągle ulepszana. Konsorcjum VRML zmieniło nazwę na Konsorcjum Web3D i rozpoczęło prace nad następcą VRML – X3D[14].
SGI prowadził stronę internetową pod adresem vrml.sgi.com na której był czynny ciąg krótkich regularnych występów bohatera o imieniu „Floops” który był VRMLowym bohaterem w świecie VRML. Floops był tworem firmy o nazwie „Protozoa”[15][16].
H-Anim jest standardem animacji humanoidów i jest zbudowany wokół VRML, a potem wokół X3D. Początkowa wersja 1.0 standardu H-Anim została wyznaczona do zatwierdzenia na końcu marca 1998[17].
VRML wzbudził wiele zainteresowania, ale nigdy nie uświadczył wielu poważnych powszechnych zastosowań[18]. Jednym z powodów takiej sytuacji był brak dużej przepustowości sieci[19]. W czasach popularności VRML, większość użytkowników, zarówno biznesowych, jak i domowych, używało powolnego wdzwanianego dostępu do Internetu. Spowodowało to niefortunny efekt uboczny zmuszania użytkowników do długiego czekania jedynie po to by znaleźć blokowaty, źle oświetlony pokój ze zniekształconym tekstem wiszącym w pozornie przypadkowych miejscach[20].
Eksperymenty z VRML istniały głównie w edukacji i badaniach naukowych, gdzie otwarta specyfikacja jest najbardziej ceniona[21]. Jest on teraz zdefiniowany na nowo jako X3D. Profil interaktywny MPEG-4 (ISO/IEC 14496) był oparty na VRML (teraz na X3D) i X3D jest w większości zgodny wstecznie z nim.[22] VRML jest także szeroko stosowany jako format plikowy służący do wymiany modeli 3D, głównie z systemów CAD[23]. VRML mógł zniknąć z reklam i wielu głównych korporacji produkujących przeglądarki, ale nie z użycia.
Darmowy multiplatformowy pakiet uruchomieniowy VRML jest dostępny w OpenVRML. Jego biblioteki mogą być użyte do dodawania wsparcia zarówno VRML, jak i X3D do aplikacji, a wtyczka GTK+ jest dostępna do renderowania światów VRML/X3D w przeglądarkach internetowych.
W eseju zamieszczonym w Computergram International z 17 września 1998, zatytułowanym „VRML Versus Chromeffects: Microsoft Replies”, Rachel Chalmers biorąc pod uwagę oparcie ChromEffects na 56 multimedialnych znacznikach XML[24][25] ostro skrytykowała VRML jako standard pozbawiony integracji z HTML. Nie skrytykowała ona X3D (chociaż rozwiniętego zarówno z VRML, jak i XML), ponieważ X3D oryginalnie posiadał już tę integrację. Jednakże VRML przeżył Chromeffects, unieważniony w listopadzie 1998[26].
Od roku 2000, wiele firm takich jak Bitmanagement udoskonaliło poziom jakości efektów wirtualnych w VRML do poziomu jakości DirectX 9.0c, chociaż za cenę używania własnościowych rozwiązań. Wszystkie główne cechy takie jak modelowanie gry są już od dawna gotowe. Zaliczają się do nich wielościeżkowe renderowanie z niskopoziomowymi ustawieniami Bufor Z, BlendOp, AlphaOp, Stencil[27], Multiteksturowanie[28], Cieniowanie ze wsparciem dla HLSL oraz GLSL[29], Renderowanie do tekstur w czasie rzeczywistym, wsparcie dla Multi Render Target (MRT) i Postprocessingu[30]. Wiele dem pokazuje że VRML od dawna wspiera mapy świetlne, mapy normalnych, SSAO, CSM oraz odbicia środowiskowe w czasie rzeczywistym, wraz z innymi efektami wirtualnymi[31].
Przykład[edytuj | edytuj kod]
Ten przykład pokazuje tą samą scenę co X3D#Przykład.
#VRML V2.0 utf8
Shape {
geometry IndexedFaceSet {
coordIndex [ 0, 1, 2 ]
coord Coordinate {
point [ 0, 0, 0, 1, 0, 0, 0.5, 1, 0 ]
}
}
}
Zobacz też[edytuj | edytuj kod]
- Flux, darmowy edytor/przeglądarka VRML/X3D, obecnie nie rozwijany
- Konsorcjum Web3D
- Seamless3d, darmowe oprogramowanie modelujące 3D dla Microsoft Windows
- STL, STereoLithography lub Standard Tessellation Language, wspólny dla programów CAD i drukarek 3D
- Web3D
- WebGL
- WebVR
Przypisy[edytuj | edytuj kod]
- ↑ Paul Festa and John Borland – Is a 3D web more than just empty promises?. [dostęp 2009-11-12]. [zarchiwizowane z tego adresu (2009-11-12)].
- ↑ Version 1.0 Specification.
- ↑ VRML Version 1.0 Specification
- ↑ Ando Hideyuki, Kubota Akihiro, Kiriyama Takashi; Study on the collaborative design process over the Internet: a case study on VRML 2.0 specification design; Design Studies
- ↑ VRML Version 2.0 Specification
- ↑ [Carson George, Puk Richard, Carey Rikk; Developing the VRML 97 international standard; IEEE Computer Graphics and Applications]
- ↑ Dave Raggett (1994) – Extending WWW to support Platform Independent Virtual Reality.
- ↑ First WWW Conference.
- ↑ Media Machines Management.
- ↑ Peter Kennard’s page.
- ↑ Hardenbergh Jan, Bell Gavin, Pesce Mark; Course 12 - VRML: Using 3D to Surf the Web; ACM SIGGRAPH
- ↑ First 3D/VRML Plug-in for Netscape 2.0 shown by TGS; TGS extends leadership in Internet 3D products and technology. AllBusiness.com.
- ↑ VRML Browsers.
- ↑ A Commentary on GeoVRML.
- ↑ Floops general narrative.
- ↑ Floops in his first episode.
- ↑ VRML Consortium Charter for Humanoid Animation Working Group
- ↑ David Sabine: What is (was) VRML?
- ↑ Introduction to VRML.
- ↑ Ghosts in the Machine: 12 Coding Languages That Never Took Off.
- ↑ Web-Based Control and Robotics Education, page 30
- ↑ 3D Online: Browser Plugins and More
- ↑ XML Matters.
- ↑ Rachel Chalmers: VRML Versus Chromeffects: Microsoft Replies (BNET).
- ↑ Rachel Chalmers: VRML Versus Chromeffects: Microsoft Replies (CBR).
- ↑ Microsoft Debuts Chromeffects; Microsoft Shelves Chromeffects.
- ↑ DrawGroup & DrawOp.
- ↑ Multitexturing.
- ↑ Programmable shaders component.
- ↑ Scene postprocessing support.
- ↑ VRML X3D and Realtime Web3D.
Linki zewnętrzne[edytuj | edytuj kod]
- VRML w katalogu Open Directory Project
- VRML examples from the VRML Sourcebook (aby uzyskać przykładowy kod VRML, kliknij na rozdział, a następnie na przykład)
- http://www.web3d.org/x3d/content/examples/HelloWorld.wrl
- Archiwa VRML
- Dokumentacja VRML z przypisami
- Standard VRML ISO/IEC 14772 – oficjalna specyfikacja języka VRML
- Opis VRML i X3D
- Extensible 3D XML spotyka VRML
- Artykuły autorstwa Sandy'ego Resslera, niegdyś na www.about.com