微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在Swift中设置速度

下面是 Swift中Sprite Kit中的Enemy节点.我已经为节点设置了速度,但是当它产生时没有移动. Xcode没有给我任何错误,有什么我在这里做错了吗?

class Enemy: SKSpriteNode {

    init(imageNamed: String) {

        let imageTexture = SKTexture(imageNamed: imageNamed)
        super.init(texture: imageTexture,color: nil,size: imageTexture.size())

        self.name = "Enemy"

        self.physicsBody = SKPhysicsBody(rectangleOfSize: imageTexture.size())
        self.physicsBody?.dynamic = false
        self.physicsBody?.veLocity = CGVectorMake(10.0,10.0)

    }
}

解决方法

来自Apple的 SpriteKit documentation

A Boolean value that indicates whether the physics body is moved by the physics simulation.

Declaration

Swift

var dynamic: Bool

Objective-C

@property(nonatomic,getter=isDynamic) BOOL dynamic

discussion

If the value is NO,the physics body ignores all forces and impulses applied to it. This property is ignored on edge-based bodies; they are automatically static.

正如0x141E所说,你必须使你的SKPhysicsBody动态,否则它不会移动.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐