Balance Ball VRML Project

Remarks

Implementing the Physics
Currently, our model does not implement the whole physics of the model. E.g. in reality, if we do not set the factor for the elastic collision to 1, the balls that are hit by the other balls start to move too. The proper implementation would be to associate a state to each ball (velocity, direction) and determine collision detection. However, this was too time consuming for this project.

Object to Object Collisions
Unfortunately in the current VRML implementations, there is no detection node for object to object collisions. The only existing one is used for object-avatar collisions. Therefore we had to detect the collisions with scripts. Of course it is possible to implement object collision in a script, but experience shows that this is very slow.

VRML Code
There are a few things that we will have to optimize in our code.
Currently, we use a transform node for every single pendulum. These could be done better by using just one and 'copying' the others using DEF and USE features of VRML.
To optimize speed, we could try to use Java instead of JavaScript.
While reading in VRML newsgroups, we could see that there are a lot of tricks that programmers use to increase speed and add features. So VRML is like any other programming language: The more experience you have the more you can realize.



Home | Introduction | Physics | Implementation | Conclusion


© 1999 by A. Brand, R. Gressly, R. Jegerlehner