@@ -40,7 +40,6 @@ declare module Ammo {
4040 constructor ( ) ;
4141 constructor ( x : number , y : number , z : number , w : number ) ;
4242 w ( ) : number ;
43- setValue ( x : number , y : number , z : number ) : void ;
4443 setValue ( x : number , y : number , z : number , w : number ) : void ;
4544 }
4645 class btQuadWord {
@@ -97,6 +96,11 @@ declare module Ammo {
9796 getWorldTransform ( worldTrans : btTransform ) : void ;
9897 setWorldTransform ( worldTrans : btTransform ) : void ;
9998 }
99+ class MotionState {
100+ constructor ( ) ;
101+ getWorldTransform ( worldTrans : btTransform ) : void ;
102+ setWorldTransform ( worldTrans : btTransform ) : void ;
103+ }
100104 class btDefaultMotionState extends btMotionState {
101105 constructor ( startTrans ?: btTransform , centerOfMassOffset ?: btTransform ) ;
102106 get_m_graphicsWorldTrans ( ) : btTransform ;
@@ -147,6 +151,8 @@ declare module Ammo {
147151 set_m_closestHitFraction ( m_closestHitFraction : number ) : void ;
148152 get_m_collisionObject ( ) : btCollisionObject ;
149153 set_m_collisionObject ( m_collisionObject : btCollisionObject ) : void ;
154+ get_m_flags ( ) : number ;
155+ set_m_flags ( m_flags : number ) : void ;
150156 }
151157 class ClosestRayResultCallback extends RayResultCallback {
152158 constructor ( from : btVector3 , to : btVector3 ) ;
@@ -237,6 +243,8 @@ declare module Ammo {
237243 }
238244 class ClosestConvexResultCallback extends ConvexResultCallback {
239245 constructor ( convexFromWorld : btVector3 , convexToWorld : btVector3 ) ;
246+ get_m_hitCollisionObject ( ) : btCollisionObject ;
247+ set_m_hitCollisionObject ( m_hitCollisionObject : btCollisionObject ) : void ;
240248 get_m_convexFromWorld ( ) : btVector3 ;
241249 set_m_convexFromWorld ( m_convexFromWorld : btVector3 ) : void ;
242250 get_m_convexToWorld ( ) : btVector3 ;
@@ -408,6 +416,135 @@ declare module Ammo {
408416 setMargin ( margin : number ) : void ;
409417 getMargin ( ) : number ;
410418 }
419+ class btAABB {
420+ constructor ( V1 : btVector3 , V2 : btVector3 , V3 : btVector3 , margin : number ) ;
421+ invalidate ( ) : void ;
422+ increment_margin ( margin : number ) : void ;
423+ copy_with_margin ( other : btAABB , margin : number ) : void ;
424+ }
425+ class btPrimitiveTriangle {
426+ constructor ( ) ;
427+ }
428+ class btTriangleShapeEx {
429+ constructor ( p1 : btVector3 , p2 : btVector3 , p3 : btVector3 ) ;
430+ getAabb ( t : btTransform , aabbMin : btVector3 , aabbMax : btVector3 ) : void ;
431+ applyTransform ( t : btTransform ) : void ;
432+ buildTriPlane ( plane : btVector4 ) : void ;
433+ }
434+ class btPrimitiveManagerBase {
435+ is_trimesh ( ) : boolean ;
436+ get_primitive_count ( ) : number ;
437+ get_primitive_box ( prim_index : number , primbox : btAABB ) : void ;
438+ get_primitive_triangle ( prim_index : number , triangle : btPrimitiveTriangle ) : void ;
439+ }
440+ enum eGIMPACT_SHAPE_TYPE {
441+ CONST_GIMPACT_COMPOUND_SHAPE ,
442+ CONST_GIMPACT_TRIMESH_SHAPE_PART ,
443+ CONST_GIMPACT_TRIMESH_SHAPE
444+ }
445+ class btTetrahedronShapeEx {
446+ constructor ( ) ;
447+ setVertices ( v0 : btVector3 , v1 : btVector3 , v2 : btVector3 , v3 : btVector3 ) : void ;
448+ }
449+ class btGImpactShapeInterface extends btConcaveShape {
450+ updateBound ( ) : void ;
451+ postUpdate ( ) : void ;
452+ getShapeType ( ) : number ;
453+ getName ( ) : string ;
454+ getGImpactShapeType ( ) : eGIMPACT_SHAPE_TYPE ;
455+ getPrimitiveManager ( ) : btPrimitiveManagerBase ;
456+ getNumChildShapes ( ) : number ;
457+ childrenHasTransform ( ) : boolean ;
458+ needsRetrieveTriangles ( ) : boolean ;
459+ needsRetrieveTetrahedrons ( ) : boolean ;
460+ getBulletTriangle ( prim_index : number , triangle : btTriangleShapeEx ) : void ;
461+ getBulletTetrahedron ( prim_index : number , tetrahedron : btTetrahedronShapeEx ) : void ;
462+ getChildShape ( index : number ) : btCollisionShape ;
463+ getChildTransform ( index : number ) : btTransform ;
464+ setChildTransform ( index : number , transform : btTransform ) : void ;
465+ }
466+ class CompoundPrimitiveManager extends btPrimitiveManagerBase {
467+ get_m_compoundShape ( ) : btGImpactCompoundShape ;
468+ set_m_compoundShape ( m_compoundShape : btGImpactCompoundShape ) : void ;
469+ get_primitive_count ( ) : number ;
470+ get_primitive_box ( prim_index : number , primbox : btAABB ) : void ;
471+ get_primitive_triangle ( prim_index : number , triangle : btPrimitiveTriangle ) : void ;
472+ }
473+ class btGImpactCompoundShape extends btGImpactShapeInterface {
474+ constructor ( children_has_transform ?: boolean ) ;
475+ childrenHasTransform ( ) : boolean ;
476+ getPrimitiveManager ( ) : btPrimitiveManagerBase ;
477+ getCompoundPrimitiveManager ( ) : CompoundPrimitiveManager ;
478+ getNumChildShapes ( ) : number ;
479+ addChildShape ( localTransform : btTransform , shape : btCollisionShape ) : void ;
480+ getChildShape ( index : number ) : btCollisionShape ;
481+ getChildAabb ( child_index : number , t : btTransform , aabbMin : btVector3 , aabbMax : btVector3 ) : void ;
482+ getChildTransform ( index : number ) : btTransform ;
483+ setChildTransform ( index : number , transform : btTransform ) : void ;
484+ calculateLocalInertia ( mass : number , inertia : btVector3 ) : void ;
485+ getName ( ) : string ;
486+ getGImpactShapeType ( ) : eGIMPACT_SHAPE_TYPE ;
487+ }
488+ class TrimeshPrimitiveManager extends btPrimitiveManagerBase {
489+ get_m_margin ( ) : number ;
490+ set_m_margin ( m_margin : number ) : void ;
491+ get_m_meshInterface ( ) : btStridingMeshInterface ;
492+ set_m_meshInterface ( m_meshInterface : btStridingMeshInterface ) : void ;
493+ get_m_part ( ) : number ;
494+ set_m_part ( m_part : number ) : void ;
495+ get_m_lock_count ( ) : number ;
496+ set_m_lock_count ( m_lock_count : number ) : void ;
497+ get_numverts ( ) : number ;
498+ set_numverts ( numverts : number ) : void ;
499+ get_type ( ) : PHY_ScalarType ;
500+ set_type ( type : PHY_ScalarType ) : void ;
501+ get_stride ( ) : number ;
502+ set_stride ( stride : number ) : void ;
503+ get_indexstride ( ) : number ;
504+ set_indexstride ( indexstride : number ) : void ;
505+ get_numfaces ( ) : number ;
506+ set_numfaces ( numfaces : number ) : void ;
507+ get_indicestype ( ) : PHY_ScalarType ;
508+ set_indicestype ( indicestype : PHY_ScalarType ) : void ;
509+ constructor ( manager ?: TrimeshPrimitiveManager ) ;
510+ lock ( ) : void ;
511+ unlock ( ) : void ;
512+ is_trimesh ( ) : boolean ;
513+ get_vertex_count ( ) : number ;
514+ get_indices ( face_index : number , i0 : number , i1 : number , i2 : number ) : void ;
515+ get_vertex ( vertex_index : number , vertex : btVector3 ) : void ;
516+ get_bullet_triangle ( prim_index : number , triangle : btTriangleShapeEx ) : void ;
517+ }
518+ class btGImpactMeshShapePart extends btGImpactShapeInterface {
519+ constructor ( meshInterface : btStridingMeshInterface , part : number ) ;
520+ getTrimeshPrimitiveManager ( ) : TrimeshPrimitiveManager ;
521+ getVertexCount ( ) : number ;
522+ getVertex ( vertex_index : number , vertex : btVector3 ) : void ;
523+ getPart ( ) : number ;
524+ }
525+ class btGImpactMeshShape extends btGImpactShapeInterface {
526+ constructor ( meshInterface : btStridingMeshInterface ) ;
527+ getMeshInterface ( ) : btStridingMeshInterface ;
528+ getMeshPartCount ( ) : number ;
529+ getMeshPart ( index : number ) : btGImpactMeshShapePart ;
530+ calculateSerializeBufferSize ( ) : number ;
531+ }
532+ class btCollisionAlgorithmConstructionInfo {
533+ constructor ( ) ;
534+ constructor ( dispatcher : btDispatcher , temp : number ) ;
535+ get_m_dispatcher1 ( ) : btDispatcher ;
536+ set_m_dispatcher1 ( m_dispatcher1 : btDispatcher ) : void ;
537+ get_m_manifold ( ) : btPersistentManifold ;
538+ set_m_manifold ( m_manifold : btPersistentManifold ) : void ;
539+ }
540+ class btCollisionAlgorithm {
541+ }
542+ class btActivatingCollisionAlgorithm extends btCollisionAlgorithm {
543+ }
544+ class btGImpactCollisionAlgorithm extends btActivatingCollisionAlgorithm {
545+ constructor ( ci : btCollisionAlgorithmConstructionInfo , body0Wrap : btCollisionObjectWrapper , body1Wrap : btCollisionObjectWrapper ) ;
546+ registerAlgorithm ( dispatcher : btCollisionDispatcher ) : void ;
547+ }
411548 class btDefaultCollisionConstructionInfo {
412549 constructor ( ) ;
413550 }
@@ -442,7 +579,7 @@ declare module Ammo {
442579 }
443580 class btCollisionConfiguration {
444581 }
445- class btDbvtBroadphase extends btBroadphaseInterface {
582+ class btDbvtBroadphase {
446583 constructor ( ) ;
447584 }
448585 class btBroadphaseProxy {
@@ -513,6 +650,8 @@ declare module Ammo {
513650 setGravity ( acceleration : btVector3 ) : void ;
514651 getBroadphaseProxy ( ) : btBroadphaseProxy ;
515652 clearForces ( ) : void ;
653+ setFlags ( flags : number ) : void ;
654+ getFlags ( ) : number ;
516655 }
517656 class btConstraintSetting {
518657 constructor ( ) ;
@@ -584,6 +723,7 @@ declare module Ammo {
584723 constructor ( rbA : btRigidBody , rbB : btRigidBody , pivotInA : btVector3 , pivotInB : btVector3 , axisInA : btVector3 , axisInB : btVector3 , useReferenceFrameA ?: boolean ) ;
585724 constructor ( rbA : btRigidBody , rbB : btRigidBody , rbAFrame : btTransform , rbBFrame : btTransform , useReferenceFrameA ?: boolean ) ;
586725 constructor ( rbA : btRigidBody , rbAFrame : btTransform , useReferenceFrameA ?: boolean ) ;
726+ getHingeAngle ( ) : number ;
587727 setLimit ( low : number , high : number , softness : number , biasFactor : number , relaxationFactor ?: number ) : void ;
588728 enableAngularMotor ( enableMotor : boolean , targetVelocity : number , maxMotorImpulse : number ) : void ;
589729 setAngularOnly ( angularOnly : boolean ) : void ;
@@ -594,10 +734,15 @@ declare module Ammo {
594734 class btSliderConstraint extends btTypedConstraint {
595735 constructor ( rbA : btRigidBody , rbB : btRigidBody , frameInA : btTransform , frameInB : btTransform , useLinearReferenceFrameA : boolean ) ;
596736 constructor ( rbB : btRigidBody , frameInB : btTransform , useLinearReferenceFrameA : boolean ) ;
737+ getLinearPos ( ) : number ;
738+ getAngularPos ( ) : number ;
597739 setLowerLinLimit ( lowerLimit : number ) : void ;
598740 setUpperLinLimit ( upperLimit : number ) : void ;
599741 setLowerAngLimit ( lowerAngLimit : number ) : void ;
600742 setUpperAngLimit ( upperAngLimit : number ) : void ;
743+ setPoweredLinMotor ( onOff : boolean ) : void ;
744+ setMaxLinMotorForce ( maxLinMotorForce : number ) : void ;
745+ setTargetLinMotorVelocity ( targetLinMotorVelocity : number ) : void ;
601746 }
602747 class btFixedConstraint extends btTypedConstraint {
603748 constructor ( rbA : btRigidBody , rbB : btRigidBody , frameInA : btTransform , frameInB : btTransform ) ;
@@ -653,12 +798,11 @@ declare module Ammo {
653798 get_m_numIterations ( ) : number ;
654799 set_m_numIterations ( m_numIterations : number ) : void ;
655800 }
656- type btInternalTickCallback = ( world : btDynamicsWorld , timeStep : number ) => void ;
657801 class btDynamicsWorld extends btCollisionWorld {
658802 addAction ( action : btActionInterface ) : void ;
659803 removeAction ( action : btActionInterface ) : void ;
660804 getSolverInfo ( ) : btContactSolverInfo ;
661- setInternalTickCallback ( cb : btInternalTickCallback , worldUserInfo ?: unknown , isPreTick ?: boolean ) : void ;
805+ setInternalTickCallback ( cb : unknown , worldUserInfo ?: unknown , isPreTick ?: boolean ) : void ;
662806 }
663807 class btDiscreteDynamicsWorld extends btDynamicsWorld {
664808 constructor ( dispatcher : btDispatcher , pairCache : btBroadphaseInterface , constraintSolver : btConstraintSolver , collisionConfiguration : btCollisionConfiguration ) ;
@@ -1040,6 +1184,8 @@ declare module Ammo {
10401184 generateClusters ( k : number , maxiterations ?: number ) : number ;
10411185 generateBendingConstraints ( distance : number , mat : Material ) : number ;
10421186 upcast ( colObj : btCollisionObject ) : btSoftBody ;
1187+ getRestLengthScale ( ) : number ;
1188+ setRestLengthScale ( restLength : number ) : void ;
10431189 }
10441190 class btSoftBodyRigidBodyCollisionConfiguration extends btDefaultCollisionConfiguration {
10451191 constructor ( info ?: btDefaultCollisionConstructionInfo ) ;
0 commit comments