VRML virtual reality modeling language
Embed Size (px)
description
Transcript of VRML virtual reality modeling language

VRML
virtual reality modeling language

what is it?
• standardised (sort of) notation for virtual reality over the web
• text file (use normal text editor)
• bit like a programming language
• also special world building software

how do you use it?
• you need a VRML viewer– Netscape/IE plug-in– stand alone VRML viewer
• and a world– find one on the net– write your own!

interactivity over the web???
• 'world' is downloaded
• interaction is local– moving within the world
• links to the web?– can be linked to from web pages– active objects link back

versions
• VRML 1.0 first version 'static' worlds - only viewpoint changes
• VRML 2.0 animated objects in world tidying up etc.
N.B. VRML browsers highly inconsistent

VRML file format
• filename (URL) ends ".wrl”– c.f. .html, .gif, .jpg etc.
• VRML 1.0 first line: #vrml 1.0 ascii
• VRML 2.0 first line: #vrml 2.0 utf8
• can have binary versions too

contents of VRML file
• one or more nodes– general format
DEF object objecttype { fieldname value . . . }
– or simply: objecttype { fieldname value . . . }

types of nodes
• objects that appear in the world– e.g. sphere, cone, cube etc.
• nodes that alter subsequent objects– e.g. texture, color, transformations
• nodes that group other nodes– also limit the effect of transformations etc.

Examples
When you are looking at a virtual world in Netscape you can use:
View Menu - Page Source
and similar commands in other browsers.

sphere
#VRML V1.0 ascii
Sphere { radius 1}

add colour
#VRML V1.0 ascii
Separator { # groups things together Material { diffuseColor 1.0 0 0 # red green blue } Sphere { radius 1 }}

or texture map an image
#VRML V1.0 ascii
Separator { Texture2 { filename "big_alan.jpg" } Sphere { radius 1 }}

a cone
#VRML V1.0 ascii
Separator { Material { diffuseColor 0 0 1 # bright blue } Cone { height 3 }}

put them together ...#VRML V1.0 ascii
Separator { Separator { # for sphere Texture2 { filename "big_alan.jpg" } Sphere { radius 1 } } Separator { # for cone Material { diffuseColor 0 0 1 # bright blue } Cone { height 3 } }}

transform ...
… Sphere { radius 1 } ... Transform { translation 4 2 0 # 4 to the right and 2 up }…Cone { height 3 }…

putting bits together
simply several cuboidstexture mapped with wood grainand with a photo.

again and again
WWWAnchor { name "http://www.hiraeth.com/alan/" description "Alan's home page" WWWInline { name "alan.wrl” } }
• include other VRML files
• add hyperlinks