Bullet RAPIDLY being upgraded ;-) Soft bodies!

http://lists.blender.org/pipermail/bf-blender-cvs/2008-September/015702.html

Thanks to Erwin and Ben (and everyone else for making the BGE so cool)

check out the bits in bold… this might mean we can use soft bodies soon! Wow!

trunk/blender/extern/bullet2/src/BulletCollision/BroadphaseCollision/btAxisSweep3.h
trunk/blender/extern/bullet2/src/BulletCollision/BroadphaseCollision/btDbvt.cpp
trunk/blender/extern/bullet2/src/BulletCollision/BroadphaseCollision/btDbvt.h
trunk/blender/extern/bullet2/src/BulletCollision/BroadphaseCollision/btSimpleBroadphase.cpp
trunk/blender/extern/bullet2/src/BulletCollision/BroadphaseCollision/btSimpleBroadphase.h
trunk/blender/extern/bullet2/src/BulletCollision/CMakeLists.txt
trunk/blender/extern/bullet2/src/BulletCollision/CollisionDispatch/btBoxBoxDetector.cpp
trunk/blender/extern/bullet2/src/BulletCollision/CollisionDispatch/btCollisionObject.cpp
trunk/blender/extern/bullet2/src/BulletCollision/CollisionDispatch/btCollisionObject.h
trunk/blender/extern/bullet2/src/BulletCollision/CollisionDispatch/btCollisionWorld.cpp
trunk/blender/extern/bullet2/src/BulletCollision/CollisionDispatch/btCompoundCollisionAlgorithm.cpp
trunk/blender/extern/bullet2/src/BulletCollision/CollisionDispatch/btCompoundCollisionAlgorithm.h
trunk/blender/extern/bullet2/src/BulletCollision/CollisionDispatch/btDefaultCollisionConfiguration.cpp
trunk/blender/extern/bullet2/src/BulletCollision/CollisionDispatch/btDefaultCollisionConfiguration.h
trunk/blender/extern/bullet2/src/BulletCollision/CollisionDispatch/btSphereTriangleCollisionAlgorithm.cpp
trunk/blender/extern/bullet2/src/BulletCollision/CollisionShapes/btBoxShape.cpp
trunk/blender/extern/bullet2/src/BulletCollision/CollisionShapes/btCapsuleShape.h
trunk/blender/extern/bullet2/src/BulletCollision/CollisionShapes/btCompoundShape.cpp
trunk/blender/extern/bullet2/src/BulletCollision/CollisionShapes/btCompoundShape.h
trunk/blender/extern/bullet2/src/BulletCollision/CollisionShapes/btConvexTriangleMeshShape.cpp
trunk/blender/extern/bullet2/src/BulletCollision/CollisionShapes/btConvexTriangleMeshShape.h
trunk/blender/extern/bullet2/src/BulletCollision/CollisionShapes/btHeightfieldTerrainShape.cpp
trunk/blender/extern/bullet2/src/BulletCollision/CollisionShapes/btOptimizedBvh.cpp
trunk/blender/extern/bullet2/src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
trunk/blender/extern/bullet2/src/BulletCollision/CollisionShapes/btTriangleMeshShape.cpp
trunk/blender/extern/bullet2/src/BulletCollision/CollisionShapes/btTriangleMeshShape.h
trunk/blender/extern/bullet2/src/BulletDynamics/CMakeLists.txt
trunk/blender/extern/bullet2/src/BulletDynamics/ConstraintSolver/btConeTwistConstraint.cpp
trunk/blender/extern/bullet2/src/BulletDynamics/ConstraintSolver/btHingeConstraint.cpp
trunk/blender/extern/bullet2/src/BulletDynamics/ConstraintSolver/btSliderConstraint.cpp
trunk/blender/extern/bullet2/src/BulletDynamics/ConstraintSolver/btSliderConstraint.h
trunk/blender/extern/bullet2/src/BulletDynamics/Dynamics/btDiscreteDynamicsWorld.cpp
trunk/blender/extern/bullet2/src/BulletDynamics/Dynamics/btDiscreteDynamicsWorld.h
trunk/blender/extern/bullet2/src/BulletDynamics/Dynamics/btDynamicsWorld.h
trunk/blender/extern/bullet2/src/BulletSoftBody/btSoftBody.cpp
trunk/blender/extern/bullet2/src/BulletSoftBody/btSoftBodyHelpers.cpp
trunk/blender/extern/bullet2/src/BulletSoftBody/btSoftBodyInternals.h

trunk/blender/extern/bullet2/src/LinearMath/CMakeLists.txt
trunk/blender/extern/bullet2/src/LinearMath/btAabbUtil2.h
trunk/blender/extern/bullet2/src/LinearMath/btMatrix3x3.h
trunk/blender/extern/bullet2/src/LinearMath/btScalar.h
trunk/blender/extern/bullet2/src/btBulletCollisionCommon.h
trunk/blender/extern/bullet2/src/btBulletDynamicsCommon.h

Seems cool. Thanks for info ;).

:slight_smile: realtime soft bodies!. I’m going to be having some fun, and so will a whole lot of other people.
Thanks for the notice

Hopefully it’s realtime soft bodies. It could be improvements on bakeable softbodies

Ben and Erwin working together to upgrade bullet in the BGE. This is a great thing to happen.

We just need the ability for bullet to take advantage of multicore machines, have a whole core devoted to physics.:yes:

and I guess that a newer version of Bullet is more optimized and efficient:D

I just built it and I can’t see soft bodies for GE anywhere. :frowning: maybe just preparing for it? or maybe it is enabled with python…

none of the paths looks like UI or python so I guess there’s no way to reach it yet.

The latest bullet has been committed to blender’s trunk, this doesn’t necessarily mean that soft bodies are being integrated into the GE.

Well bullet does have realtime softbodies, I checked out their demo and they had a fair bit of softbody in it so I don’t see why it wouldn’t be included.

well, let me tell you, implementing such a feature is not just a cut and paste, they should do: (this list may be wrong or incomplete)

  • include the bullet library with softbody support (Done)
  • make the corresponding gui to set up the system
  • make the sDNA structures needed to save all the settings in the .blend file
  • integrate the new library functions into the game engine
  • update the scene converter to convert the softbody settings
  • add python api to control the softbody simulation
  • maybe some logic bricks too
  • debug all the above
  • debug it again and apply some optimizations
  • debug it one more time

so there is still A LOT of work to do

I know it’s hard work, but if its there and they can do it why wouldn’t they? It wouldn’t make sense if they implemented the latest bullet without the softbodies IMO.

New libraries generally mean more stability and performance :wink:

Also, if I recall correctly ben2160 and Erwin weren’t doing this specifically for the BGE.

Although, I would love the new Bullet features in the BGE :smiley:

Yeah of course there is still a tonne of work to to do ;-)… either way it’s great that they’ve updated the library… Like I said… it ‘might’ happen soon (i.e. weeks/months)… If physics can be used in blender they can also be added into the GE and vice versa… either implementation would make blender even more impressive.

Also ben2610 was talking about updating and improving the physics options under the gamelogic tab.

Well I think this are evolving…

http://www.niel3d.com/niel2/uploads/newbb2/2_48d163e936767.jpg

http://www.niel3d.com/niel2/uploads/newbb2/2_48d163e936767.jpg

nice!.. what happens when you press P?

Partially true. Physics in the BGE must be realtime. So physics can (in theory) go from the BGE to the rest of blender without too much difficulty, but to take physics which currently must be baked, and have them realtime…? That would be awesome. I have been noticing an increase in the speed of baking things, though. I’m not saying it can’t or won’t happen, just that the realtime element adds a challenge.

Don’t expect anything: this is very preliminary, in the latest trunk. There is a soft_test.blend included:

http://bulletphysics.com/ftp/pub/test/index.php?dir=blender/&file=blender-2.48-gamesoftbody-preview4.zip

Enjoy,
Erwin

pretty exciting, i noticed tha the softbodies mess up if the edges are too soft

yeah when you set the object to “set smooth” the softbody doesnt work anymore