如何降低重力对单个SKSpriteNode的影响
How to reduce the impact of gravity on a single SKSpriteNode
我正在构建一个无尽的跑酷游戏,其中平台以随机间隔出现,然后在屏幕上从右向左滚动。
我有一个使用
垂直向上跳跃的精灵
- (void)makeCharacterJump {
[self.spriteCaveman.physicsBody applyImpulse:CGVectorMake(0.0f, 80.0f)];
}
问题是重力对 sprite 的影响意味着它下落的速度非常快,无法在平台之间留下空隙。
我想做的是稍微减慢重力对下落精灵的影响,使其产生轻微漂浮的感觉。
有什么想法吗?
如果角色是唯一受重力影响的节点,那么您可以通过以下方式更改场景的重力:
self.physicsWorld.gravity = CGVectorMake(0, desiredGravity);
如果不是,那么您将不得不使用角色的物理特性 body 属性:摩擦、linearDamping 或 angularDamping 值。
希望对您有所帮助。
我正在构建一个无尽的跑酷游戏,其中平台以随机间隔出现,然后在屏幕上从右向左滚动。
我有一个使用
垂直向上跳跃的精灵- (void)makeCharacterJump {
[self.spriteCaveman.physicsBody applyImpulse:CGVectorMake(0.0f, 80.0f)];
}
问题是重力对 sprite 的影响意味着它下落的速度非常快,无法在平台之间留下空隙。
我想做的是稍微减慢重力对下落精灵的影响,使其产生轻微漂浮的感觉。
有什么想法吗?
如果角色是唯一受重力影响的节点,那么您可以通过以下方式更改场景的重力:
self.physicsWorld.gravity = CGVectorMake(0, desiredGravity);
如果不是,那么您将不得不使用角色的物理特性 body 属性:摩擦、linearDamping 或 angularDamping 值。
希望对您有所帮助。