Skip to content

fu5ha/CCBullet3D

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

35 Commits
 
 
 
 
 
 

Repository files navigation

Bullet Cocos3D Wrapper

IMPORTANT!!
You need to edit your build settings and add a NOT recursive header search path "./Bullet\ Wrapping/src/" WITH the quotes to the "Header Search Paths" and "User Header Search Paths".

create an instance of CC3PhysicsWorld (contains a btDiscreteDynamicsWorld)
CC3PhysicsWorld *_physicsWorld = [[CC3PhysicsWorld alloc] init];
and set it's gravity
[_physicsWorld setGravity:0 y:-9.8 z:0];

create a physics object
//for a box that is 1 x 1 x 1
CC3MeshNode *boxNode;
btCollisionShape *boxCollisionShape = btBoxCollisionShape(btVector3(1,1,1));//I might provide a wrapper sometime in the future.
CC3PhysicsObject3D *boxObject = [_physicsWorld createPhysicsObject:node shape:boxCollisionShape mass:1 restitution:0.3 position:boxNode.location];

apply force/impulse
[boxObject applyForce:cc3v(0,1,0) position:boxObject.node.position];
[boxObject applyImpulse:cc3v(0,1,0) position:boxObject.node.position];

you need to call this in an update method:
[_physicsWorld synchTransformation];

to set the location of a physics object you need to delete the object then re-make it

About

An easy-to-use wrapper in the Cocos/Objective-C style to integrate the robust, C++ physics library "Bullet" with Cocos3D.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published