ハイライト
Apple は、iOS 14 および Xcode 12 に A12 Bionic に必要なデバイス機能を追加しました。これにより、Info.plist の制限を通じて高性能ゲームやプロ仕様のアプリを A12 以降のデバイスにインストールできるようになり、App Store でユーザーに互換性について説明しました。
主要内容
コンソールレベルのゲームがiPadに登場します。アート リソース、リアルタイム ライティング、複雑な物理現象、AR シーンがすべて完成しました。チームは新しいデバイスではスムーズに動作していましたが、古いデバイスでは同じエクスペリエンスを確実に提供することができませんでした。すべての iOS 14 デバイスのサポートを継続するということは、画質を削減するか、大量のダウングレード パスを維持することを意味します。
これまで、開発者は、必須のデバイス機能を使用してハードウェア要件を表現できました。たとえば、Metal キーはアプリケーションに Metal グラフィックス API が必要であることを示し、ARKit キーはアプリケーションに AR をサポートするデバイスが必要であることを示します。 App Store はこれらの機能を読み取り、ユーザーが条件を満たさないデバイスにアプリをインストールできないようにします。
このセッションでは、より狭い問題に取り組みます。一部のゲームやプロフェッショナル アプリケーションは、A12 Bionic 以降のチップによってもたらされるプラットフォーム全体のパフォーマンスの中核となる条件に依存しています。 iOS 14 と Xcode 12 では、このような状況に対する A12 パフォーマンス要件が追加されています。開発者が Info.plist でそれを宣言すると、App Store は互換性情報をユーザーに表示し、サポートされていないデバイスがダウンロードされるのを防ぎます。
Apple はまた、自社の境界を非常に明確にしています。このセットアップは、最新のハードウェアを実際に必要とする少数のエクスペリエンスにのみ適しています。この講演では、開発者に対し、まずパフォーマンスの最適化を完了し、iOS 14をサポートするすべてのデバイスをカバーするよう努めてから、最小限のハードウェアをA12 Bionicにアップグレードするかどうかを決定するよう求めている。
詳細
必要なデバイス機能によってインストールのしきい値が決まります
(00:29) 必要なデバイス機能は、デバイス関連の要件を説明する Info.plist 内のリストです。これは、アプリをデバイスにインストールできるかどうかを判断するために App Store によって使用されます。デバイスに宣言された機能が欠けている場合、ユーザーはそのデバイスをダウンロードしてインストールすることができず、要件を満たさないデバイスではアプリケーションは起動されません。
キーポイント:
- 必要なデバイス機能はインストールおよび起動のしきい値であり、機能紹介のコピーではありません。
- 各エントリは、アプリが実際に実行する必要があるデバイスの機能に対応している必要があります。
- Metal キーは、アプリケーションに Metal グラフィック API が必要であることを示し、セッションでは A7 チップと GPU の機能について言及します。
- ARKit キーは、アプリケーションに AR 対応デバイスが必要であることを示し、セッションでは、一般的なしきい値が A9 以降のチップであると述べられています。
- リスト内の項目は配布に影響を与えるため、オプション機能を必須機能として記述することはできません。
A12 パフォーマンス機能は、いくつかの高負荷エクスペリエンスをターゲットとしています
(01:45) iOS 14 の新しいパフォーマンス キーでは、デバイスが A12 Bionic 以降のチップを使用する必要があります。これは、コンソール、PC、またはデスクトップクラスのプロフェッショナル ソフトウェアに近いエクスペリエンスをサポートするために、パフォーマンスを重視するアプリケーションやゲームを対象としています。
キーポイント:
- このパフォーマンス キーは、アプリに A12 Bionic 以降のデバイスが必要であることを示します。
- iOS 14 および Xcode 12 で利用できます。
- セッションは「ハイエンド ゲーム」や「プロフェッショナル アプリケーション」の文脈に置かれており、通常の機能をカジュアルに起動するのには適していません。
- 有効にすると、古いデバイスのユーザーはインストール前に App Store によってブロックされ、製品が到達できるユーザーの範囲が狭くなります。
A12 しきい値は、一連のハードウェア機能で構成されます
(02:15) A12 Bionic 要件は抽象的なラベルではありません。 session には、6 コア CPU、4 コア GPU、第 2 世代ニューラル エンジン、キャラクター オクルージョンとモーション キャプチャ用の ARKit 3、および Metal GPU ファミリー Apple 5 などの機能がリストされています。
キーポイント:
- 持続的なコンピューティング、レンダリング、ゲーム負荷のための CPU および GPU パワー。
- 第 2 世代のニューラル エンジンは A12 しきい値の一部であり、専用チップのパワーに依存する高負荷エクスペリエンスに適しています。
- ARKit 3 のキャラクター オクルージョンとモーション キャプチャは、より複雑な AR エクスペリエンスに適しています。
- Metal GPU ファミリ Apple 5 は、グラフィックスとコンピューティング パイプラインのより高いパフォーマンスのベースラインを提供します。
Xcode で宣言し、TestFlight で検証する
(03:01) Xcode で宣言的に実行されます。アプリの Info.plist を開き、必要なデバイス機能を追加し、ドロップダウン メニューから A12 要件を選択します。セッションでは最終的に、この新しいキーを検証するために iOS 14 ベータ版と TestFlight を使用することを推奨しています。
キーポイント:
- 最初にパフォーマンスの最適化を実行し、アプリケーションが iOS 14 をサポートするすべてのデバイスをカバーできるようにします。
- 本当に最新のハードウェアを必要とする少数のエクスペリエンスに対してのみ、最小要件を A12 Bionic に引き上げます。
- Xcode 12 は、Info.plist エディターに A12 要件オプションを提供します。
- App Store は、デバイスがアプリをサポートしているかどうかをユーザーに示し、サポートされていないデバイスのダウンロードをブロックします。
- リリース前に iOS 14 ベータ版と TestFlight を使用して配布動作を検証します。
重要ポイント
-
対処方法: ハイエンド画質モードの独立した配信閾値を作成します。 価値がある理由: A12 キーを使用すると、チームは最小限のデバイスを A12 以降のチップにロックできるため、古いデバイスがインストール後に許容できないフレーム レートになることを防ぎます。 開始方法: まず、Metal パフォーマンス ツールを使用してデバイス全体の最適化を完了し、次に Xcode の Info.plist で A12 要件を選択し、TestFlight を使用して互換性のあるデバイスのリストを確認します。
-
機能: プロフェッショナルなビデオ、オーディオ、または 3D 編集機能を高性能バージョンに分割します。 実行する価値がある理由: Session では、適用可能なシナリオとしてデスクトップ レベルのプロフェッショナル アプリケーションを明確にリストしています。 A12 の CPU、GPU、ニューラル エンジンは、リアルタイム プレビュー、エクスポート、またはローカル推論のためのより安定したベースラインを提供できます。 開始方法: リアルタイムで完了する必要があるワークロードをリストし、古い機器がダウングレード計画を通じて基準を満たせないことを確認してから、高性能 SKU の A12 機能を宣言します。
-
何をすべきか: 高度な AR エクスペリエンスのための最小ハードウェアを設定します。 実行する価値がある理由: A12 要件には、ARKit 3 のキャラクター オクルージョンとモーション キャプチャが含まれており、これらの機能に依存するマルチプレイヤー インタラクション、モーション キャプチャ、または空間プレゼンテーションに適しています。 開始方法: 関数マトリックスで ARKit 3 の依存関係をマークし、まず基本モードが提供できるかどうかを判断します。コア エクスペリエンスがこれらの機能から切り離せない場合は、A12 要件を宣言します。
-
何をすべきか: リリース プロセスに「インストールしきい値の確認」を追加します。 実行する価値がある理由: 必要なデバイス機能は App Store のダウンロード資格に直接影響し、誤った宣言は到達可能なユーザーを失うことになります。 開始方法: Info.plist を変更するたびに、TestFlight を使用してさまざまなデバイス アカウントへのインストール可能性を確認し、App Store の互換性に関するヒントをリリース チェックリストに含めます。
関連セッション
- Metal で Apple GPU を活用する — Apple GPU アーキテクチャと Metal がどのように帯域幅を削減し、グラフィックス パフォーマンスを向上させるかについて説明します。
- GPU カウンターを使用して Metal アプリとゲームを最適化する - Xcode 12 の GPU カウンターを使用して、より高いハードウェア ベースラインが本当に必要かどうかを判断します。
- Xcode 12 を使用して Metal アプリについての洞察を得る — Xcode 12 の Metal デバッグおよびプロファイリング ツールをデモします。
- Apple シリコン Mac の Metal パフォーマンスの最適化 — Apple シリコン上の Metal ワークロードのパフォーマンスの最適化について学び続けます。
コメント
GitHub Issues · utterances