Friday, March 23, 2012

Bullet Integration Updates - 23 Mar

It's been a while since there have been any updates about the Bullet Rigidbody project here. Over the past month, I've been practically swamped with deadlines and uni work, hence the lack of updates or Blender development activity recently.

Having said that, tonight I've managed to squeeze out a little chunk of time to field support questions/requests from the Mango crew, in particular with regards to Bullet integration. 

Apparently they've been having trouble compiling with CMake. Since I personally don't use this buildsystem (and cannot even really get it to work most of the time / get it to work but don't like the workflow it brings), I'd kindof forgotten that I hadn't ported over support for this when setting up the branch. But then again, I also couldn't test it, so it would've been broken anyway! Apparently, various versioning problems + CMake usage mean that they're currently having trouble getting everything to compile.

Now, as many will know, my Bullet branch on Gitorious hasn't really been updated since January or so, which is quite a while in Blender development terms!  (On a side note, when did we get a whole raft of icons for every single entry in the File menu?! Wow... it looks absolutely jam-packed in there now)

In that time, BMesh has been committed to trunk too. Since meshes are such an integral part of Blender, this was bound to have an impact. Indeed, after updating and merging locally (and fixing all the merge conflicts), I've found that the conversion to triangle-meshes is currently busted. Looks like it'll need a round of BMeshifying before it'll compile again :(  Sigh!

Hopefully I'll get some time to get around to doing this soon.

[EDIT - 3am] After a bit of wrangling and branch merging, I've finally got everything up and running under trunk again. So, head on down to my git branch and grab yourself a copy.

There's no new functionality this time around. However, here are some highlights:
- Now synched up to trunk (with BMesh)!
- CMake support has now been added
- Fixed some bugs where crashes could occur in some cases.

Thanks to Sergej Reich for working on the patches for these changes.


  1. Bullet integration would be excellent - if it could become a key element of Mango, maybe they could even allocage some of the budget for you to work full-time ( and get credited ) on this.

  2. My experience has been that cmake is always stable (for main branches) and scons is often broken (at least on osx 10.5 which I no longer use). I used to think that cmake was weird until I figured out that all it does is replace configure. With a 'standard' make cycle you run configure and then make, all you do is replace the configure step with cmake. The difference is from the cli it is a bit easier to add options to configure in one command than cmake but then ccmake showing the list of options and what the settings are being used has advantages too. cmake also gives other devs the option of making a project file for their gui IDE of choice (which I think is of limited use). I also find cmake files a lot easier to read/modify than configure/Makefile.

  3. New File menu buttons came in, in svn 44902. No complaints so far from several other devs and users...

  4. Cannot wait for Bullet integration :-)


  5. Awesome work so far! Thanks very much for doing this :D