public abstract BulletShape BuildHullShapeFromMesh(BulletWorld world, BulletShape meshShape, HACDParams parms);
 public abstract void SetLocalScaling(BulletShape shape, Vector3 scale);
 public abstract void SetShapeCollisionMargin(BulletShape shape, float margin);
 public abstract void RecalculateCompoundShapeLocalAabb(BulletShape cShape);
 public abstract BulletShape RemoveChildShapeFromCompoundShapeIndex(BulletShape cShape, int indx);
 public abstract bool IsNativeShape(BulletShape shape);
 public abstract bool IsPolyhedral(BulletShape shape);
 public abstract BulletShape DuplicateCollisionShape(BulletWorld sim, BulletShape srcShape, UInt32 id);
 // =====================================================================================
 // btCollisionShape entries
 public abstract float GetAngularMotionDisc(BulletShape shape);
 public abstract bool DeleteCollisionShape(BulletWorld world, BulletShape shape);
 public virtual void DumpCollisionShape(BulletWorld sim, BulletShape collisionShape)
 {
 }
 public abstract BulletBody CreateGhostFromShape(BulletWorld sim, BulletShape shape, UInt32 id, Vector3 pos, Quaternion rot);
 public abstract BulletBody CreateBodyWithDefaultMotionState(BulletShape shape, UInt32 id, Vector3 pos, Quaternion rot);
 public abstract Vector3 CalculateLocalInertia(BulletShape shape, float mass);
 public abstract bool IsConvex2d(BulletShape shape);
 public abstract float GetContactBreakingThreshold(BulletShape shape, float defaultFactor);
 public abstract bool IsInfinite(BulletShape shape);
 public abstract Vector3 GetLocalScaling(BulletShape shape);
 public abstract bool IsNonMoving(BulletShape shape);
 public abstract float GetMargin(BulletShape shape);
 public abstract bool IsSoftBody(BulletShape shape);
 public abstract int GetNumberOfCompoundChildren(BulletShape cShape);
 public abstract void RemoveChildShapeFromCompoundShape(BulletShape cShape, BulletShape removeShape);
 public abstract int GetShapeType(BulletShape shape);
 public abstract void SetCollisionShape(BulletWorld sim, BulletBody obj, BulletShape shape);
 public abstract bool IsCompound(BulletShape shape);
 public abstract void SetMargin(BulletShape shape, float val);
 public abstract bool IsConcave(BulletShape shape);
 public abstract void UpdateChildTransform(BulletShape pShape, int childIndex, Vector3 pos, Quaternion rot, bool shouldRecalculateLocalAabb);
 public abstract void AddChildShapeToCompoundShape(BulletShape cShape, BulletShape addShape, Vector3 pos, Quaternion rot);