Apple、Metalや機械学習、RealityKit 4 など開発者向けの新しいツールとリソースを発表

ニュース

2024年6月10日(現地時間)- Apple は、世界中のデベロッパがすべてのAppleのプラットフォーム向けのよりパワフルで効率的なアプリを作成できるようにデザインされた、新しいツールとリソースを発表しました。

多くのアップデートが行われていますが、ここではグラフィックスに関連する開発者向けの情報について紹介したいと思います。WWDC24で関連する動画がある場合はリンクも掲載しています。

Metal

Metal は、Apple プラットフォーム向けに設計され最適化されたシェーディング言語と組み合わせた、最新のグラフィックスおよびコンピューティング API です。オーバーヘッドの少ないモデルで、GPU が実行する各タスクを直接制御できるため、グラフィックスおよびコンピューティング ソフトウェアの効率を最大限に高めることができます。Metal にはパフォーマンスとグラフィックス品質の向上に役立つ比 GPU プロファイリングおよびデバッグ ツール スイートも含まれています。

統一されたシェーダーとデバイスの初期化

Metalライブラリを一度ビルドすれば、再コンパイルすることなくMac、iPad、iPhoneにデプロイできるようになり、貴重な反復時間を節約できるようになりました。Metalデバイスの初期化も簡素化され、同じコードでこれらのプラットフォームをターゲットにできます。

ゲーム

■Game Porting Toolkit 2

Game Porting Toolkit 2を使用すると、最新のゲームをMac、iPad、iPhoneに簡単に導入することが可能になります。

Metalシェーダコンバータを使用してシェーダを変換する際に、Xcodeシェーダデバッグツールを利用できるようになりました。また、GPUバイナリコンパイラを使用して、Meshシェーダを含むすべてのシェーダステージをビルドすることができ、Metalシェーダコンバータを介して変換されたすべてのシェーダと互換性があります。

Game Porting Toolkit 2のより詳しい情報はこちらから

Appleプラットフォーム向けの高度なゲームのデザイン』では、既存のハイエンドゲームをMac、iPad、iPhone向けに最適化する方法が紹介されています。

■Residency sets

新しいMetal Residency Set APIにより、AppleシリコンのユニファイドメモリにGPUからこれまで以上に高速にアクセスできるようになりました。関連するリソースをセットとしてグループ化し、一緒に常駐させることができます。

■レイトレーシングの改善

Appleシリコンはハードウェアアクセラレーションによるレイトレーシングをサポートします。ダイレクトステートアクセスのための新しいMetalレイトレーシングのサポートは、交差結果の余分なコピーを回避することにより、より高いパフォーマンスを引き出します。また、シェーダを移植する際に、Row-Majorマトリックスレイアウトを活用できます。

■Metalシェーディング言語の強化

Metalは、Apple GPUを活用するための強力なシェーディング言語を提供します。今年のリリースでは、新しいグローバルリソースバインディングを利用して、バッファ、テクスチャ、およびサンプラをグローバルスコープで宣言し、シェーダ内の任意の場所で使用することができるようになりました。また、cooperative threadgroupアルゴリズムのためのデバイスコヒーレント操作のサポートや、シェーダー内からコンソールに印刷するためのos_logのサポートなど、メモリコヒーレンシーの制御も強化されています。

機械学習

■MPS Graphを使用したトランスフォーマーモデル

計算、帯域幅、品質を向上させる新機能により、機械学習トランスフォーマーモデルをMetalパイプラインに統合することができるようになりました。さらに、新しいMPSGraph Viewerを使用して、シリアライズされたMPSGraphパッケージを視覚化し、ネットワークを最適化する機会を分析できます。

Metalによる機械学習の加速』では、Metal Performance Shaders Graphの新しい機能を使用して、機械学習のTransformerモデルを加速する方法が説明されています。

■MLフレームワーク

TensorFlow、PyTorch、JAXを使って、Mac上で機械学習モデルのトレーニングを高速化することができます。Metalバックエンドの改善により、HuggingFace.coのトップ50ネットワークをトレーニングし、MetaのExecuTorchフレームワークの新しいGPUアクセラレーションを使用して、カスタムMetalオペレーションでPyTorchモデルをシームレスに展開できるようになりました。また、JAXを使用した混合精度トレーニングも利用できます。

Apple GPUでの機械学習モデルとAIモデルのトレーニング』PyTorch、JAX、TensorFlow向けのMetalを使用し、Appleシリコンでモデルをトレーニングする方法が解説されています。

機械学習

Core ML

Core MLへのアップデートにより、デバイス上で高度な生成機械学習とAIモデルをより速く、より効率的に最適化して実行できるようになりました。Core MLツールは、大規模な言語モデルや拡散モデルをAppleのシリコン上で実行できるようにするため、よりきめ細かく複合的なウェイト圧縮技術を提供します。モデルは複数の関数を保持し、状態を効率的に管理できるようになり、大規模な言語モデルとアダプタをより柔軟かつ効率的に実行できるようになりました。

また、Core ML フレームワークには多次元配列に対する操作を表現するための効率的で、シンプルで、使い慣れた API を提供する新しい MLTensor 型が追加されました。さらに、Xcode の Core ML パフォーマンスレポートは、モデル内の各操作のサポートと推定コストに関するより多くの洞察を提供するために更新されました。

Core MLを使用してデバイス上に機械学習モデルとAIモデルをデプロイ』では、Core MLによって機械学習モデルとAIモデルを変換し実行する際のスピードとメモリパフォーマンスを最適化する、新しい方法を確認できます。

Create ML

オブジェクトトラッキング、最初の空間コンピューティングテンプレートは、visionOSアプリで現実世界のオブジェクトを追跡するのに役立つように設計されています。Create MLアプリの新しいデータプレビュー機能と、アプリ内で直接時系列モデルを作成できるCreate ML Componentsの新しいSwift APIにより、カスタマイズされたモデルのトレーニングワークフローが強化されます。

Create MLの新機能』では、インタラクティブなデータソースのプレビュー、visionOSアプリ向けオブジェクトトラッキングモデルの構築で使用する新しいテンプレートなど、Create MLの新機能が紹介されています。

Machine learning APIs

新しいTranslationフレームワークを使用すると、アプリ内のさまざまな言語でテキストを翻訳できます。Vision framework API は、最新のSwift機能を活用するように再設計され、画像の美学と全体的なボディポーズの2つの新機能をサポートし、自然言語フレームワークは多言語の文脈埋め込みによる拡張言語サポートを提供します。

RealityKit

RealityKit 4は、iPhone、iPad、Mac、Apple Vision Proにまたがる豊富な機能セットが揃っており、Apple Vision Proとともに昨年登場した新しいツール、Reality Composer Proは、これらすべてのプラットフォームで空間アプリの開発を可能にします。

MaterialXで構築されたシェーダー、ポータル、パーティクル、その他多くの機能が、4つのプラットフォームすべてでRealityViewで使用できるようになりました。これには、マテリアル、シェーダベースのホバーエフェクト、バーチャルライティングを追加するためのAPIや、ブレンドシェイプ、インバースキネマティクス、スケルタルポーズ、アニメーションタイムラインなどの新機能が含まれ、キャラクタアニメーション機能を拡張します。

また、RealityKit 4は、Metalコンピュートシェーダと連動する低レベルメッシュとテクスチャ用の新しいAPIにより、レンダリングへのより直接的なアクセスが可能になりました。さらに、Xcode の view debugging が 3D シーンコンテンツの検査をサポートするようになったため、RealityKit コンテンツの検査とデバッグがこれまで以上に簡単になりました。

こちらからRealityKitに関するWWDC24の動画を見ることができます。

VisionOS

Volumetric APIs

奥行きと空間を最大限に活用し、共有スペースで他のアプリと並んで実行できる、より豊かな空間体験を持つアプリを作成することができます。SwiftUIのシーンモディファイアwindowResizabilityを使用することで、ボリュームのサイズを変更できるようになりました。ボリュームは固定または動的なスケールを持つことができるようになったので、3Dオブジェクトがユーザーから離れると、サイズが一定に見えるか、離れるにつれて小さくなります。また、オーナメントをボリュームに貼り付けることができるようになりました。

TabletopKit

この新しいフレームワークは、カードや駒の操作、配置やレイアウトの確立、ゲームボードの定義などを処理することで、テーブルを中心としたコラボレーション体験を簡単に開発できるようにします。

『visionOS向けTabletopKitについて』では、ゲームをセットアップする方法、RealityKitを活用して強力なレンダリングを追加する方法や、FaceTimeの空間Personaを使用したマルチプレイヤーでのプレイをコードを数行追加するだけで実現する方法が紹介されています。

Enterprise APIs

visionOSの新しいAPIにより、センサーへのアクセスが強化され、制御が向上し、より強力なエンタープライズソリューションや空間体験を作成できるようになりました。メインカメラ、空間バーコードおよびQRコードスキャン、Apple Neural Engineなどにアクセスできます。

visionOS向けエンタープライズAPIのご紹介』では、visionOS向けの新しいエンタープライズAPIを使用して、Apple Vision Proで従業員やユーザーの生産性を高める空間体験を創出する方法を学ぶことができます。

Inputs

Apple Vision Proの入力機能がアップデートされ、ユーザの手をデジタルコンテンツの前に表示するか、後ろに表示するかを決められるようになりました。

追加機能

シーン理解の忠実度を高める機能が大幅に拡張されました。平面をあらゆる向きで検出できるようになり、周囲の表面にオブジェクトを固定できるようになりました。Room Anchorsは、部屋ごとにユーザーの周囲の環境を考慮します。

また、visionOSの新しいオブジェクトトラッキングAPIでは、ユーザーの周囲の個々のオブジェクトにコンテンツをアタッチすることができます。

こちらからVisionOSに関するWWDC24の動画を見ることができます。


より詳しい情報はAppleデベロッパのための新機能ページWWDC24で紹介された新技術のハイライトドキュメント、プレスリリース「Apple、新しいツールとリソースでデベロッパに力を与えイノベーションを推進」からみることができます。

また、WWDC24のすべての動画へはこちらからアクセスすることができます。

コメント

Translate »
タイトルとURLをコピーしました