按理说,可以说有两个碰撞系统的
一个是设置collision碰撞组件进行碰撞
另一个是 设置物理引擎 getPhysicsManager ,开启物理引擎,由物理引擎进行检测碰撞,然后对节点配置 PhysicsCollision进行碰撞
但是PhysicsCollision和 RigidBody配置好了,物理引擎也在GameSense的onLoad里配置了,但是却不见 Sprite 自由落体
很奇怪,好像物理引擎并没有生效
这是主Sense场景的onLoad函数
onLoad () { this.enabled = true; // 开启了物理引擎 cc.director.getPhysicsManager().enbaled = true; console.log('是否开启了物理引擎 ----'+ cc.director.getPhysicsManager().enbaled) //配置重力加速度 cc.director.getPhysicsManager().gravity = cc.v2(0, -320); console.log('重力加速度 ----'+ cc.director.getPhysicsManager().gravity ) //开启重力传感系统 cc.systemEvent.setAccelerometerEnabled(true); cc.systemEvent.on(cc.SystemEvent.EventType.DEVICEMOTION,this.onDeviceMotionEvent, this); //获取碰撞检测系统 var manager = cc.director.getCollisionManager(); manager.enabled = true; manager.enabledDebugDraw = true; },
打印发现物理引擎已经开启
重力加速度竟然设置的无效!!!