M3D (Media 3D) A new programming language for web-based virtual by isp11018


									                                             M3D (Media 3D)
      A new programming language for web-based virtual reality in
                                    E-Learning &Edutainment

                                       Sepideh Chakaveh, Detlef Skaley,
                                    Patricia Lainé, Ralf Haeger, Soha Maad
                               Interactive Television Competence Center (ITV)
              Fraunhofer Institute Media Communication, St.Augustin, D-53754 Germany

Today, interactive multimedia educational systems are well established, as they prove useful instruments to enhance
one's learning capabilities. Hitherto, the main difficulty with almost all E-Learning systems was latent in the rich
media implementation techniques. This meant that each and every system should be created individually as reapplying
the media, be it only a part, or the whole content was not directly possible, as everything must be applied mechanically
i.e. by hand. Consequently making E-learning systems exceedingly expensive to generate, both in time and money
terms. Media-3D or M3D is a new platform independent programming language, developed at the Fraunhofer Institute
Media Communication to enable visualisation and simulation of E-Learning multimedia content. M3D is an XML-
based language, which is capable of distinguishing between the3D models from that of the 3D scenes, as well as
handling provisions for animations, within the programme.
Here we give a technical account of M3D programming language and briefly describe two specific application
scenarios where M3D is applied to create virtual reality E-Learning content for training of technical personnel.

Keywords: VR, Internet Programming Language, 3D Visualisation, XML, JAVA3D, SMIL, E-Learning,

                                              1. INTRODUCTION

Nowadays, Virtual Reality (VR) is regarded as technically well advanced. Technology alone, however can be of little
use when appropriate application scenarios are not considered. Moreover E-Learning & Edutainment are new
terminologies with gradually gathering acceptance as they evolve into wide spread applications areas in the field of
information technology.
Hitherto, the inherent problem with almost all E-Learning systems was latent in content implementation processes.
This meant that each and every system should be created individually, as reapplying the content, be it only a part, or
the whole courseware was not possible. Hence creation of E-Learning systems was regarded as very cumbersome and
costly to generate.
M3D is a new programming language, which creates interactive 3D Learning Content (LC) from any rich media using
virtual reality techniques. This is both an innovative method to aid learning more effectively, as well as providing safe
training practices where otherwise one could face hazardous operations or tasks.

                                                    2. CONCEPT

M3D is a XML & JAVA3D based language, enabling an author with no or very little previous knowledge of JAVA
programming, to define 3D Learning Objects (LO) with physical attributes. The 3D LCs are displayed through a
Java3D-Applet, which is also launched through some HTML web site when accessed on the Internet. One of the
M3D´s advanced capabilities is to distinguish between 3D- models and the 3D- scenes. In addition M3D caters for
animations as well as simultaneous audio, video & text presentations. Here externally created or imported 3D object
modules are deposited through an object library that can be both accessed and extended further when necessary. A
large number of 3D data formats such as CAD objects, 3DStudioMax etc. can be directly imported into M3D.
As for the scene definition, some tree-like structure similar to VRML or X3D languages is designed in the
programme. To cater for parallel animations or any other functions, a SMIL type structure is also implemented.
Finally one of M3D´s exclusive attributes is its provision to accommodate author defined simulation interfaces within
the scene.

                                                    3. METHOD

This section describes the technical features of the M3D language:
    •    The structure of the language;
    •    Model building in M3D;
    •    The future research agenda for authoring M3D and porting it to an ITV platform.
3.1 The structure of M3D language
M3D can be conceived as an XML based authoring of Java 3D. It is targeted for use by non-expert programmers
having graphic design knowledge capabilities.
The XML based M3D language consists of five main tags that embraces other nested corresponding tags, which
    •    General tags (2 tags): these tags identify the M3D mark-up language and differentiate it from other extended
         mark-up languages (<M3D>---- </M3D). The general tags also include tags for comments.
    •    Global data tags (7 tags): these tags gives a high level description of the features of the model developed
         using M3D, such as the browser setting, the imported files, the model directory path, the external scene files,
         the components used, the main scene description, and the actions involved in the model.
    •    The component definition tags (2 tags): these tags identify a component in terms of its geometry.
    •    The scene definition tags (7 tags): these tags identifies a scene in terms of its branch groups, its 3D
         transformation, its 3D shapes, the geometries included in the scene, the appearances of objects in the scene,
         the 3D font of texts in the scene, and the defined action buttons corresponding to this scene.
    •    The action tags (18 tags): these tags help in defining the potential actions that can be applied to the objects in
         the scene. These actions include: parallel and sequential actions, translation, rotation, scaling, set transform
        parameters, set camera position, move camera, pause, execute action, stop action, playing a background
        sound, show/hide, set material, modify material, and simulation.
Figure 1 depicts a similarity between the XML based M3D language and Java3D. This similarity highlights the XML
authoring features of Java3D provided by M3D.

           <External Scenefile="obj1.3DS"                                       Virtual Universe
                    <!—A comment -->
           <Component def="Druck_comp">
           <Shape3D useExternal="Druck"/>                                                    local
                 <Material specularColor="0 0
                </Appearance>                                               BG                BG

           <Scene def="demo">
                                                                  Shape 3D
             <Transform def="Test01">                               node
             <Shape3D                                                                         TG
           useExternal="Druck_comp"/>                                       S                          View
              </Transform>                                                                           Platform
                                                                                                     3D scene
           </Scene>                                            appearance              geometry

                      M3D Scene Description                             Java 3D Scene Graph

                                        Figure 1. Creation of Java3D using M3D

3.2 Model building in M3D
The steps for model building in M3D, for example in the case of industrial training content, consists of creating the
geometry of machines using a graphical package (e.g. StudioMax, CAD, or VRML) and writing an M3D script for the
machine description. The geometry of the machine may be formed of different components. Two types of files are to be
created. The components files and the scene file. The components files are imported to the scene file. Note that we
may import several components files, however a model is based on a single scene file. The component files hold the
M3D description of the components geometry. The scene file stores information related to the interactivity features
applied to the components. Figure 2 illustrates the M3D model building process.
                  Get the Geometry                Build M3D script                     Add the
                        of the                      consisting of                    interactivity
                  components in a                 components and                       features
                      particular                     scene files

                                        Figure 2. Steps For Model Building in M3D

3.3 Future research agenda
Ongoing development of the M3D language involves bringing the level of authoring further ahead. An authoring tool
for M3D is under development. More technical details of this tool are elaborated in section 4 of this paper. The
authoring tool features non-expert programmers and relies on drag and drop techniques to realise the full functionality
of the M3D language.
Two authoring levels are identified in our product development, a primary authoring level and a secondary one:
    •    The primary authoring level designates the capability of using M3D to author JAVA3D.
    •    The secondary authoring level designates the capability of authoring M3D through an M3D authoring tool.
Porting M3D to an ITV platform is an ongoing project that leverages breakthrough technologies and ITV standards.
Current research efforts along this direction involve converting M3D into UIML (the Universal Interface Modelling
Language)1 and developing a corresponding Java-based renderer for running on a versatile ITV platform. The
conversion of M3D to UIML is done via XSLT2, a language for transforming XML documents into other XML

                                          4. THE AUTHORING TOOL

Hitherto one major shortcoming of initial versions of M3D was the fact that, the complete scene descriptions and
object descriptions must be written by hand. To overcome this difficulty the amendment of an authoring tool was then
assumed. In here the content may be developed by loading a new M3D file. With the aid of the new drag and drop
features of the authoring tool, learning objects (LO) as well as any appropriate scenes are built and consequently are
integrated for a new content as desired. Technically the Authoring Tool is based on Java, Java3D and XML. The
application uses XML schema to define the grammar of M3D, through this the user may only need to decide, which
element of the M3D, he wants to use. The menu list contains only lexically available elements. This feature ensures
that the user knowledge about M3D can be reduced to some mathematical knowledge, since the error rate by building
M3D scripts is reduced to mathematical mistakes.

Moreover the editing results are displayed simultaneously by the viewer, so that changes to the file are directly visible
to enhance the user comprehension of M3D functions, such as descriptions which are available at any time.

1 http://www.uiml.org

2 http://www.w3.org/TR/xslt
The processing of building new M3D files with the Authoring Tool interferes knowledge about the hierarchic structure
of M3D. The result of this development allows that a novice user may be able to build new M3D files.
Figure 3 represents a screen shot of the M3D ´s authoring tool in operation. A new canvas may be opened where the
scene and other objects are built into a M3D file. Appropriate menus contain added features for scene creation, as
discussed earlier are also shown in here.

                              Figure 3. Screen shot of the M3D ´s authoring tool in operation.

                                                 5. APPLICATION

Interactive knowledge based systems are essential when learning for qualification as skilled or semiskilled technical
personnel. Creating courseware based on traditional methods of integrating Virtual Reality (VR) into Web Based
Training (WBT) requires extensive and in-depth knowledge of modeling and animations of 3D scenes.
Here M3D is used to generate E-Learning systems from some general CAD & technical descriptions of mechanical
engineering machinery. One such application is shown in figure 4 where CAD design of a spin extrusion machine is
read directly into the programme. The imported data is then used to form complete simulations & visualisations of the
assembly, which can then be displayed using a M3D viewer applet. The viewer contains a number of control buttons,
which are associated with appropriate physical attributes. One of the most innovative aspects of M3D is its ability to
demonstrate an object both in solid and transparent form. This means that in the case of a solid object say a metallic
cylinder one may investigate if the cylinder inside contains any further individual parts. In this way the whole
assembly or the individual parts in question may be considered as desired.
Figure 5 shows the schematic of a laser induction system, which is equally used to generate E-Learning courseware. In
this case using virtual reality techniques, M3D enables the user to learn how to operate safely the laser induction
system. Equally figure 6 gives details of a hydraulics press machine visualised and simulated using M3D language.
     Figure 4. CAD design of a spin extrusion machine
  (Courtesy of the Fraunhofer Institute IWU in Chemnitz)

      Figure 5. Schematic of a laser induction system
    (Courtesy of Fraunhofer Institute IWS in Dresden).

    Figure 6. CAD design of a hydraulics press machine
(Courtesy of the Fraunhofer Institute IWU in Chemnitz)
                                   6. DIDACTIC ANALYSIS AND RESULTS

M3D is developed as a part of Medi@train project sponsored by the German Ministry of Research & Education, to
promote the application of the new technology in training and education at large. The project Medi@train comprises
of a number of independent parts. Next to the development of new technologies, the other major focus of the project is
the application of the latter to some practical and hands-on scenarios. Two Fraunhofer Institutes of FhG-IWU in
Chemnitz and FhG-IWS in Dresden were responsible to implement these technologies within appropriate application
areas. M3D has provided a platform for any average user, to be able to freely experiment and hence learn about the
operation of heavy machinery, using trail and error in the virtual worlds.
To analyse M3D´s didactic effects and its implications in the training environments, the tool was tested by a number
of skilled and semi-skilled personnel in a factory shop-floor. To our great delight we discovered an overwhelming
positive response from all the users. The interactivity of virtual environment enabled them to experiment on the web at
their own convenience, with total confidence to overcome the fears of damaging or destroying any equipment or set
ups. Figure 7 shows a screen shot of a user interface where the control panel is simulated using M3D and operates a
remote laser induction machine. In here the user may safely learn to operate the machine using M3D´s virtual reality

     Figure 7. Screen shot of a user interface where the control panel is simulated using M3D on a laser induction machine.

                                                     7. SUMMARY

Here we briefly described a new platform independent XML & JAVA3D based programming language known as
M3D, which enables creation of web-, based virtual reality technologies for E-Learning systems. With aid of two
examples some of the practical functionality of M3D are also pointed out here.

1.   Med@train/VR, IMK Information Sheet, D. Skaley, S. Chakaveh 2002
2.   Medi@train Report, D. Skaley, P.Laine´, R.Haeger, 2001.
3.   Specifications on Implementation of VR, D. Skaley, J.Becker,
      M. Hoffmann, D. Klug, 2001.
4.   BMBF- Medi@train Proposal, D.Skaley, S.Chakaveh, M.Reiser, 2000.

M3D is developed as part the German Ministry of Education & Research for the funding for the project Medi@train.
The authors acknowledge the support of the Fraunhofer Institute Media Communication on Medi@train. In particular,
Mr. Horst Santo the managing director of the competence center ITV for his full support and encouragement on the

To top