1 / 41

An X3D Presentation

An X3D Presentation. Sujan Inala Uday Viyyure David Chiu. DISCLAIMER.

Download Presentation

An X3D Presentation

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. An X3D Presentation Sujan Inala Uday Viyyure David Chiu

  2. DISCLAIMER • This tutorial on X3D has been collected by the authors over the Internet and by reading research articles over the Internet for the class study purpose in ‘Distributed Multimedia Languages’. The authors do not claim any credit for this work. The sources of collection have been referred at the end of this presentation.

  3. Lecture Topics • Introduction to X3D • X3D Concepts • X3D Research and Development

  4. What Is X3D? • The X3D is an Open Standards XML-enabled 3D file format to enable real-time communication of 3D data across all applications and network applications. It combines a run-time delivery engine and VRML 97-inspired file format with XML bindings, with strong industry support for a proven standardization process.-- From Web3D Press Release

  5. X3D is a revision/replacement for VRML97. It adds the following new functionality and formalizes some extensions that have developed since VRML97 What is X3D? (Cont) • Full backwards compatibility with VRML97 • Full extensibility through Components and Profiles • Core profile is a limited subset of VRML97 for lightweight plug-ins and MPEG4 compatibility • Optional XML and binary encodings, in addition to VRML's traditional ASCII encoding

  6. What is X3D? • H-Anim - Humanoid Animation. Standardized hierarchical structure and interface for animated avatars • GeoVRML the representation of accurate real-time geographical data using VRML • NURBS - organic models described using NURBS mathematics rather than polygons thus significantly reducing filesize and increasing render optimisation • 2-way Web page communication through a multi-language scene authoring interface (SAI) • Universal Media - In-built standard media items (textures, models etc) to speed download time • Multi-texturing extensions

  7. X3D History

  8. Uses of X3D • Capabilities - Multitexture • Web3DConsortium/VirtuWorlds/Daly Realism • Capabilities - Animation3Name 3D/ Naval Postgraduate School • Capabilities - InteractivityParallelGraphics • Uses - CAD • MediaMachines • Uses - Entertainment • MediaMachines

  9. Uses of X3D (continued) • Uses - Interior Design MediaMachines • Uses - Architecture Access Development Corporation/Daly Realism • Uses - Training Parallel Graphics • Uses - Scientific Dr. Paul May,School of Chemsitry,University of Bristol, UK. • Uses - Educational Parallel Graphics

  10. Why Use X3D over VRML97? • VRML compatible • XML encoding to integrate smoothly with other applications • X3D scenes and environments operate predictably between different players • X3D is componentized • X3D authoring for any player is consistent and simpler • X3D is more feature rich • X3D is continually being enhanced and updated • X3D applications can be certified as reliable and predictable • An X3D open source conformant application is available as a developer resource • X3D binary format offers encryption (i.e. security) and compression (i.e. speed)

  11. X3D Document Structure • An X3D file is structured as defined in ISO/IEC 19775-1 • Tags are Case SeNsiTiVe • All Tags Must Close • <Tag> … </Tag> • <Tag /> • Attributes are Contained Within Quotes (" or ´) • XML Declaration • Document Type Definitions (DTD) Statement • Root Tag

  12. The structure of an X3D file • Header : The header is a single line of UTF-8 text identifying the file as an XML file, followed by the XML declaration <?xml version="1.0" encoding="UTF-8"?> • DOCTYPE : This provides both PUBLIC and SYSTEM literals for the X3D Document Type Definition (DTD) • <!DOCTYPE X3D PUBLIC "ISO//Web3D//DTD X3D3.0//EN"   "http://www.web3d.org/specifications/x3d-3.0.dtd"> • Root tag : specifies profile information and optionally schema validation

  13. EXAMPLE: <X3D profile='Immersive'>  <head>    <component name='Geospatial'/>     <component name='NURBS' level='2'/>     <meta name='description' content='X3D scene header and         prototype syntax examples. '/>     <meta name='filename' content='X3dHeaderPrototypeSyntaxExamples.x3d'/>  </head>   <Scene>    <!-- Scene graph nodes are added here -->  </Scene></X3D>

  14. X3D Profiles • Core Profile • Supports Basic Interactive 3D Scenes • VRML Profile • Full VRML97 Support • GeoVrmlProfile • Extensions from the GEO WG • X3D Extensions • Extensions to X3D/VRML

  15. Lecture Topics • Introduction to X3D • X3D Concepts • X3D Research and Development

  16. Authoring and Playback • Browser virtual world viewer user navigation • Generators • Loaders Time zero loader Loader with run time execution

  17. Scene Graph • Basic unit for x3d runtime environment • Contains objects and relationships • Root nodes • Hierarchy • Co-ordinate system • Behavior graph

  18. Run-time environment • Functions • Manages graph • Renders scene as needed • Manages life cycle of objects • Co-ordinates the processing of Events • Manages inter operation between browser and the host

  19. Object model • Individual entities of the x3d system • Two types of objects • Field object • Node object • Common Characteristics • Name , Implementation • Additional characteristics for node object • Fields , Events, Name

  20. Object model (cont..) • Ways to modify objects • Using Routes • Using Event propagation or Data flow model at run time • Programmatic access • Life cycle of objects Node is considered live if • It is a root node in the scene • It is referred by a field of a live node • It is referred by a live script to the node • External programmatic reference

  21. Event Model • Events • Primary means of generating behavior • Driving time based animations • Handling object picking • Detect user movement and collision • Routes • It is a construct to establish an event path. • connects output events of a node to input events of another. • Redundant routing path is ignored. • Execution model

  22. Core component Time component Networking component Grouping component Rendering component Shape component Geometry3d,2d components Text component Sound component Distributed interactive component Lighting component Texturing component Interpolation component Pointing device sensor component Key device sensor component Environmental sensor component Geospatial component Humanoid animation component Scripting component Component It is a set of related functionality consisting of various objects and service

  23. Flux [9] • This is used mainly for deploying web-standard graphics. • Consists of three main components. • Engine • Web tools • Media player

  24. Lecture Topics • Introduction to X3D • X3D Concepts • X3D Research and Development

  25. Status of X3D • Standardization of 3 specifications are currently pending • X3D Framework & SAI (19775-1:200X) • X3D Encodings (19776-1:200X) • X3D Language Bindings (19777:200X)

  26. xVRML [5] • XML implementation of VRML97 • Lightweight • Tightly focused on Virtual Environments • Abandons support for outside apps • No GIS support, etc

  27. Visualizing Human Consciousness [1] • Models human consciousness and contents • Uses TwinVR • Main Virtual Env (any virtual world) • Conceptual Virtual Env (abstract modeling of Main VE) • Authors modeled “Personal Construct Psychology” (G.A. Kelly, 1955)

  28. Visualizing Human Consciousness • PCP theory describes a different way to look at the world [2] • Their perception is used as data to form Personal constructs • Personal Constructs are meanings for why people are attached to people, situations, and events. • Predict or control course of events

  29. Visualizing Human Consciousness • Current method: • Repertory Grid Technique (2D grid) • Constructs are graded on a 5-to-7 point scale • Limitations of the 2D view • Real life situations are more complex • Some viewpoints are hard to visualize

  30. Visualizing Human Consciousness • The need for 3D • Architecture of consciousness is 3D • Mind’s content is a constant flow of events • These events are by nature 3D • They exist not as mental images, associations, holistic structures, etc!

  31. Behavior3D [4] • 3D Entity Behavior: • Level 0: Direct modification of entity’s attributes • Level 1: Change of an entity’s attributes over time • Level 2: Series of calls to Level 1 • Level 3: Top-level decision making

  32. Behavior3D • Problems: • X3D does not offer good support for complex behavior modeling and reuse • Behavior control demands programming knowledge • Solution: • Behavior3D is declarative - easy for authoring tools to automate code • Behavior3D should integrate or interoperate with X3D

  33. Behavior3D • Why not use X3D provided behavior control nodes? • Only cover behavior levels 0 and 1 • Insufficient for complex animations or state-based modeling of 3D scenes • Authors need to use script node to realize common 3D functionality

  34. Behavior3D • Behavior3DNode - XML language that describes behavior nodes at the development level • Behavior3D - XML language that describes these predefined Behavior3dNode elements s at the usage level

  35. Behavior3D - Java3D Implementation

  36. InTML [6,7,8] • Interaction Technique Markup Language • Formerly 3dml • Object-oriented view of 3D interaction • Abstraction: hides programming complexity • Interaction Technique reuse

  37. InTML • Addresses two main issues: • Readability • Rapid Development • Defines abstract classes of Interaction Techniques, allows its instances and VR Objects to build applications

  38. A Filter • Smallest processing unit • It takes the data received in its input ports and produces the information in output ports • It runs every frame aFilter Input Ports Output Ports

  39. Pointer Based Selection Technique selected object objects pointer position Car-Like Navigation position wheel angle gas pedal level orientation break pedal level seconds Some Filters

  40. References • [1] V. Geroimenko and L. Geroimenko, “Visualizing Human Consciousness Content Using Java3D/X3D and Psychological Techniques”, ACM Press, 2000. • [2] PCP Research Group: http://www.psyc.uow.edu.au/research/pcp/ • [3] Web3D Consortium: http://www.web3d.org • [4] R. Dachselt and E. Rukzio, “Behavior3D: An XML-based Framework for 3D Graphics Behavior”, ACM Press, 2003. • [5] The xVRML Project: http://www.xvrml.net • [6] P. Figueroa, M. Green, and H. James Hoover, “3dml: A Language for 3D Interaction Techniques Specification” • [7] P. Figueroa, M. Green, and H. James Hoover, “InTML: A Description Language for VR Applications”, ACM Press, 2002. • [8] InTML: http://www.cs.ualberta.ca/~pfiguero/InTml/ • [9] T. Parisi. “FLUX: light weight, standards-web based graphics in xml.” ACM Press.

More Related