Model Loader Vizard
This is an extension to Vizard that allows the Python programmer to load overly complicated models into Vizard. Currently the programmer is able to make spheres collide with such an overly complicated model. In a possible future release, support for boxes is planned.
The model is considered to be static geometry. The spheres are dynamic. They can be added by the programmer, and can be given a certain mass and radius. The spheres behave as if they were solid spheres. The spheres collide with the geometry (which may be huge in triangle count), and the spheres collide with themselves. Because the self collisions are non optimized, the programmer can add roughly 50 spheres to the simulation (could be 70).
(There are n * (n-1) * 0.5 interactions between spheres to be checked each frame.)
The spheres are subject to programmer controlled forces. A force can be applied on the center of the sphere, or it can have an offset (or arm). Applying forces off center generates torque. The programmer is also able to apply torque on an object.
Vizard uses a left handed coordinate system. Therefore torque is applied by using the left hand rule, instead of the right hand rule.
Model Loader Vizard is tailored to work in the Fontys VR-Cave, but it can also work on a stand-alone PC (with Vizard 4.0 installed (the trial version will suffice)).
Model Loader Vizard is a .dle extension to vizard. A .dle is just a DLL renamed to .dle. Because Vizard uses OpenSceneGraph, Model Loader Vizard also had to use it. OpenSceneGraph did not fit well into the architecture of Model Loader (the basis for Model Loader Vizard). However, using OpenSceneGraph was mandatory, therefore it has been (properly) hacked into the program.
The model loader uses a tool called Model Compiler. With this tool the model file (.model) is generated.
Vizard Python API
You can download model-loader-vizard here: .