如何减少重力对单个 SKSpriteNode 的影响
Posted
技术标签:
【中文标题】如何减少重力对单个 SKSpriteNode 的影响【英文标题】:How to reduce the impact of gravity on a single SKSpriteNode 【发布时间】:2015-11-09 10:11:59 【问题描述】:我正在构建一个无尽的跑步游戏,其中平台以随机间隔出现,然后在屏幕上从右向左滚动。
我有一个使用垂直向上跳跃的精灵
- (void)makeCharacterJump
[self.spriteCaveman.physicsBody applyImpulse:CGVectorMake(0.0f, 80.0f)];
问题在于,重力对精灵的影响意味着它下落得很快,无法在平台之间形成间隙。
我想要做的是稍微减慢重力对下落精灵的影响,从而营造出轻微向下漂浮的印象。
有什么想法吗?
【问题讨论】:
你的穴居人是唯一受重力影响的节点吗? 是的,这将是我认为受重力影响的唯一节点 【参考方案1】:如果角色是唯一受重力影响的节点,那么您可以通过以下方式更改场景的重力:
self.physicsWorld.gravity = CGVectorMake(0, desiredGravity);
如果不是,那么您将不得不使用角色的物理身体属性:摩擦力、线性阻尼或角度阻尼值。
希望对您有所帮助。
【讨论】:
以上是关于如何减少重力对单个 SKSpriteNode 的影响的主要内容,如果未能解决你的问题,请参考以下文章