新プログラミング言語SwiftとiOS用3DライブラリのMetal発表

日本時間6月3日にWWDC 2014で発表されましたSwiftとMetalですが、これまでのObjective-CやOpenGLは残るの?と気になりましたので、Xcode6-Betaをインストールして確認してみました。

まずは現在のバージョンであるXcode5の新規プロジェクト作成の画面。
xcode5new

選択できるプロジェクトは

  • Master-Detail Application
  • OpenGL Game
  • Page-Based Application
  • Single View Application
  • Tabbed Application
  • Utility Application
  • Empty Application
  • SpriteKit Game

の8つです。

次にXcode6-Betaの新規プロジェクト作成の画面。
xcode6new

「OpenGL Game」と「SpriteKit Game」が「Game」に統合され、「Utility Application」が無くなっています。Utilityが無くなっているのはBeta版だからなのか理由はわからないのですが正式リリース時はまた変わっているかもしれません。

次の画像は「Game」を選択して進んだところです。
xcode6game

「Language:」と「Game Technology:」の項目が追加されています。

「Language:」の選択は予想通り
lang_select
「Swift」と「Objective-C」の2つから選択できるようです。取り敢えずC言語が直ぐに無くなるわけで無いので一安心。これから開発を始める人は「Swift」の方が楽かもしれません。

「Game Technology:」の項目は
game_select

  • SceneKit
  • SpriteKit
  • OpenGL ES
  • Metal

の4項目。既存の2つに「SceneKit」と「Metal」が追加されています。「SceneKit」は2D/3Dのカジュアルゲーム向けだそうです。そうすると物理演算等の高度な計算が不要であれば「SceneKit」。2Dで物理演算使うなら「SpriteKit」。3Dは新規でiOS専用なら「Metal」。iOS7との互換性を保つなら「OpenGL ES」という住み分けになるのでしょうか?これを見てもゲームアプリに力を入れているのが伝わってきます。

これは秋のiPhone発表が楽しみです。

アップル、新プログラミング言語Swiftを発表。レガシーを廃して高速化したiOS/OS X開発用 – Engadget Japanese

【iOS 8】iPhoneの3Dゲーム性能が最大10倍になる「Metal」が発表されました! – たのしいiPhone! AppBank

iOS 8 SDKではデベロッパがA7ハードウェアのグラフィクス機能に直接アクセス–iPhone/iPadが最新ゲーム機並の迫力に | TechCrunch Japan

iTunes – ブック – Apple Inc.「The Swift Programming Language」

Swift Programming Language – Apple Developer