Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

Ignore:
Timestamp:
Dec 13, 2008, 11:45:51 PM (17 years ago)
Author:
rgrieder
Message:

Updated to Bullet 2.73 (first part).

File:
1 edited

Legend:

Unmodified
Added
Removed
  • code/branches/physics/src/bullet/BulletCollision/CollisionShapes/btCompoundShape.h

    r2192 r2430  
    4747}
    4848
    49 /// btCompoundShape allows to store multiple other btCollisionShapes
     49/// The btCompoundShape allows to store multiple other btCollisionShapes
    5050/// This allows for moving concave collision objects. This is more general then the static concave btBvhTriangleMeshShape.
     51/// It has an (optional) dynamic aabb tree to accelerate early rejection tests.
     52/// @todo: This aabb tree can also be use to speed up ray tests on btCompoundShape, see http://code.google.com/p/bullet/issues/detail?id=25
     53/// Currently, removal of child shapes is only supported when disabling the aabb tree (pass 'false' in the constructor of btCompoundShape)
    5154ATTRIBUTE_ALIGNED16(class) btCompoundShape      : public btCollisionShape
    5255{
    53         //btAlignedObjectArray<btTransform>             m_childTransforms;
    54         //btAlignedObjectArray<btCollisionShape*>       m_childShapes;
    5556        btAlignedObjectArray<btCompoundShapeChild> m_children;
    5657        btVector3                                               m_localAabbMin;
    5758        btVector3                                               m_localAabbMax;
    5859
    59         //btOptimizedBvh*                                       m_aabbTree;
    6060        btDbvt*                                                 m_dynamicAabbTree;
    6161
     
    6363        BT_DECLARE_ALIGNED_ALLOCATOR();
    6464
    65         btCompoundShape();
     65        btCompoundShape(bool enableDynamicAabbTree = true);
    6666
    6767        virtual ~btCompoundShape();
     
    8989        }
    9090
    91         btTransform     getChildTransform(int index)
     91        btTransform&    getChildTransform(int index)
    9292        {
    9393                return m_children[index].m_transform;
    9494        }
    95         const btTransform       getChildTransform(int index) const
     95        const btTransform&      getChildTransform(int index) const
    9696        {
    9797                return m_children[index].m_transform;
    9898        }
     99
     100        ///set a new transform for a child, and update internal data structures (local aabb and dynamic tree)
     101        void    updateChildTransform(int childIndex, const btTransform& newChildTransform);
    99102
    100103
Note: See TracChangeset for help on using the changeset viewer.