Ich muss einen SpriteNode über den Rahmen bewegen. Ich habe momentan das Problem, dass es Störungen hat, während ich das mache (ein paar Frames verlieren? Nicht wirklich sicher). Was ich brauche, ist, dass das Objekt horizontal ohne eine feste Richtung x Ziel fährt, so dass, wenn x durch einen Aufprall versetzt ist, das Objekt nicht versucht, zu seiner initialisierten x-Koordinate zurückzukehren. Hier ist wie der Teil des Codes sieht aus wie jetzt:schnell, bewegend SKSpriteNode?
`spaceRock.physicsBody?.affectedByGravity = false
spaceRock.physicsBody = SKPhysicsBody(texture: (spaceRock?.texture)!,
size:(spaceRock.size))
spaceRock.zPosition = 1
spaceRock.position=CGPoint(x: xSpawnPosition, y:
Double(self.size.height/2+(spaceRock.size.height)))
spaceRock.physicsBody!.isDynamic = true
spaceRock.physicsBody!.allowsRotation = true
spaceRock.physicsBody!.categoryBitMask = 00000001
spaceRock.physicsBody!.contactTestBitMask = 00000010
addChild(spaceRock)
spaceRock.physicsBody?.applyTorque(CGFloat(randTorque))
//spaceRock.run(SKAction.moveTo(y: -self.size.height-
spaceRock.size.height, duration: rockTravelTime))`
Der Kommentar ist das, was ich habe bis zu diesem Punkt zu verbrauchen.
Vielen Dank für die Hilfe!
Sagen wir, ich nahm SKPhysicsBody heraus, wie würde ich für den Kontakt zwischen zwei Knoten testen? – Ari
@Ari Sie können überprüfen, ob sich ihre Frames mit der Schnittpunktmethode von SKNode überschneiden. Es hängt davon ab, was Sie erreichen möchten. Physik könnte der beste Weg sein, aber dann solltest du Physik benutzen, um deine Körper zu bewegen. –