Wednesday, April 6, 2011

Hanoi towers using OpenHaptics, OpenGL, Bullet and Assimp

At the moment I do my professional training, and I'm developing an application with haptics. I created a scene with Hanoi Towers, to demonstrate what I achieved. Currently, it runs OK, but I have problems like:
1. Low performance when objects collide (about 7-9 FPS). I use btGImpactMeshShape for all the objects in my scene, except walls.
2. I can't use Scheduler in OpenHaptics, well in fact I can, but program crashes when I try to shut down it properly. I use HL and HD at the same time. OpenHaptics documentation is very poor (v.3) at this subject and not only , so there are many problems also that cause me a headache.
3. I have also problems with collision detection in Bullet, since there are cases (and often), when I can push the objects in my scene through others. My world is a closed box, so even if theoretically must not allow objects to pass the walls, I can force them (by pushing with the arm, or turning simulation off, applying a force and then turning simulation on again) to pass the walls of the box, so they might fall into abyss :D.

Well, since I'm a beginner in all this, I'm satisfied to know that I managed to do at least this. Future work will be on soft objects. I would like to thank http://somapanam.wordpress.com/ (Since the name of the author is not displayed on the blog, I would not publish it) for the code that it made public, and that I used as a reference to understand how OpenHaptics and Bullet can work together.
And here's my demo video: