我的场景有一堆矩形,其物理实体与矩形大小相同。我喜欢将我的所有对象都锚定到 CGPointZero,但是我注意到当我这样做时,物理体仍然锚定在中间。换句话说,我的物理身体的位置在视觉表示的左侧低 100 个像素。
这是一个简单的代码片段:
SKSpriteNode* square = [SKSpriteNode spriteNodeWithColor:[SKColor blackColor] size:CGSizeMake(width, height)];
square.anchorPoint = CGPointZero; //position based on bottom-left corner
square.position = CGPointMake(x, y);
square.physicsBody = [SKPhysicsBody bodyWithRectangleOfSize:CGSizeMake(width, height)];
任何解决此问题的想法或建议将不胜感激。例如,如果我可以可视化物理物体,那可能会有所帮助,但我不确定如何去做。
更新:所以我通过简单地不设置锚点并重新定位我的矩形来解决了这个问题。所以问题仍然存在,但我有一个解决方法,并且解决方法运行良好。