米Appleは6月3日(現地時間)、同社の開発者向けカンファレンス「WWDC19」の基調講演において、同社の各種OSの次期メジャーアップグレードやハードウェアの新製品を発表したが、もともと開発者向けのカンファレンスということもあり、開発者向けの情報も2つ発表された。将来のApple製品に大きく関わってくる、これらの新情報をまとめて紹介しよう。

  • WWDCの基調講演では各種開発ツールを公開

Appleの未来を支えるAR技術

基調講演において、同社のソフトウェアエンジニアリング担当シニアバイスプレジデントを務めるCraig Federighi氏は、「Appleが注力する技術にはMetalやCoreMLなどがあるが、それらは今週たっぷり紹介する」と説明。「今日はそのうちの2つ、ARとSwiftに絞って紹介する」とした。

  • 先ずはARのほうから

数年前から始まったXR(VR:Virtual Reality=仮想現実、MR:Mixed Reality=複合現実、AR:Augmented Reality=拡張現実、SR:Substitutional Reality=代替現実の4つの総称、X Reality=クロスリアリティ)ブームだが、以前よりAppleのCEO、Tim Cookは「AppleはARに注力する」と主張しており、iOS 11からは「ARKit」というフレームワークを発表し、アプリ開発者がAR技術を使いやすい環境を整えてきた。

AR分野としては3つの新技術が発表された。まず「RealityKit」は、3DモデリングやUnityなどのゲーミングエンジンの知識がなくても、AR用のデータを写真並みにリアルにレンダリングするとともに、物理学的な法則に従ったアニメーションやサウンド処理を行える複雑なARアプリの開発を可能とするもの。Appleが推進する開発言語「Swift」用のAPIも用意される。

  • Reality Kitは物理エンジンやレンダリングエンジンを専門知識なしに容易に使える仕組み

続いて「Reality Composer」は、macOS、iOS、iPad OS上でのインタラクティブなAR体験を作成可能とする環境。ARコンテンツはドラッグ&ドロップで直感的に配置でき、Xcode用のツールとiOSアプリを使って即座にテストできる。

  • Reality Composerを使えば開発中のAR体験をリアルタイムでテストできる

そしてARアプリ向けのフレームワーク「ARKit」の最新版となる「ARKit 3」が発表され、さらに高度なARアプリの開発が可能となる。ARKit 3で追加された要素としては、カメラで写している人の動きをARコンテンツがトレースする「Motion Capture」と、リアルタイムで人物がARコンテンツと合成され、前後関係も処理できる「People Occlusion」が紹介され、いずれも開発者から大きな反響をもって迎えらた様子だった。

  • 高精度に人の動きをトレースする「Motion Capture」

  • ARオブジェクトと現実の前後関係などの複雑な処理を肩代わりしてくれる「People Occlusion」

最後にARKit 3を使った実例として、「マインクラフト」を開発したMojang社チーフブランドオフィサーのLydia Winters氏と、クリエイティブディレクターのSaxs Persson氏が登壇し、5月にマインクラフト10周年記念として開発されたマインクラフトのAR拡張版「Minecraft Earth」の実機プレイを初公開した。

  • 大人気ゲームの最新版の初披露とあって、盛大な拍手が送られた

Minecraft Earthでは、iPhoneやiPadを使って現実世界にブロックを配置して建物を作ったり、動物を放す、モンスターと戦うといったことが可能。小さく作った建築物が実物大に拡大表示されると、建物の内側から眺めることもできるなど、斬新な体験が得られる。このレベルのAR体験が比較的容易に開発できるのであれば、開発者にとっては大きな省力になるはずだ。

ARKitはA9プロセッサー以上のSoCを搭載したハードウェア(iPhone 6s/SE以上)を必要とするが、先日、A10プロセッサーを搭載しながら2万円台から購入できるiPod Touch(第7世代)が発売されたばかり。これまでに販売されたiPhoneやiPadを含めても、世界最大のARプラットフォームと言える。こうしたインストールベースに向けて最先端のAR体験を提供できるとなれば、他プラットフォームに対する翁アドバンテージになるだろう。Federighi氏は「今年はARにとってもの凄い年になるだろう」と締めくくった。

開発効率がさらに加速する「SwiftUI」

続いてAppleが推進する開発言語「Swift」だ。Federighi氏はSwiftが発表されてからまだ5年しか経っていないにも関わらず、Swiftで開発されたアプリが45万本にも達することを紹介し、容易に習得できることをアピール。Swift以前に使われてきた開発言語「Objective-C」では、Objective-Cの上に「AppKit」「UIKit」という2つのフレームワークが用意されていたが、Swift上で動くさらに効率的な新しいフレームワークとして「SwiftUI」を発表した。

  • 新しいフレームワーク「SwiftUI」を発表

SwiftUIは、読みやすく自然に記述できる宣言型のSwift構文を採用しており、開発環境「Xcode 11」のデザインツール「Playground」とシームレスに統合されている。SwiftUIの威力を示すものとして、比較的シンプルなリストビュー形式のアプリを記述する場合、UIKitでは数画面スクロールするようなソースコードが必要だったが、SwiftUIではわずか13行のコードで実現できることが紹介されると、会場は万雷の拍手で湧き上がった。

  • Xcodeともハイレベルに統合されており、変更点がリアルタイムで反映される

SwiftUIを使えば、アニメーション処理やダークモード、ARやアクセシビリティなどのOS機能も自動的にサポートされるほか、macOSからi OS、iPad OS、tvOS、watchOS向けアプリも一度に開発できるとあって、開発者の負担は大きく軽減されるだろう。

macOSとiPadの垣根がさらに低くなる

昨年のWWDC18で、AppleのFederighi氏は、Appleのプラットフォームにアプリを提供する開発者の負担を軽減するために、iOSアプリの開発に使われるUI KitをmacOSアプリの開発に移植し、それによってiOSアプリの開発者がMac用のアプリを提供しやすくなることを宣言。この開発フレームワークの移行は数年をかけて完了させる計画で、第1フェーズとして、macOS Mojaveで「株価」「ボイスメモ」などのアプリを移植してみせた。

macOS Catalinaにおける「Project Catalyst」は、この計画の第2フェーズに当たるものだ。開発環境「Xcode 11」では、iPad向けアプリを作成する際にmacOSもターゲットにすることで、iPadとMacの双方で動作するアプリケーションを作成できる。基調講演ではTwitter社が開発終了していたMac版Twitter公式クライアントを、iPad版をベースに復活させることを明らかにしたほか、GameloftがiPad向けのレーシングゲーム「Asphalt 9:Legends」を開発初日で動作させることに成功したとのコメントを寄せた。またアジャイル開発ツール「Jira Software」を開発するAtrassia社は数日でJiraをMacに移植できたことをデモしてみせた。

  • ゲームのようにハードウェア依存も大きな既存プロジェクトでも、ほとんど手を入れずに数日でMac対応が実現するという

前述した「SwiftUI」を使えば、こうしたアプリの開発はさらに加速することになる。機器同士の有機的な連携がAppleプラットフォームの魅力だが、各プラットフォームのアプリも連携しやすくなることで、Apple製品を揃える魅力が高まる。iPhoneの販売低迷で苦戦がささやかれるAppleだが、こうした連携を武器に、再びプラットフォームとしての魅力をアピールしたい構えだ。