SpriteKit

ジャンプするSKActionを作る

SKActionには「ジャンプする」を表すアクションがなかったので作ってみました。 public extension SKAction { class func jump(height: CGFloat, duration seconds: TimeInterval) -> SKAction { var initialY: CGFloat = 0.0 var initialFlag = true let cu…

SKNodeをロケットのように震わせる

ロケットを発射したときのように、ノードをブルブル震えさせつつ、けれども元々の場所は維持するアクションはどうやって作ったらいいんだろう、と悩んでいました。 調べたところ、ここで紹介されている方法がなかなか良いことがわかりました。Swift 3で書く…

SpriteKitでテクスチャアトラスからSKSpriteNodeを作る

SpriteKitでノード(SKNode)に画像を使いたい場合、SKSpriteNodeをテクスチャアトラスから作るのが便利です。 通常、テクスチャアトラスを作るにはたいてい専用のツールが必要で、隙間なく上手に並べたいときなどなかなか面倒だったりします。ですがXcodeだと…

SKSceneとUIViewとの座標変換

SpriteKitのSKSceneの座標系は、UIViewの左上座標とは異なり、y軸が反転した左下座標系になっています。そのため、UIGestureRecognizerのようなUIView側の座標系をSpriteKitに持ち込むには、座標系を変換してあげなくてはいけません。 具体的には、SKScene…

SKViewのバグ?

短いついでに、今日はまった面倒なバグも残しておきます。 SKViewのshowsFieldsプロパティは、マニュアルによると物理フィールドのデバッグ情報を出力できるとのこと。 showsFields Property A Boolean value that indicates whether the view displays info…