VRML for Kinematic and Physical Modeling and Simulations Benjamin Pugliese Mahesh Saptharishi
Modeling Requirements • 3-D representation with object interaction constraints • Temporal consistency • Real-time simulation and visualization of the model • Combining geometric and non-geometric parameters for simulation (multi-modal)
VRML Capabilities • • • • • •
Powerful representations for 3-D objects Temporal event generation User-defined object interaction primitives Interactive interface Platform independent Easily extendible
Applications • High-DOF kinematics modeling (Robot Arm) • This demonstration exemplifies VRML’s capability to simulate highly articulated structures. In this particular example, the combinations of rigid bodies move independently while being connected. Without a visualization tool such as VRML it would be very difficult to imagine the motion of such a machine.
Applications Cont., • Collision and interference detection (Kitchen) • Discrete event simulation involves proper execution of scheduled temporal events and dynamic events. An example of a dynamic event is collision detection and subsequent action. This movie clip demonstrates a simple collision detection scheme implemented using VRML. The action induced by the event is the change in color of the colliding object. The user could define a whole host of events that could result from this catalyst event. The kinematics and the analysis for the event detection was done using JAVA. All visualization and simulation of the rigid bodies was done with VRML.
Applications Cont., • Interaction modeling for avatars (Avatars) • Another application of VRML is tele-presence and virtual reality worlds. This has been most commonly used for chat rooms. An application that is slowly starting to come up is virtual worlds. Virtual worlds can house shopping complexes, 3D-Web pages, etc..
Application Cont., • Space physics modeling (NASA) • NASA has used VRML to model planetary motion, space shuttle design, and simulation of missions. The demonstrations in the hyperlink show the ability of VRML to simulate environmental events such as temperature, surface winds, light etc. NASA is primarily interested in VRML because of its ability to very quickly develop proof-of-concepts.
Applications Cont., • Rapid prototyping (Sojourner) • NASA used VRML in parts of the MARS mission planning stage. This demonstration is the National Geographic Society’s rendition of how the mission was executed. Design of Sojourner and Pathfinder and the simulation of its components can also be seen. Note the power of VRML as an effective visualization tool. This particular demonstration also shows the power of multimedia content to design, develop and demonstrate new ideas.
Disadvantages • Interpreted nature of VRML makes it slow for display of complicated simulations • Object representations and interaction primitives can take up a lot of memory • Using VRML for simulation involves a fairly steep learning curve • No standard interface for extensions
Conclusions • VRML provides a very elegant tool for simulating and visualizing complex interactions • It’s popularity is constantly increasing in the modeling domain • It has the appeal for distributed, internet based design and modeling
References and Resources • • • •
Web 3D Consortium The VRML Repository The Annotated VRML Reference Manual I-COLLIDE Collision detection with VRML • VRML and the Visualization of Space Science D
Answers to questions • Steep learning curve for VRML simulation? why? better method? • Using VRML, to create simple 3D worlds is very easy and effective. The complications arise when trying to program 3D worlds with events to designate interactions and dynamics in the world. The event structure, though powerful, is complicated at first glance. It takes some time to understand how to use the event architecture in combination with the VRML reality engine. Other methods such as CAD have similar problems, but the capabilities of each differ. VRML is more of a general purpose simulator while CAD is more application specific.
Answers to questions • How to include kinematics formula into VRML? • VRML provides for JAVA and C/C++ interfaces for backend computations. This is necessary because VRML is largely interpreted and large native computations slow it down. The I-COLLIDE package (linked as a reference) is an excellent example of using JAVA as the computational backend for VRML-based simulation. Please also see http://www.igd.fhg.de/CP/scriptgen/ . This web page provides a java script template generator to insert within VRML for computations. The VRML Repository has many other JAVA resources.