私はゲームを作成しています。私はヒーローの物理境界をコード化しようとしています。私のシーンを実装し、私は "desertForeground"でアルファマスクのテクスチャ物理学のボディを作成しようとしていますが、エラーは発生しませんが、クラッシュし続け、このエラーが発生し、基本的に無効な命令だと言われていますが、なぜ間違っているのかは分かりません。 誰か助けてくれますか?私はあなたがdesertForegroundTexture
を移入する方法に問題があるSWIFT起動時のアルファマスク/テクスチャ物理学のボディの致命的なエラー
import SpriteKit
enum BodyType:UInt32 {
case hero = 01
case bullet1 = 010
case enemy1 = 0100
case enemy2 = 01000
case enemy3 = 010000
case desertForegroundCase = 02
}
class GameScene: SKScene, SKPhysicsContactDelegate {
let desertBackground = SKSpriteNode (imageNamed: "RZ-
DesertBackground.png")
let desertForeground = SKSpriteNode (imageNamed: "RZ-
DesertForeground.png")
let desertgully = SKSpriteNode (imageNamed: "RZ-DesertGully.png")
override func didMoveToView(view: SKView) {
CreateScene()
}
func CreateScene(){
desertForeground.position = CGPoint(x: 570 , y: 102)
desertForeground.size = CGSize (width: 1136, height: 200)
desertForeground.zPosition = 1
let desertForegroundTexture = SKTexture()
let desertForegroundBody = SKPhysicsBody(texture:
desertForegroundTexture, size: CGSize(width: 1136, height: 200))
desertForeground.texture = desertForegroundTexture
desertForegroundBody.dynamic = true
desertForegroundBody.affectedByGravity = false
desertForegroundBody.allowsRotation = false
desertForegroundBody.categoryBitMask =
BodyType.desertForegroundCase.rawValue
desertForegroundBody.contactTestBitMask = BodyType.enemy1.rawValue
| BodyType.enemy2.rawValue | BodyType.enemy3.rawValue |
BodyType.soldierL.rawValue | BodyType.soldierT.rawValue
desertForeground.physicsBody = desertForegroundBody
}
}