cocos2dx3.0版本对之前版本的物理引擎使用做了一些修改,所以现在对3.0版本物理引擎的使用做简单的介绍,并且会在接下来的博客中写一个游戏案例。
1.在使用之前,还是跟之前版本一样首先要创建一个物理世界!
Scene* HelloWorld::createScene()
{
auto scen=Scene::createWithPhysics();//创建一个物理世界
scen->getPhysicsWorld()->setDebugDrawMask(PhysicsWorld::DEBUGDRAW_ALL);//将具有物理作用的物理设置为颜色
Vect gravity=Vect(0.0f,-600.0f);//设置重力
scen->getPhysicsWorld()->setGravity(gravity);
auto wall=Node::create();//创建物理边界
wall->setPhysicsBody(PhysicsBody::createEdgeSegment(Point(100,100),Point(380,100),PHYSICSBODY_MATERIAL_DEFAULT,0));//墙壁其实就是一条线,第一个参数为起始坐标,第二个参数为结束坐标,第三个墙壁的材料,第四个为墙壁的厚度。
scen->addChild(wall);
auto wall2=Node::create();
wall2->setPhysicsBody(PhysicsBody::createEdgeSegment(Point(100,100),Point(100,480),PHYSICSBODY_MATERIAL_DEFAULT,0));
scen->addChild(wall2);
auto layer = HelloWorld::create();
scen->addChild(la