我有一个没有按预期移动的SKSpriteNode:
在我的GameScene.swift
中var ball = SKSpriteNode(imageNamed: "Sphere")
ball.position = CGPointMake(frame.size.width/2, frame.size.height/2)
ball.physicsBody?.dynamic = true
self.addChild(ball)
var impulse = CGVectorMake(0.5, 0.0)
ball.physicsBody?.applyImpulse(impulse)
现在,我能够在屏幕中间看到球体,但它没有按预期移动,为什么?
甚至没有:
ball.physicsBody?.affectedByGravity = true
感谢任何帮助,谢谢
答案 0 :(得分:2)
首先我必须检查PhysicsBody
已初步化 - 也许是您的选择?展开失败。因此,在var ball声明下方添加以下行:
ball.physicsBody = SKPhysicsBody(rectangleOfSize: ball.frame.size)
它可能不是理想的物理身体形状,但这应该允许你的球按照冲动移动。