tutorial spritekit que ios iphone sprite-kit game-physics

ios - que - spritekit swift 4



Girando una rueda de premios con toquesMovido en SpriteKit (1)

Después de aplicar tu impulso:

[node.physicsBody applyAngularImpulse:theImpulse];

Simplemente fije la velocidad angular a una velocidad máxima cuyo valor depende de qué tan rápido desee que la rueda gire:

const CGFloat maxAngularVelocity = 2.5; node.physicsBody.angularVelocity = MIN(node.physicsBody.angularVelocity, maxAngularVelocity);

¿es posible usar applyAngularImpulse pero no aumenta exponencialmente la velocidad de la rueda?
Idealmente, me gustaría que la rueda siga mi dedo, pero establecer node.zRotation += atan2f(y2-y1, x2-x1) hace que mi rueda node.zRotation += atan2f(y2-y1, x2-x1) control. esto es lo que decidí, pero se siente bastante flojo:

- (void) touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event { UITouch *touch = [touches anyObject]; SKNode *node = [self nodeAtPoint:location]; CGPoint positionInScene = [touch locationInNode:self]; CGPoint previousPosition = [touch previousLocationInNode:self]; [node.physicsBody applyAngularImpulse:(previousPosition.x - positionInScene.x) * 0.1]; node.physicsBody.angularDamping = 1; }

escena: https://dl.dropboxusercontent.com/s/gexfburjm1coude/Screen%20Shot%202014-10-21%20at%2010.30.31%20PM.png?dl=0