Presentation is loading. Please wait.

Presentation is loading. Please wait.

1GR2-00 GR2 Advanced Computer Graphics AGR Lecture 10 VRML - An Introduction.

Similar presentations


Presentation on theme: "1GR2-00 GR2 Advanced Computer Graphics AGR Lecture 10 VRML - An Introduction."— Presentation transcript:

1 1GR2-00 GR2 Advanced Computer Graphics AGR Lecture 10 VRML - An Introduction

2 2GR2-00 Good Ideas are Simple n Realization 1: – Hypertext + Internet = World Wide Web n Realization 2: – Adding images makes pages more interesting n Realization 3: – Images are pictures taken by the publisher - why not send 3D scenes and allow the user to take the picture! n VRML: Virtual Reality Modelling Language – a language to describe 3D worlds - for the Web

3 3GR2-00 World Wide Web Pages AUTHORING PROCESS HTML file server INTERNET client WEB BROWSER text/ html.html MIME type

4 4GR2-00 VRML AUTHORING PROCESS VRML file server INTERNET client VRML BROWSER x-world/ x-vrml.wrl Major browser: CosmoPlayer

5 5GR2-00 Advantages of VRML n Transferring a 3D model - rather than a 2D image - to the browser has great advantages – viewer can choose how to look at the model - or world – viewer can navigate the world – file size can often be much less

6 6GR2-00 How Did It All Begin? n Original brainwave – Mark Pesce and Tony Parisi - early 1994 – vision of a VR interface to the Web n VRML 1.0 – practical realisation based on Open Inventor (Silicon Graphics toolkit - similar to OpenGL but higher level) – Open Inventor file format PLUS hyperlinks – static, non-interactive worlds – Gavin Bell (SGI) - late 1994

7 7GR2-00 Where are we now? n VRML97 dynamic – adds object behaviours and interaction to allow creation of dynamic worlds – ISO standard - December 1997 – Gavin Bell, Rikk Carey (ex-SGI) and Chris Marrin (SGI) n 2000 – being reworked as XML (X3D) – many new developments

8 8GR2-00 A VRML File VRML file consists of: n header n nodes – objects such as cylinders and spheres – operations such as transformations n fields – parameters of nodes #VRML V2.0 utf8 Shape { geometry Cylinder { radius3 height6 } }

9 9GR2-00 As Seen By A Browser #VRML V2.0 utf8 Shape { geometry Cylinder { radius2 height4 }

10 10GR2-00 Adding Colour to the Scene #VRML V2.0 utf8 Shape { geometry Cylinder { radius2 height4 } appearance Appearance { material Material { diffuseColor 1 0 0 specularColor1 1 1 } }

11 11GR2-00 Co-ordinate Systems n Each node is drawn within its own local co-ordinate system.. x z y

12 12GR2-00 Modelling Transformations n...and can be subjected to a modelling transformation to scale, rotate, translate n Transform is a VRML node - treated just like an object n It applies to a group of children nodes #VRML V2.0 utf8 Transform{ scale5.0 0.5 1.0 children [ Shape { geometry Cylinder { radius2 height4 } appearance Appearance { material Material { diffuseColor 1 0 0 specularColor1 1 1 } } } ] }

13 13GR2-00 Hierarchical Structure #VRML V2.0 utf8 Transform{ scale5.0 0.5 1.0 children [ Shape { geometry Cylinder { radius2 height4 } appearance Appearance { material Material { diffuseColor 1 0 0 specularColor1 1 1 } } } ] } TRANSFORM SHAPE parent child

14 14GR2-00 Hierarchical Structure n This generalises to allow nodes to appear in a hierarchy scene graph n This is known as the VRML scene graph TRANSFORM SHAPE TRANSFORM SHAPE

15 15GR2-00 Transformations n Here we see Cylinder, Sphere and Cone nodes n Each has been subjected to a modelling transformation in order to position them

16 16GR2-00 Instances n A node can be given a name and then used multiple times - with different transformations applied to each n DEF kwb Shape {...} gives it a name n USE kwb allows it to be included at other points in the scene graph

17 17GR2-00 Anchors n A piece of geometry can act as a link to another URL

18 18GR2-00 Textures n Texture mapping: Images can be mapped to geometry to provide texturing n VRML looks like: Shape{ geometry Sphere { } appearance Appearance{ texture ImageTexture{ url http://..../kwb.gif}

19 19GR2-00 Polygonal Surfaces n The general primitive for drawing polygonal surfaces is: – IndexedFaceSet – coord field lists the points – coordIndex describes the polygons Shape{ geometry IndexedFaceSet { coord Coordinate { point [ 17.5 11.2 -1.2, 17.5 15.0 -1.2, … ] } coordIndex [ 0 1 2 3 -1, 4 1 0 5 -1, …] }

20 20GR2-00 Lights n VRML includes: – DirectionalLight – PointLight – SpotLight n Note # sign is a comment Example: PointLight{ onTRUE intensity0.75 color1 0 0 #red location0 0 0 radius100 }

21 21GR2-00 Viewing n Specified via the Viewpoint node n VRML file can have a number of Viewpoint nodes - browsers allow a user to jump from one viewpoint to another n Orientation = axis + angle of rotation Example: Viewpoint { position0 0 5 orientation 0 0 1 0.3 descriptionfrontview }

22 22GR2-00 Other Basic Features n Inline node – incorporate VRML code from another url compose – this allows us to compose large worlds from many smaller ones n Level of Detail – different geometric representations depending on distance

23 23GR2-00 Information About VRML n Web3D Consortium – http://www.web3d.org – links to specifications and resources n Web3D Information – http://web3d.about.com/compute/web3d n Leeds University VRML/Java3D Information Centre – http://www.scs.leeds.ac.uk/vrmljava3d n VRML Repository – http://www.sdsc.edu/vrml/

24 24GR2-00 n Range of books now available – The VRML 2.0 Handbook (Addison Wesley) Jed Hartman and Josie Wernecke http://vrml.sgi.com/handbook – The Annotated VRML Reference Book (Addison Wesley) Rikk Carey and Gavin Bell http://www.best.com/~rikk/Book/ n Tutorials include: – Floppys guide: www.vapourtech.com/vrmlguide Books and Tutorials


Download ppt "1GR2-00 GR2 Advanced Computer Graphics AGR Lecture 10 VRML - An Introduction."

Similar presentations


Ads by Google