2.4.6 3D碰撞器不跟随节点BUG(内附解决方案)

测试代码很简单,给定一个节点,并挂上cc.BoxCollider3D。
然后在update方法中设置节点的位置。

这时候如果你的update方法调用来自
cc.director.getScheduler().enableForTarget(this);
cc.director.getScheduler().scheduleUpdate(this, 0, false);
那么物理信息无法同步!!!

如果你的update方法调用来自某个节点的cc.Component,这样物理信息就同步了。

TestTick.zip (828.2 KB)
重现方法:Main.ts 中注释不同的代码来测试两种方式的不同。
//使用节点组件的方式

    // let tickNode:cc.Node=new cc.Node("TickManager");

    // this.node.addChild(tickNode);

    // this.tickManager=tickNode.addComponent(TickManagerComponent);

    // this.tickManager.addTicker(this);

    //使用director.getScheduler方式

    this.tickManager=new TickManager();

    this.tickManager.addTicker(this);