脚本启用碰撞监听无效

let manager = cc.director.getCollisionManager()
manager.enabled = true

let body = node.getComponent(cc.RigidBody)
body.enabledContactListener = true

通过脚本启用碰撞监听没有执行回调函数,刚体所在的节点已挂监听脚本。但是直接在编辑器里面勾选enabledContactListener则可以实现监听,请问哪里出了问题?

好吧,看了下源码发现引擎默认就不支持刚体实例化后修改enabledContactListener属性

/**
* !#en
* Should enabled contact listener?
* When a collision is trigger, the collision callback will only be called when enabled contact listener.
* !#zh
* 是否启用接触接听器。
* 当 collider 产生碰撞时,只有开启了接触接听器才会调用相应的回调函数
* @property {Boolean} enabledContactListener
* @default false
*/
enabledContactListener: {
default: false,
tooltip: CC_DEV && ‘i18n:COMPONENT.physics.rigidbody.enabledContactListener’
},