Augmented Reality with Bullet physics

Hey guys, I’m here posting some videos of my graduation project. It uses ARToolKit, Panda3D and bullet.
Check it out: … ture=g-upl … ture=g-upl

With this system you can position your objects using one marker then press space to annex it to the other marker, then press enter to activate the physics.

All objects used are procedurally created (except the sphere) and the texture mapping is done by hand.

You can find the code here: … vn%2Ftrunk
But beware, it’s very ugly and mostly undocumented.
I will be posting more videos soon.

Edit: More videos: … ture=g-upl … ture=g-upl

That looks interesting.
What was your topic?

The area of my dissertation is Computer Graphics, but it also involves a lot of other topics (human-computer interaction for example)
I called it “Creation of Interactive Scenes Using Augmented Reality”.

You can find the dissertation alongside the code (monografia.pdf), but it’s in Brazilian Portuguese. Only the abstract is available in english.

Added more videos.

Nice implementation of ARToolkit, and I think it might just be the only working example available on the forums that works out of the box (or almost) with the current Panda3D SDK.
I am saying almost out of the box, because it seems the models and textures are missing from your repository.

I am returning to Panda3D after some years of inactivity in the 3D field, and I would really appreciate it if you could post somewhere the rest of the files used in your project, so debugging and learning from it becomes much easier.


It seems I have forgotten to add them on the google code trunk, if I ever come back to panda3d programming I will migrate this project to github and add the missing textures. For now if you download the project, create a folder called textures and the files:


I got the originals from this website: but any JPG will do.

You will also need to print the ARToolkit patterns, you can a .pdf with them here: …
I use the /patterns/kanjiPatt.pdf and the /patterns/sampPatt1.pdf
You need both patterns for the application to work, one is used as the floor of the simulation (the gravity is perpendicular to the pattern) and the other to position the objects.

There are no custom models for this project, everything is procedurally generated except the sphere which I use the default panda3d one.

I am actually surprised it still works out of the box, the webcam support and ARToolkit support in panda3d was very sketchy back when I developed this (I couldn’t get the webcam to work in windows, the marker detection did not detect the placement of the marker correctly.)

In the meantime I managed to get it to work, pretty much as you just suggested.
If you have a chance to create a github repo I’d be happy to help you maintain it.