私は、標準の XCode Swift Game Template でシンプルな SKCropNode を使用しています。エミュレーターではすべて正常に動作しますが、iOS 8.3 を搭載した実際の iPhone 4S では、緑のマスクのみが表示されます (形状は赤ですが)。テクスチャ スプライトは表示されません。面白いことに、iOS 9 を搭載した iPhone 5S でもすべて正常に動作します。問題はiPhone 4SまたはiOS 8.3にあります
これは、デバイスを iOS 9 にアップデートできた問題のスクリーンショットですが、 iOS 8 ユーザーもサポートすることを考えていました。それは修正可能ですか、それとも Apple のバグですか?
再現するコードは次のとおりです。これは、XCode の標準の SpriteKit ゲーム テンプレートに基づいています。
let center = CGPoint(x: self.frame.width*0.5, y: self.frame.height*0.5)
let sprite = SKSpriteNode(imageNamed:"Spaceship")
sprite.position = center
let mask = SKShapeNode(rectOfSize: CGSize(width: 200, height: 200))
mask.fillColor = SKColor.redColor()
mask.position = center
let crop = SKCropNode()
crop.maskNode = mask
crop.addChild(sprite)
self.addChild(crop)