btQuickProf standing in the way of easy porting

Wavesonics
Posts: 71
Joined: Thu May 22, 2008 8:03 pm

btQuickProf standing in the way of easy porting

Post by Wavesonics »

Hey Erwin,

We had a conversation a few weeks back which helped me realize that btQuickProf is really the only things that presents portability issues.

But the preprocessor defines you provide to disable it don't work 100%. See the issue is in the timing that you try and include in the btQuickProf.h

Even if you define the BT_NO_PROFILE symbol, it still tries to include those headers.

The very simple fix is to #ifndef BT_NO_PROFILE right after the guard word. Then if you define BT_NO_PROFILE between the guard word and the #ifndef, it compiles just fine.

Now that's a nice fix that should certainly be implemented I would think. But wouldn't it be nice to make the timing more cross-platform? Maybe provide a function pointer or even an abstract class and allow each platform to override it how it needs? Just something to think about :)
mreuvers
Posts: 69
Joined: Sat May 10, 2008 8:39 am

Re: btQuickProf standing in the way of easy porting

Post by mreuvers »

My advice is to completely ditch btQuickProf and write your own alternative (if you need profiling). We too ran in too many issues with that particular file and decided to simply comment it all out. It doesn't have an impact on the actual physics anyhow.
User avatar
Erwin Coumans
Site Admin
Posts: 4221
Joined: Sun Jun 26, 2005 6:43 pm
Location: California, USA

Re: btQuickProf standing in the way of easy porting

Post by Erwin Coumans »

Agreed, it is a compatibility issue. For upcoming version we will disable btQuickprof, unless BT_USE_PROFILE is defined.

Issue has been added: http://code.google.com/p/bullet/issues/detail?id=113

Thanks for the feedback,
Erwin