iOS 8ではSpriteKitにかなり変更が加えられました。
概要はWhat’s New in iOS: iOS 8.0に、
詳細はSpriteKit Changesにまとめられています。
日本語だと、iOS 8 for Developers - Apple Developerに少しだけ記述があります。
※ ちなみに、iOS 7.1での変更点はiOS 7.0 to iOS 7.1 API Differencesにあり、ほんの少しだけです。
今回は、3D関連や物理エンジン、アニメーション関連など多数のアップデートがあり、Nodeの種類も増えました。
また、XcodeのGUIでシーンのコンテンツも編集できるようになりました。
(Game
テンプレートを利用してプロジェクトを作成すると、sks
ファイルが用意されていてGUIでそのまま編集可能になっています。)
正直な所、変更点が多すぎて全て追えていないのですが、気になったものをいくつか触ってみました。
Fieldは「場」といったところでしょうか。 バネや放射状の物理効果を与えることができるようです。
かなりいろいろなことができるようで、まだ把握しきれていません。 ひとまず箱の周りを円がバネっぽく動くサンプルを作りました。
光を追加するノードです。ドラクエの松明的な表現が簡単にできそうでありがたいです。 サンプルでは画面右上に置いています。
箱は光を受けているのがわかると思います。円は光の影響を受けていません。
(SKSpriteNode
はlightCategoryBitMask
が設定できため。どうやらSKSpriteNode
にしか適用できないようです。)
Nodeに設定したSKPhysicsBody
を枠線で表示してくれる機能です。
iOS 7.1で追加されていたようです。知りませんでした。
これでようやく他の物理エンジンと同じように、物理体を目で確認しながらデバッグできるようになります。
色がかなり見づらいのが気になりますが…。
今回はここまで。ソースコードはこちらです。
sj-posts-apps/iOS8Features at master · tnantoka/sj-posts-apps
他の作業をする中で新機能を触ることがあれば、また追記します。