X3DOM : Integrating 3D content seamlessly into webpage

Slides:



Advertisements
Similar presentations
A really fairly simple guide to: mobile browser-based application development (part 1) Chris Greenhalgh G54UBI / Chris Greenhalgh
Advertisements

© TMC Computer School HC20203 VRML HIGHER DIPLOMA IN COMPUTING Chapter 1 – Introduction to VRML.
Objective Understand web-based digital media production methods, software, and hardware. Course Weight : 10%
X3D Introduction to Web3D technology Enkhbold N. Information Communication University.
B.Sc. Multimedia ComputingMedia Technologies 3D Technologies for the Web.
3D on-line representations Jan Valcik → introduction, main idea → VRML 97 → building of virtual worlds → VRML 97 at work → X3D → MUDVR → animations, navigation.
Unity 3D game IDE 1.  Unity is a multi-platform, integrated IDE for scripting games, and working with 3D virtual worlds  Including:  Game engine ▪
Development of mobile applications using PhoneGap and HTML 5
XML on the Web: is it still relevant? O'Neil D. Delpratt.
Programming Tools and Applications. Programming Tools 3D systems – Maya – Blender – Unity – Ogre3D Libraries – OpenGL – Direct3D.
Declarative 3D for the Web Architecture Web3D 2012 Workshop Johannes Behr, Kristian Sons.
Computer Graphics Group Jiří Žára. Computer Graphics Group 2X3D Contents 1.Web3D Consortium 2.X3D specification 3.GeoVRML 4.NurbsVRML 2.
What is Web Design?  Web design is the creation of a Web page using hypertext or hypermedia to be viewed on the World Wide Web.
DHTML. What is DHTML?  DHTML is the combination of several built-in browser features in fourth generation browsers that enable a web page to be more.
Zubanov Alexei, 2006 Aug 07 – Sep 28 QtROOT package extension with Coin3D lib.
@2011 Mihail L. Sichitiu1 Android Introduction Platform Overview.
VRML Dr. Alun Moon What is VRML The Virtual Reality Modeling Language (VRML) is a file format for describing interactive 3D objects.
CNIT 133 Interactive Web Pags – JavaScript and AJAX JavaScript Environment.
Flash & JavaScript Mariela Hristova October 19, 2004 INF 385E – Fall 2004 – School of Information.
Silverlight Technology. Table of Contents 1.What is Silverlight Technology? 2.Silverlight Overview. 2.1 How it works 2.2 Silverlight development tools.
Web Games Programming An Introduction to Unity 3D.
1 Mpeg-4 Overview Gerhard Roth. 2 Overview Much more general than all previous mpegs –standard finished in the last two years standardized ways to support:
Interactive Client-Side Technologies MMIS 656 Web Design Technologies Acknowledgements: Estrella, S. (2003). The Web Wizard’s Guide to DHTML and CSS.
Building Rich Web Applications with Ajax Linda Dailey Paulson IEEE – Computer, October 05 (Vol.38, No.10) Presented by Jingming Zhang.
H3D API Training Part 2.1: X3D. Outline  Scene graphs  X3D – XML syntax  X3D components overview.
Session: 1. © Aptech Ltd. 2Introduction to the Web / Session 1  Explain the evolution of HTML  Explain the page structure used by HTML  List the drawbacks.
B.Sc. Digital Media3D Technologies for the Web 3D Technologies.
Interface Opportunities for 3D Data and Media User Interface Software TechNote Panel Virginia Tech CS Fall 2002 Nicholas F. Polys Umur Yilmaz Will Lee.
Plug-in Architectures Presented by Truc Nguyen. What’s a plug-in? “a type of program that tightly integrates with a larger application to add a special.
© Fraunhofer IGD Introduction and Tutorial X3DOM – Declarative (X)3D in HTML5 Yvonne Jung Fraunhofer IGD Darmstadt, Germany
Chapter 11 Adding Media and Interactivity. Chapter 11 Lessons Introduction 1.Add and modify Flash objects 2.Add rollover images 3.Add behaviors 4.Add.
WEB 3D – A PEEK UNDER THE HOOD Keerti Joshi. W HAT ’ S THE FUTURE ? Web 3.0 = ?? The Web ain't just for 2D any more !
The Web Wizard’s Guide To DHTML and CSS Chapter 2 A Review of CSS2 and JavaScript.
VIRTUAL REALITY (VR) INTRODUCTION AND BASIC APPLICATIONS الواقع الافتراضي : مقدمة وتطبيقات Dr. Naji Shukri Alzaza Assist. Prof. of Mobile technology Dean.
Understanding Web-Based Digital Media Production Methods, Software, and Hardware Objective
UFCFSU-30-13D Technologies for the Web An Introduction to Unity 3D.
Wes Preston DEV 202. Audience: Info Workers, Dev A deeper dive into use-cases where client-side rendering (CSR) and SharePoint’s JS Link property can.
SharePoint & jQuery. About me Phill Duffy – Product Manager at Lightning Tools Ltd – Author of ‘Pro SharePoint with jQuery’ – MCTS Application Developer.
Armand Rousso describe the X3D Technology
JQuery Fundamentals Introduction Tutorial Videos
DHTML.
Project 1 Introduction to HTML.
Objective % Select and utilize tools to design and develop websites.
4.01 Cascading Style Sheets
MPEG-4 Binary Information for Scenes (BIFS)
Complex Geometry Visualization TOol
Application with Cross-Platform GUI
Web3D Consortium X3DOM: Next-Generation Web3D Applications on Open Standards and Open Source Web3D Consortium
Flexible Extensible Digital Object Repository Architecture
Objective % Select and utilize tools to design and develop websites.
Flexible Extensible Digital Object Repository Architecture
CMPE419 Mobile Application Development
Prepared for Md. Zakir Hossain Lecturer, CSE, DUET Prepared by Miton Chandra Datta
JavaScript Introduction
DHTML Javascript Internet Technology.
Silverlight Technology
jQuery The Easy JavaScript Nikolay Chochev Technical Trainer
JQuery with ASP.NET.
DHTML Javascript Internet Technology.
Objective Understand web-based digital media production methods, software, and hardware. Course Weight : 10%
About Multimedia Files
XML Based Learning Environment
Javascript and JQuery SRM DSC.
Execute your Processes
Introduction to JavaScript & jQuery
4.01 Cascading Style Sheets
CNIT 133 Interactive Web Pags – JavaScript and AJAX
Web Client Side Technologies Raneem Qaddoura
CMPE419 Mobile Application Development
Web Programming : Building Internet Applications Chris Bates CSE :
Presentation transcript:

X3DOM : Integrating 3D content seamlessly into webpage Professor : Yoo Kwan-Hee Presentation by : Chheang Vuthea

Content Introduction Background Diverse Data Sources X3DOM Features Node and component Animation and interaction between HTML 5 and X3D Demo Conclusion References

Introduction X3DOM = X3D + DOM Experimental open source framework and runtime for X3D The library is written in JavaScript Implementation was initially done for discussing integration of HTML5 and declarative 3D content Goal To have a live X3D scene that can be manipulated through HTML DOM No plugins required when WebGL support is available It allows web developers to build dynamic 3D content using DHTML, AJAX and existing JS-libs like jQuery.

Background- X3D (Extensible 3D Graphics) X3D is a royalty-free open standards file format and run-time architecture to represent and communicate 3D scenes and objects using XML. Example : <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE X3D PUBLIC "ISO//Web3D//DTD X3D 3.2//EN" "http://www.web3d.org/specifications/x3d-3.2.dtd"> <X3D profile="Interchange" version="3.2" xmlns:xsd="http://www.w3.org/2001/XMLSchema-instance" xsd:noNamespaceSchemaLocation="http://www.web3d.org/specifications/x3d-3.2.xsd"> <Scene> <Shape> <IndexedFaceSet coordIndex="0 1 2"> <Coordinate point="0 0 0 1 0 0 0.5 1 0"/> </IndexedFaceSet> </Shape> </Scene> </X3D>

Background- Workflow for building and deploying X3D Content 3D Modelling: Generate 3D models and assets, compose scenes. X3D files can be generated programmatically or edited in a text editor, but often it is easiest to 'SAVE AS' or 'Export' directly from a GUI editing tool. The tools such as Blender, Maya Export VRML, Unity … Processing: Optimize content for Web publication For some applications, 3D models may need to be optimized for web publication or network sharing. This could mean reducing the mesh for faster network transmission, multiple levels-of detail or transcoding a model to a more compact encoding. Publication: Marshal scene content and Add features for device-specific display and interaction. X3DOM work well for adding features, animation and interaction.

Background- Why need to use X3D? Open source, free, and royalty-fee ISO standard Provides an Interactive and immersive 3D experience Runs on many platforms Excellent compatibility with HTML5 and other Web Standards including XML Security Efficient compressed binary encodings for high performance Compatible with other Standards Archival stability that stand the test of time

Background- X3D Run Anywhere X3D work smoothly on HTML5 so mobile devices that running HTML5 browsers can display interactive 3D objects WebGL

Background- DOM (Document Object Model) The Document Object Model (DOM) is an application programming interface (API) for valid HTML and well-formed XML documents. It defines the logical structure of documents and the way a document is accessed and manipulated. Document Example : <root> <child_1> Text_1 </child_1> <child_2> Text_2 </child_2> <child_3> Text_3 </child_3> </root> root child_1 child_2 child_3 Text_1 Text_2 Text_3

Background- Applying X3D in X3DOM When using a web browser as an X3D runtime, the focus is slightly different from the basic profiles X3D defines Scene Access Interface (SAI), but web browser readily provide DOM Browsers also readily implement scripting capabilities (JavaScript) X3DOM group proposes a new X3D profile, HTML that extends X3D-Interchange profile Browser X3D Browser X3D SAI DOM X3DOM integration model

Diverse data sources Geospatial data Terrain Imagery Buildings Simulation/design Visualization of abstract information Experiencing Cultural Heritage data in 3D Virtual Engineering Medical …

X3DOM Features Support for loading and displaying X3D models Manipulation of the scene via DOM HTML events (onclick, onmousemove, onmousedown or onmouseup etc.) on 3D objects Support for large meshes (>65k indices per mesh) Textures (images and movies) and sound Transparency, fog and shadows Multiple light sources (spot, point, directional) Animations (mesh, camera) We can customize X3DOM content with own CSS by overriding X3DOM’s default CSS (External, Internal or inline) or define new id into X3DOM node.

Node and Component - Node represents a certain part or aspect of the scene. <x3d width="500px" height="500"> <scene> <shape> <appearance> <material diffuseColor="1 0 0"></material> </appearance> <box></box> </shape> </scene> </x3d> Node - Component is a group of nodes that serve a common purpose.

Animation and Interaction between HTML5 and X3D X3DOM provides some generic interaction methods that make easy for interacting HTML5 with X3D. Interactive Object will handled by HTML-like event. So we can handle event with JavaScript for making object X3D to have animation and interaction. Navigation Mode Viewpoint Animating Objects with Routes Hiding and switching visible nodes Transformations Picking Objects

Demo Result Load X3DOM Library Embedded X3D Content <!DOCTYPE html> <html> <head> <title>X3DOM</title> <script type='text/javascript' src='http://www.x3dom…'> </script> <link rel='stylesheet' type='text/css' href='http://www.x3dom.org…'/> </head> <body> <x3d width="500px" height="500"> <scene> <shape> <appearance> <material diffuseColor="1 0 0"></material> </appearance> <box></box> </shape> </scene> </x3d> </body> </html> Result Embedded X3D Content

Conclusion X3DOM is a new approach and integration architecture, making declarative 3D as simple as text, video, and sound on a web. It supports the integration of X3D content directly into the HTML DOM tree. The architecture utilizes existing standards (WebGL) and web technologies from the existing browser architecture.

References http://www.x3dom.org/ http://doc.x3dom.org/ http://www.web3d.org/ https://en.wikipedia.org/wiki/X3D http://www.slideshare.net/jsalonen/x3dom-an-overview-and-examples?qid=db8b9080-40ef-4f8f-ae52-4e198d78da77