有一种简单的方法来模拟场景中的电流吗?我知道它们在spritekit中提供重力、质量、密度、拖动和其他属性,但我没有看到的是,我如何模拟当前影响场景中的物体?
也就是说,我有一个物体从屏幕的顶部下降到底部,就好像它是从瓦特掉下来的,设置这个物体应该是相当直接的。然而,让我说,我想添加一个电流从左到右流过中间的场景.因此,当物体下落时,它开始受到电流的影响,并开始随着电流的移动而移动,当它靠近电流的中心时,它增加了它的左右运动,当它通过电流的中心并离开它的中心时,左右运动就变慢了。
这个是可能的吗?我是否需要创建带重力向左向右移动的invisibe/透明节点来模拟这个过程?还是我应该用不同的方法?
发布于 2014-04-10 15:31:39
这可以在-update方法中处理。您可以检查某个节点是否位于某个区域内,并对其施加压力,就好像它受到了电流的影响一样。
编辑:我已经张贴了一种方法,你可以区分的力量,根据中心的电流。
-(void)update:(CFTimeInterval)currentTime
{
for (SKNode *node in self.children)
{
if (node.position.y > 300 && node.position.y < 500) //Let's say the current is between these values, modify to your situation.
{
float diff = ABS (node.position.y - 400);//Difference from center of current.
CGVector force = CGVectorMake(2*(100 - diff), 0);//Variable force
[node.physicsBody applyForce:force];
}
}
} https://stackoverflow.com/questions/22991802
复制相似问题