220 likes | 373 Views
Scope. ROOT. Light Source. Transform. Transform. Sphere. Sphere. Light Source. 3D on the Web.
E N D
Scope ROOT Light Source Transform Transform Sphere Sphere Light Source
3D on the Web • If you want any kind of special lighting effect on a surface, such as a spotlight with a soft edge, that surface will have to have many vertices on it and be made up of many faces, as VRML only does lighting at each corner. • This is a very important thing to remember. If you have a light shining on the middle of a large surface, you will not get the effect you want.
3D on the Web • Just as HyperText Markup Language (HTML) led to a huge increase in the use of graphics on the Internet by implementing a graphical interface • The VRML Consortium intend to add the next level of interaction, structured graphics, and extra dimensions (z and time) to the web • The VRML consortuin was created in 1994 • It has created a standard for a Virtual Reality Modeling Language (VRML) • often pronounced 'vermal’ • ISO Standardised in 96, (ISO VRML97)
History • In 1994, Tim Berners-Lee invited Mark Pesce to present a paper at the First International Conference on the World Wide Web • Pesce and partner Tony Parisi had developed Labyrinth, a prototype three-dimensional interface to the Web • His presentation sparked a consensus: the conference attendees agreed there was a need for a common language to specify 3D scene descriptions • Brian Behlendorf set up an electronic mailing list to facilitate discussion of the specification for VRML
History • Within a month, there were over a thousand members • The list membership quickly agreed upon a set of requirements for VRML: • platform independence • extensibility • ability to work over low-bandwidth (14.4 kBps modem) • After much deliberation, the proto-VRML community selected the Open Inventor ASCII File Format from Silicon Graphics, Inc. as the basis of VRML • Some of the leading technical experts on the VRML mail list formed the VRML Architecture Group (VAG) in 95
Members • The Web3D Consortium has 42 Corporate Members, 10 Charter Members, 12 Voting Members and 20 Non-Voting Associate Members • Microsoft Corporation, Apple Computer, Silicon Graphics, Inc., Sony Corporation, Hewlett-Packard, Philips Electronics, Sun Microsystems etc
Virtual Reality Modeling Language • The Virtual Reality Modeling Language (VRML) is a file format for describing interactive 3D objects and worlds • Conceptually, each VRML file is a 3D time-based space that contains graphic and aural objects that can be dynamically modified through a variety of mechanisms • VRML is designed to be used on the Internet, intranets, and local client systems
Virtual Reality Modeling Language • A characteristic of VRML files is the ability to compose files together through inclusion and to relate files together through hyperlinking • e.g consider the file earth.wrl specifies a world containg a sphere representing the earth • It may also contain references to a variety of other VRML files representing cities on the earth (e.g., file paris.wrl) • earth.wrl defines the coordinate system in which all cities reside • Each city file defines its own world coordinate system that the city resides in that becomes a local coordinate system when contained by the earth file
Virtual Reality Modeling Language • Hierarchical file inclusion enables the creation of arbitrarily large, dynamic worlds • Therefore, VRML ensures that each file is completely described by the objects contained within it • There are various objects and mechanisms built into the language that support multiple distributed files, including: • in-lining of other VRML files; • hyperlinking to other files; • using existing Internet and ISO standards for other file formats; • defining a compact syntax
Characteristics of VRML • VRML is capable of representing • Static and animated dynamic 3D • multimedia objects with hyperlinks to other media such as • text • sounds • movies • images • VRML browsers, as well as authoring tools for the creation of VRML files, are available for a number of different platforms • See links on last slide
VRML and Time • The browser controls the passage of time in a world by causing TimeSensors to generate events as time passes • Specialized browsers or authoring applications may cause time to pass more quickly or slowly than in the real world, but typically the times generated by TimeSensors will approximate "real" time • A world's creator should make no assumptions about how often a TimeSensor will generate events but can safely assume that each time event generated will have a timestamp greater than any previous time event.
VRML Light • Shape nodes are illuminated by the sum of all of the lights in the world that affect them • This includes the contribution of both the direct and ambient illumination from light sources • Ambient illumination is from the scattering and reflection of light originally emitted directly by light sources • The amount of ambient light is associated with the individual lights in the scene • The following node types are light source nodes: • DirectionalLight • PointLight • SpotLight
Sensor nodes • VRML contains the following concepts of sensors: • Environmental sensors • Pointing-device sensors
Environmental sensors • The ProximitySensor detects when the user navigates into a specified region in the world • The ProximitySensor itself is not visible • The TimeSensor is a clock that has no geometry or location associated with it; • it is used to start and stop time-based nodes such as interpolators • The VisibilitySensor detects when a specific part of the world becomes visible to the user • The Collision grouping node detects when the user collides with objects in the virtual world
Pointing-device sensors • Pointing-device sensors detect user pointing events such as the user clicking on a piece of geometry • i.e. TouchSensor • A pointing-device sensor is activated when the user locates the pointing device over geometry that is influenced by that specific pointing-device sensor
Navigation • Conceptually speaking, every VRML world contains a viewpoint from which the world is currently being viewed • Navigation is the action taken by the user to change the position and/or orientation of this viewpoint thereby changing the user's view • This allows the user to move through a world or examine an object
Navigation • The browser may allow the user to modify the location and orientation of the viewer in the virtual world using a navigation paradigm • Many different navigation paradigms are possible, depending on the nature of the virtual world and the task the user wishes to perform • e.g. a walking paradigm would be appropriate in an architectural walkthrough application, while a flying paradigm might be better in an application exploring interstellar space
Further reading • The information in this lecture is extremely changeable so you must access the web for further reading • http://www.vrml.org/faq/faq.html • http://www.vrml.org/Specifications/VRML97/ • http://www.sgi.com/Technology/Inventor/ • http://www.hyperreal.com/~mpesce/ • http://www.ch.ic.ac.uk./talks/www94_report.html • http://www.vrml.org/vag
Further reading VRML 1.0 • Standard objects (cube, sphere, cone, cylinder, text) • Arbitrary objects (surfaces, linesets, pointsets) • Ability to fly through, walk through, examine scenes • Lights • Cameras (viewpoints) • Textures on objects • Clickable links • Define and reuse objects VRML 2.0All of VRML 1.0 plus • Animated objects • Switches • Sensors • Scripts (Java or JavaScript) for behaviors • Interpolators (color, position, orientation, etc.) • Extrusions • Background colors and textures • Sound (.wav and MIDI) • Animated textures • Event routing • Define and reuse objects and behaviors and effectively add new nodes to the language with PROTO and EXTERNPROTO