运行时修改包含PhysicsCollider 组件的 node.group 报错

  • Creator 版本:2.0.10

  • 目标平台: Web maybe ALL

  • 详细报错信息,包含调用堆栈: collider not added or already removed

  • 重现方式:为 Node 添加 PhysicsCollider 组件,运行时修改 node.group 属性,即会报错。

  • 之前哪个版本是正常的 :

  • 手机型号 :

  • 手机浏览器 :

  • 编辑器操作系统 :

  • 编辑器之前是否有其它报错 :

  • 出现概率:必现

  • 额外线索:

  • BUG 原因: PhysicsCollider 组件并没有交给 CollisionManager 管理。修改 node.group 属性,

NodeEvent.GROUP_CHANGED 触发后,获取 Node 上所有 Collider 组件(包含 PhysicsCollider)用来删除。

onNodeGroupChanged: function (node) {

    let colliders = node.getComponents(cc.Collider);

    for (let i = 0, l = colliders.length; i < l; i++) {
        this.removeCollider(colliders[i]);
        this.addCollider(colliders[i]);
    }
},

colliders 获取到 PhysicsCollider 组件,ColliderManager 中没有,删除添加就会报错

我2.1.2升级到2.1.3版本也出现这个bug了。。。

请问解决了吗,运行时修改节点group报错

大佬,解决了吗

j加一,2.4.8也有