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 (将#修改为@)