Multimedia Authoring I -- Web3D/VRML
The term Web3D describes any programming or descriptive language that can be used to deliver interactive 3D objects and worlds across the internet. This includes open languages such as Virtual Reality Modeling Language (VRML), Java3D and X3D (under development) - also any proprietary languages that have been developed for the same purpose come under the umbrella of Web3D. The Web3D Repository is an impartial, comprehensive, community resource for the dissemination of information relating to Web3D and is maintained by the Web3D Consortium.
More in particular, the Web3D repository includes
the X3D SDK to promote the adoption of X3D
in industry and academia.
X3D SDK
This comprehensive suite of
X3D and VRML software is available online at
sdk.web3d.org
and provides a huge range
of viewers, content, tools, applications, and source code. The primary purpose of the SDK is to
enable further development of X3D-aware applications and content.
However, before downloading like crazy,
you'd better get acquainted with the major concepts
of VRML first.
After all, VRML has been around for some time
and VRML technology, although not perfect, seems to be rather
stable.
slide slideset script timer draft version 1 (16/5/2003)
Virtual Reality Modeling Language
abstraction and grouping
geometry and appearance
interaction and behavior
special effects
extensions
Not mentioned in this overview is the PROTO facility
and the DEF/USE mechanism.
The PROTO facility allows for defining nodes,
by declaring an interface and a body implementing the node.
Once a PROTO definition is given,
instances of the PROTO can be created,
in the same way as with built-in nodes.
The DEF/USE maechanism may be applied for routing events
as well as the reuse of fragments of code.
Beware, however, that reuse using USE
amounts to sharing parts of the scenegraph.
As a consequence, one little change
might be visible wherever that particular fragment is reused.
In contrast, multiple instances of a PROTO
are independent of eachother.
3D slides -- the code
Note that for displaying 3D objects in a slide,
we need no specific PROTO.
Apart from the visible field,
which may be used to start a presentation
with another slide than the first one
(zero being the first index in the array of slides),
the slideset PROTO interface also contains
a so-called eventIn named next
to proceed to the next slide.
In the interface of the script, we see both the use of IS
and USE to connect the (local) script fields
to the scenegraph.
The function next, that implements
the corresponding event, simply
traverses through the slides,
one step at a time, by assigning a value to
the whichChoice field of the Switch.
example
Obviously, better interaction facilities are needed here,
for example a simple button
(which may be implemented using a TouchSensor
and a Sphere)
to proceed to the next slide.
These extensions, as well as the inclusion of a background
and viewpoint, are left as an exercise.
[]
readme
preface
1
2
3
4
5
6
7
appendix
checklist
powerpoint
resources
director
eliens@cs.vu.nl