Fix of T39026. The collision object wasn't activated and the collision flags were for static object
Diff Detail
Event Timeline
| extern/bullet2/src/BulletCollision/CollisionDispatch/btCollisionWorld.cpp | ||
|---|---|---|
| 129 | Do we really need to modify Bullet to fix this? | |
I'm not very familiar with the code yet, but I only found changes in this files. KX_GameObject and others didn't change since 2.69
This question probably deserves to be asked elsewhere, but I have been having a LOT of trouble since updating to 2.70a yesterday, and searches on forums and google have been unhelpful. How do I apply this patch?
I've been banging my head against this problem for about 3 hours now, not counting hours spent fiddling in blender wondering why my object collisions weren't working - really interrupted my workflow. Attempts to revert to 2.69 have met with similar difficulties. Any help, even just a link to a relevant post, would be greatly appreciated.
Running win 7 64bit.
Hi Burgish_Nilwert,
do you build your own Blender? (http://wiki.blender.org/index.php/Dev:Doc/Building_Blender)
I haven't applied a path yet, but you can insert the code manually in the two files. Then do a build and in the builded Blender-Version the bug should be fixed.
Well! That sounds right neighborly of you, Blenderscripter! But I worry it might be a bit beyond my ability. For the moment I have been able to revert to 2.69, and things are working as I need then to, so I might just wait for the next release and keep my life a little simpler.
Thanks for the offer, but I think I'll be okay. Was a little panicked/frustrated yesterday, although I can't take you up on your offer your kindness is very much appreciated! :)
Since I'm not overly familiar with Bullet, I'd really like to know why these changes are necessary. Did something change in Bullet? I'm also CC'ing Sergej since he knows more about Bullet than I do.
I'd also really like to see a fix that does not involve altering Bullet's source code. If we must alter Bullet's source code, then we need to make sure to also submit a patch upstream, and add patch to extern/bullet2/patches along with a note in extern/bullet2/readme.txt.
I'd also like to know the reasoning here.
Without looking into it too much I'm pretty sure that you don't have to change bullet for this.
A change like that can cause subtle bugs, so we should be pretty sure to know what's happening.
If you really need to activate objects after adding them to the world, you can do that on the blender side. For example you could do it in SuspendDynamics() or UpdateCcdPhysicsController(), but again I'd like to have more info.
If it worked in 2.69 you could bisect the changes and find the commit that broke it.
Also, thanks for submitting your first patch.
Thanks for your comments. I'll try to adapt the code that bullet must not be modified.
ok, I moved the activation and it works. I'll attach the diff. Can I change it on the site, too?
Bisect gives me
- b90de0331df6c92af909b20a3e183596ff3511e4
- be114086f223345f97f033dd9350a918dbb0eec5
- efa40ea590aacc9a37486dd5109f735d3890947c
as possible values.
I wasn't able to build the first 2, so I skipped them.
I think that it is a regression from b90de0331df6c92af909b20a3e183596ff3511e4 commit
I attach a quick patch:
It is not deep tested but it seems to work. I will test it more in the next days.