CIPA 2003 XIX th International Symposium, 30 September - 04 October, 2003, Antalya, Turkey
293
ercity
to the
Id the
id the
i with
» land
Reside
use of
;rver-
)n the
) with
of the
ithms
; key-
image
tly by
>h the
rithm,
; way
short
;hting
ts are
>f our
/e the
,es on
:ssion
if the
mted.
nor a
a 3D
used
h as
oints,
:xture
mapping. One of the primary goals in designing VRML was
to ensure that it at least succeeded as an effective 3D file
interchange format. Moreover, VRML can be considered as a
3D analog to HTML. This means that VRML serves as a
simple, multiplatform language for publishing 3D Web
pages. This is motivated by the fact that some information is
best experienced three dimensionally, such as games,
engineering and scientific visualizations, educational
experiences, and architecture. Typically these types of
projects require intensive interaction, animation, and user
participation and exploration beyond what is capable with a
page-, text-, or image-based format (i.e., HTML). VRML
provides the technology that integrates three dimensions, two
dimensions, text, and multimedia into a coherent model.
When these media types are combined with scripting
languages and Internet capabilities, an entirely new genre of
interactive applications are possible.
In 1997 a community of programmers, engineers, graphers
founded the VAG (VRML Architecture Group) in order to
extend the capabilities of the previous VRML version (1.0),
which feautured several properties of the Inventor File
Format, a graphic standard developed by Silicon Graphics.
The overall goal for the new VRML vs. 2.0 was fairly
modest: to allow objects in the world to move and to allow
the user to interact with the objects in the world, allowing the
creation of more interesting user experiences than those
created with VRML 1.0. The vs. 2.0 featured following
properties:
1) Composability, it should be relatively easy to take files
created by various people or tools and compose them
together to create a new document. This is another
property that VRML shares with HTML: It is easy to cut
and paste text from several HTML documents using
either a generic text editor or a specialized editing tool,
just as it is easy to cut and paste objects between VRML
worlds.
2) Scalability, is a constraint on the VRML 2.0 design.
VRML is designed to scale in three ways. First, it should
be theoretically possible for a VRML browser to handle
a world distributed across the Internet that contains
millions or billions of objects. Second, VRML should
work well when used with both very powerful and very
inexpensive machines, allowing the VRML browser to
trade off image or simulation quality for improved
performance and to scale well with increased hardware
performance. And third, VRML worlds should scale
with network performance, from the 14.4K modems that
are common today to multigigabit connections that
might become common in the future.
3) Extensibility, the language should allow the developer to
add functionalities, like new geometric primitives, for
instance.
The VRML format allows, therefore, to create 3D
environments, ensuring basic properties like full web access
to the model and platform independence: only a suitable
viewer is needed, capable to interpret the VRML files.
Such interactive technology can be profitably employed in
different application fields, like for example the virtual visit
of a museum or even of a whole city (cybercity). E-
Commerce is another interesting topic: a consumer could
virtually explore, in all its parts, the 3D model of the object to
be purchased, before to move to the shop. More recently, the
availability of 3D models of cultural heritage elements and
land infrastructures (like buidlings, churches, bridges, road
assets, etc.) contributed to increase the use of VRML as a
mean to share such models through the web. However, the
interest of the scientific community (medicine, engineering,
architecture, etc) towards 3D models has revealed in the same
time some limits of the VRML as interchange file format
when large data sets, acquired typically by close-range or
long-range ground-based laser scanners, are used. Major
disadvantages are the following:
1) File size. It is not uncommon to manage VRML files of
hundreds of MBytes;
2) Input peripherals. Interactive user commands are
activated through mouse and/or keyboard, which often
are not the optimal peripherals to navigate in the 3D
environment;
3) Computing resources. A VRML viewer needs often high
computational performance in order to manage and
render a complex scene, composed by thousands of
points or triangles.
Obviously, a more profitable way to share complex and large
3D models requires the development of solutions aimed to
overcome above mentioned issues.
3. THE VRML SPLIT-BROWSER
Beside the VRML language, the structure of the
browser/viewer has to be considered, as well. Basically, it is a
software application which is able to display a 3D scene,
whose content is described in a VRML file. Moreover, a
specific GUI (Graphical User Interface) is provided to the
user along with a suited set of commands, allowing to
navigate the 3D environment. A VRML viewer works
according to a stratified structure, whose main components
can be summarized as follows (fig. 1):
1) Parser. It checks the grammatical and sintactical content
of the file. If any error is encountered, the file is
discarded;
2) World loader, which deals with the loading of all
elements, like textures, sounds and scripts, required to
display correctly the virtual world content;
3) World manager, whose task entails with the loading in
the system memory of the representation of the virtual
scene. Furthermore some basic components of the scene
have to be tracked, like object positions, position and
orientation of the eye-point, position and properties of
light sources, object materials and the viewing volume.
The world manager can be considered as the analog of
the graphical engine used for the 3D models processing;
4) World renderer, which works together with the world
manager to correctly display on the user’s monitor the
content of the VRML file. The renderer checks the scene
continuously, if any change is detected (displacement of
the user’s eye-point) the new image to be displayed is
computed as fast as possible. Of course this task requires
high computational effort from the user’s hardware,
which is not always the case.
FILE PARSING
>■
WORLD LOADING
T
WORLD
WORLD
RENDERING
MANAGEMENT
F
Figure 1 : Conceptual framework of a VRML viewer