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

SpriteNode墙不显示,其他节点穿过它 迅速

如何解决SpriteNode墙不显示,其他节点穿过它 迅速

我想在屏幕周围添加墙壁,以使任何physicsBody都会被容纳并在手机倾斜时从墙壁反弹。我在场景本身上添加SKPhysicsBody。但是,MovingCard仍然会通过并消失在屏幕外。

在将self.scalemode更改为.resizefill以外的其他任何内容(例如.aspectFit)时,似乎会阻塞该对象,并且不会显示MovingCard。请帮助我了解如何解决此问题。预先感谢。

这是代码

import SpriteKit


class StartTrick: SKScene {
    let PP = PerformanceReady()
    override func didMove(to view: SKView){
        AddWalls()
        FoldedCardAppear()
    }
    func FoldedCardAppear() {
        let MovingCard =  SKSpriteNode(imageNamed: "Folded Bicycle Card")
        MovingCard.size.width = 295
        let W = MovingCard.size.width
        MovingCard.size.height = W * 1.21 // height in ratio to the width
        let H = MovingCard.size.height
        MovingCard.position = CGPoint (x: PP.ScreenHalfW(),y: PP.ScreenHalfH()) // Set to centre
        MovingCard.physicsBody = SKPhysicsBody (rectangleOf: CGSize (width: W,height: H))
        MovingCard.physicsBody?.allowsRotation = false
        addChild(MovingCard)
    }
    
    func AddWalls() {
        self.backgroundColor = .black
        self.physicsBody = SKPhysicsBody(edgeLoopFrom: self.frame)
        self.scaleMode = .resizefill
    }
}

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