我Sprite的物理设置是这样的:
Collision *pCollision = Collision::create();
pCollision->setPosition(x, y);
pCollision->setRandomPositionYWithRange(_collisionRandomPositionYMaxRange);
auto body = PhysicsBody::createBox(pCollision->getContentSize());
body->setDynamic(false);
body->setContactTestBitmask(CONTACT_TESST_BITMASK);
pCollision->setPhysicsBody(body);
_collisions->addObject(pCollision);
this->addChild(pCollision, ZORDER_COLLISION);
```
然后就是更新Sprite的position:
for (int i = 0; i < _collisions->count(); ++ i)
{
Collision *pCollision = (Collision *)_collisions->getObjectAtIndex(i);
pCollision->setPositionX(pCollision->getPositionX() - this->getGroundSpeed());
}
```
但是结果就是这样的:
如果删掉更新Sprite位置的代码,就是好的了,效果如下:
现在我就不明白该怎么搞了,之前用box2d是要自己更新的,但是现在我删了PhysicsBody重新添加都有问题的,不懂了,请各位高手知道的帮忙告知下,非常感谢~

