TVR 3101 VIRTUAL REALITY

FACULTY OF INFORMATION TECHNOLOGY

MULTIMEDIA UNIVERSITY

Assignment 1

due Mon 7th January, 2002

Prepared for Mr. Wong Ya Ping

By :

Akmal Lotfi bin Ahmad / 1991151421
Farul Izani bin Zanal / 98102819
Raymond Sim Mong Kiang / 1991142431
Sarbini Hamdan / 98102320


7.5.1 INTRODUCTION

At the dawn of innovative solutions and visions, new technological barriers are constantly shifting, encompassing what was previously deemed unattainable. In creating compelling content for today’s Internet, access to powerful graphics capabilities is crucial. The video power in a typical PC currently rivals that of supercomputers from just a few years ago; but until recently, only standalone game developers have been able to access this power. For a web-based application to be able to deliver the same sort of graphical sophistication that standalone titles have been able to produce, there are new frontiers that have been emerging in vast varieties and exciting possibilities.

As technologies are expanding, existing VRML standards can no longer support future demands. As developers can see, VRML suffers a lot of problems. For instance, VRML have the problems of scalability. In order to produce realistic worlds, thousands of polygons would be needed. The more complex are the scenes, the more bandwidth is required to transfer the world and its related objects to the browser. This problem increases when complex textures are used in the scene. Here, there is a great need of having a streaming technology where important data can be downloaded first and the view can be constructed on-time. In the meantime invisible parts of the world can be streamed while the user explores the visible area first. Furthermore, another area where VRML lacks is interactivity. While the language allows for the description of the scene, it doesn’t contain information on the reaction of objects within the scene to events which occur. This was a decision taken in order to streamline the initial design and implementation of VRML, and as the system develops more complex interaction is envisaged.

The overall future of 3D graphics on the WWW seemed assured. Marketers in particular find that customers can now examine products online much more easily if they can manipulate the objects, see them from many angles, and close up. There are also major advantages in the areas of science and education.

However, what form that 3D graphics will take is not yet clear. VRML was the early standard but is no longer a clear winner. Some systems offer a mixture of VRML and other proprietary products while others don't use VRML at all. The VRML consortium has recognized this and has morphed into the Web3D consortium. It is developing X3D, an XML variant of VRML which uses a part of VRML as a core subset which can then be extended in various ways with proprietary products so that the operation and file formats will remain interoperable. We will discuss it later in the chapters.

7.5.2 CURRENT EXISTING TECHONOLOGY DEVELOPMENTS

There are various companies and organizations, with proprietary methods and tools, supporting streaming 3D. As such, the universal standard has not been agreed upon, nor has any organization’s solution has been favored over the rest. Below we list some of the popular architecture around.

PURE JAVA WEB 3D SOLUTIONS

Pure Java solutions require no plugins. Basically the content and the player application in a form of a Java applet is downloaded when a user accesses a webpage, providing a pure java web 3D. Examples of this are Anfy3D, 3DAnywhere and Shout3D.

WILD TANGENT Inc

Wild Tangent Inc is the brainchild of Microsoft’s DirectX creator, Alex St. John. Its web driver technology has been voted by Newsweek as "One of Five Technologies in 2001 that could change your life" due to its part in making broadband experiences via narrowband connections, a reality. It can give access to DirectX hardware acceleration via any scripting language.

The Wild Tangent Web Driver uses DirectX-based architecture to utilize most graphics cards capabilities. Web Driver API allows creating applications using various language platforms, such as Java, JavaScript, VB, C and C++. For streaming purposes, the Web Driver’s file compression and streaming capabilities splits apart the components of a multimedia presentation and send them through the internet.

OPENGL IN JAVA (OPENSOURCE)

GL4JAVA library (free software) is an OpenGL binding for Java. The GL4JAVA API maps native C++ OpenGL functions to the Java language and provides fast access to 3D accelerators from Java. GL4Java maps the complete OpenGL 1.3 and GLU 1.2 API and implements window handle functions (native and java), while using the Java-Native-Interface (JNI) of Java or the JDirect-Interface of MS-JVM. Its cross-platform architecture supports Win32, X-Window, Mac. GL4JAVA has been developed under Open Source Model since 1997 and has become over the years a serious and stable API. It comes without warranty nor user support.

OpenGL vs. JAVA 3D

GL4JAVA is an OpenGL binding and provides nothing else than access to OpenGL/GLU commands. GUI management and toolkits like GLUT, texture management, etc. are also provided. For the near future hopefully we can support a higher level scene graph (SG) API like VRML or 3DS. Java3D is a multipurpose closed source scene graph API relying on DirectX and OpenGL. Java3D provides parsers for loading objects, functions to manipulate scene objects, such as texturing, morphing and so on. Because of Java3D's multipurpose nature, it contains much functionality and thus contains an important amount of code, which many parts of it remain unused because they aren't in the field of a programmer’s purpose. This makes the API heavy and long to load. But then the display speed performs reasonably.

On the other hand Java 3D is much easier to use because it is a high level API. For example, to do a morph in Java3D, create a morph node, load the geometry targets inside it, and set the morph amount between the targets. Using plain OpenGL for a 3D morphing, every vertex of the geometry has to be computed. Using plain OpenGL, you have to code your own file parser and display your object, polygon per polygon. This is an important work and it takes time. More, OpenGL is very specific and thus it's quite hard to learn, often requiring a good knowledge of math. But in the end a programmer would have coded only what is needed and the program can be very small and be fully optimized (requires intelligent use of OpenGL though).

As a conclusion, if time and performance are not really top criteria, and for an easier mathematical route, the available, well-functional SCENEGRAPH environment, e.g. Java3D, can be used. If performance is critical (such as for games), use plain OpenGL.

STAND-ALONE BROWSER

Schmoozer is both a 3D Virtual Reality / Distributed Virtual Environment application authoring tool and a run-time environment for multi-user VR's and DVE's. It is not a Browser, it's a Schmoozer.

Schmoozer is a framework built on top of Mitsubishi Electric's Open Community, a multi-user API and set of network protocols, including the Interactive Sharing Transfer Protocol (ISTP), an open standard proposal developed by Mitsubishi Electric ITA.

Schmoozer is both an authoring environment and a run-time environment. The most important ingredient in VRs and DVEs is that they are extensible by users as they are used and while they are running. In using Schmoozer, users may extend the environments they create either by themselves or collaboratively with other users who are connected into the same environment.

CYCORE CULT3D

The Cycore Cult3D solution is impressive for E-commerce because it supports all major Web browsers (including Opera), and unlike many of the other Web 3D solutions, there is both a Macintosh- and Linux-compatible plugin available. Support is included for placing 3D into both Microsoft Office applications and Adobe Acrobat documents.

Cult3D objects tend to have very high quality rendered surfaces and the feedback from the keyboard or mouse is very responsive. A well developed product, Cycore has created numerous support tools including a 3D Studio Max 3.0 exporter. The business model for Cycore is that the software download for Cult3D Designer 5 is free, but there are usage license fees ranging from $360 to $3600 or more. The download plug-in ranges from 700KB to 982KB

EXTENSIBLE 3D FORMAT (X3D)

Even though still in its formative stages, the Extensible 3D format (X3D) sought to finally address the limitations of the existing VRML97 and 2.0 specifications. The benefits of X3D lie in its open architecture and its extensibility by nature. This provides a stable common framework to allow individual developers to build application-specific extensions while retaining basic functionality. This would simplify distribution of Web applications, browser plug-ins, and even developer tools because a development package could add new feature sets much as Photoshop gains functionality via new filters or plugins. Currently, every publisher has to essentially rewrite their development code to incorporate the features they want, and then their tools won't work with other developer tools directly.

Based on response to a 1999 Web3D.org survey (www.Web3D.org), the primary target applications for X3D are e-commerce product and technology demonstration, visual simulation, database visualization, multi-user, games and entertainments, advertising and web page animation, augmented news and documentation, training, virtual characters, education, art galleries and augmented reality. An important aspect of X3D is its ability to run VRML97 files at 100% compatibility. Another important feature is its tight integration with XML, allowing access to an additional range of functionality without weighing down the 3D features. X3D will be backward compatible with VRML and will also be compatible with MPEG-4 and HTML NG.

Examples of X3D syntax include:

VRML 97 : DEF MyView viewpoint { position 0 0 10 }

XML : <viewpoint id='MyView' position='0 0 10' >

Another example:

<transform id="NameOfTransform" bboxcenter="0 0 0"

bboxsize="4 4 4" translation="10 5 0" rotation="0 0 0 1"

scale="0.5 0.5 0.5"

scaleOrientation="0 0 1 0" center="0 0 0" >

...

</transform>

As we can see, the X3D format follows closely the syntax convention of XML, providing the ease of content creating.

7.5.3  THE NEED OF 3D WEB DEVELOPMENTS

Business and E-Commerce

In the business world, 3D use includes both E-commerce and pre-commerce (such as manufacturer product data sheets). For example, Nikon, Toyota, Volvo, and JVC chose the Cult3D solution from Cycore to create Web-based virtual product images that can be rotated in all directions. Nikon chose Cult3D software to deliver an online virtual 3D model of their D1 camera, viewable from any angle or resolution.

Market specialists found out that on giving customers the ease of examining products online where they can manipulate the objects, change the view to every angles possible and doing close up would boost the attraction. For example StyleClick now displays 10% of its products in 3D and Sharper Image notes that the 3D views have pulled in 300% more people than before and people spend 50% more time in the 3D areas. An official notes that "now we can finally offer something on the web that is clearly superior to a catalog".

Streaming 3D

Building a high quality 3D presentation would require a large quantity of data, which in turn requires much download for the user. Users have to wait for some while for the 3D world to load fully, and this is indeed tedious and cumbersome. Therefore there is a need for streaming technology to take place in the whole 3D web experience.

MetaStream is promoting a new 3.0 version of its streaming 3D Web technology that is intended for E-commerce, however there are only a few practical examples exist. Potential customers have likely been waiting to see what happens while the company recovers from the ashes of financial woes experienced by its parent, MetaCreations.

WebGlide provides a mixture of 3D and video (similar to Apple's QuickTime VR), combining "showrooms" rendered in 3D with video feeds of products, combined with a shopping system. RealNetworks invested heavily in the company and is distributing the RichFX Player to its more than 115 million RealSystem G2 users starting in May. Using proprietary "RichFX" technology, WebGlide compresses scalable video to as little as 1 percent the size of a comparable MPEG file, while retaining pan/zoom features.

3D in Vector Form

The most popular technology on the Web is arguably Macromedia's Flash and Shockwave (the distinction between the two depends on whether the files are authored in Flash, or in Director/Authorware). While not really a 3D format, clever animators have painstakingly exported 3D animation to vector frames to create some stunning examples of 3D that load up to 100 times faster than a VRML environment. The 3D Virtual Pool game found on Macromedia's Shockwave.com site, although not a VRML application, shows off this technique in startling detail and capability.

To simplify the potential of this approach, a new company called Electric Rain has released a truly revolutionary product called Swift 3D that allows you to create simple animations with 3D primitives, materials/textures, and lighting, as well as text. Swift 3D imports 3DS models, and Adobe Illustrator and EPS vector files. What makes this such a cool application, however, is that it exports its files as vector-based Flash format files. You can even edit the resulting files in Flash to add static backgrounds, MP3, interactivity, or whatever. Presumably, support will follow for the developing SVG (Scalable Vector Graphics) standard. This technology can be used for building games, Web sites, or anything that you've seen done with ultra-compact Flash files, but now it can be in 3D.

Bandwidth has always been a limiting factor for Internet applications and vector graphics programs like Macromedia's Flash and Adobe's LiveMotion have made it possible to have much more happening on a Web site while utilizing less bandwidth.

Entertainment

Online 3D gaming has long been a desirable "killer application" for VRML proponents, but has suffered from the lack of support from gaming companies. While various kinds of VRML games exists, with an average 56K modem, the game takes three minutes to load the application and first screen, then another 40 seconds before the gameplay itself.

An exciting new option for Web 3D gaming from Flatland adapts VRML for its own HTML-like language. The technology called "3DML" creates, or "describes" Internet-ready three-dimensional SPOTs (miniature VR worlds). Flatland's 3DML has many advantages, including the fact that much of the syntax for 3DML will be familiar to those who already know basic HTML. And more importantly, 3DML is unique because it allows you to build a 3D space on the Web without doing any 3D modeling.