gpt4 book ai didi

ios - SpriteKit 使用 applyImpulse 移动旋转的 physicsBody

转载 作者:塔克拉玛干 更新时间:2023-11-02 09:27:43 25 4
gpt4 key购买 nike

我想使用 applyImpulse 方法在基于 physicsBody 旋转的方向上移动 physicsBody。

例如,physicsBody 是一个正方形,我称之为“移动”,它会施加一个脉冲使其垂直向上移动。然后我调用一个方法将 physicsBody 向右旋转 45 度。如果我再次调用“移动”方法,physicsBody 将沿对角线向右和向上移动。

最佳答案

我建议您遵循 Sprite Kit 的坐标和旋转约定。具体来说,您的 Sprite 图像应该以零度(默认值)面向右,正值是逆时针旋转。也就是说,这是一种在 Sprite 面向的方向上施加脉冲的方法:

// Specify the force to apply to the SKPhysicsBody
CGFloat r = 5;

// Create a vector in the direction the sprite is facing
CGFloat dx = r * cos (sprite.zRotation);
CGFloat dy = r * sin (sprite.zRotation);

// Apply impulse to physics body
[sprite.physicsBody applyImpulse:CGVectorMake(dx,dy)];

关于ios - SpriteKit 使用 applyImpulse 移动旋转的 physicsBody,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25628811/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com