1
私は3 SKSpriteNode
のアプリケーションで使用しています。 floorSprite
,leftWall
およびrightWall
。SKSpriteNodeは薄い色の線を作成します
これは私が現在使用していますコードです:ここでは
let floorSprite = SKSpriteNode()//(imageNamed: "floor")
floorSprite.alpha = 0.0
floorSprite.anchorPoint = CGPoint(x: 0.5, y: CGPoint.zero.y)
floorSprite.physicsBody = SKPhysicsBody(rectangleOf: CGSize(width: self.frame.size.width, height: floorSprite.size.height + 12))
floorSprite.physicsBody?.isDynamic = false
floorSprite.physicsBody?.restitution = 0.4
floorSprite.position = CGPoint(x: self.frame.minX, y: self.frame.minY + (floorSprite.size.height/2))
floorSprite.physicsBody?.contactTestBitMask = 0x1 << 1
floorSprite.physicsBody?.collisionBitMask = 0x1 << 1
floorSprite.zPosition = 4
floorSprite.aspectFillToSize(self.frame.size)
self.addChild(floorSprite)
self.floorSprite = floorSprite
let leftwall = SKSpriteNode()
leftwall.physicsBody = SKPhysicsBody(rectangleOf: CGSize(width: 0.1, height: self.frame.size.height*2))
leftwall.physicsBody?.collisionBitMask = 0x1 << 1
leftwall.physicsBody?.isDynamic = false
leftwall.position = CGPoint(x: 0 , y: self.frame.size.height/2.0)
leftwall.zPosition = 4
leftwall.physicsBody?.restitution = 1.0
self.addChild(leftwall)
let rightwall = SKSpriteNode()
rightwall.physicsBody = SKPhysicsBody(rectangleOf: CGSize(width: 0.1, height: self.frame.size.height*2))
rightwall.physicsBody?.collisionBitMask = 0x1 << 1
rightwall.physicsBody?.isDynamic = false
rightwall.physicsBody?.restitution = 1.0
rightwall.position = CGPoint(x: self.frame.size.width , y: self.frame.size.height/2.0)
rightwall.zPosition = 4
self.addChild(rightwall)
は、私が持っている問題のスクリーンショットです。ライトブルーの線が見えます。 self.addChild
行を削除すると、スプライトは表示されず、ライトブルーの色は消えます。 CLICK HERE FOR IMAGE.
ここで何が間違っているのでしょうか?私はleftWall.isHidden = true
とleftWall.alpha = 0.0
を追加しようとしたが、それは効果がありません...
あなたがシーンに添付ビューに '.showsPhysics = true'をしなければならないのですか? –
@RezaShirazianあなたは命を救っています。その行を削除し、今、すべてのfint、ありがとう! :) – Andr3wz