グラフィックスとゲーム
-
WWDC24 -
31:31
iOS、macOS、visionOS向けRealityKit APIの紹介
RealityKitの新しいクロスプラットフォームAPIを使用し、iOS、macOS、visionOS向けのイマーシブなアプリを構築する方法を説明します。ホバーエフェクト、光と影、ポータルクロッシングなどの新機能を取り上げ、実際のアプリでの利用例をご紹介します。
-
19:03
優れたvisionOSアプリのデザイン
イマーシブな体験を取り入れ、視線と手によるインタラクションをデザインし、奥行き、スケール、空間を利用して、魅力的な空間コンピューティングアプリを作成する方法を説明します。素晴らしいvisionOSアプリの例をいくつか紹介し、それらのデザイナーがどのようなアプローチでvisionOSプラットフォーム向けの新しい体験を構築したかを見ていきます。
-
23:54
Appleプラットフォーム向けの高度なゲームのデザイン
既存のハイエンドゲームをMac、iPad、iPhone向けに最適化する方法をご紹介します。開発したゲームを各種ディスプレイに美しく表示させ、どのデバイスでも入力やコントロールを直感的に行えるように調整し、Appleのテクノロジーを活用してプレイヤー体験を向上させる方法を説明します。
-
16:22
visionOSにおけるゲームでの入力の詳細
visionOSのゲームで優れた入力をデザインし実装する方法を学ぶセッションです。システムのジェスチャを利用して、プレイヤーとゲームの間のインタラクションをスムーズにする方法を解説します。また、カスタムジェスチャとゲームコントローラをサポートする際のベストプラクティスもご紹介します。
-
16:39
visionOS向けTabletopKitについて
TabletopKitを使用してvisionOS向けのボードゲームをゼロから構築しましょう。ゲームをセットアップする方法、RealityKitを活用して強力なレンダリングを追加する方法や、FaceTimeの空間Personaを使用したマルチプレイヤーでのプレイをコードを数行追加するだけで実現する方法をご紹介します。
-
11:29
ScreenCaptureKitによるHDRコンテンツのキャプチャ
ScreenCaptureKitを使用して、ハイダイナミックカラーをキャプチャする方法を確認しましょう。HDRのサポート、マイクからのキャプチャ、ファイルへの直接的な収録などの新機能もご紹介します。
-
32:25
RealityKitによる空間描画アプリの構築
空間描画アプリの構築プロセスで、RealityKitを使いこなしましょう。RealityKitとARKitおよびSwiftUIの統合により生まれる、印象的で魅力的な空間体験の構築について、RealityKitにおいてリソースが動作する仕組みや、ユーザーのブラシの線の更新を高速化する低レベルのメッシュおよびテクスチャのAPIなどの機能を使用する方法を解説します。
-
11:31
Object Captureのエリアモードの紹介
Object Captureのエリアモードは、Object Captureの機能を拡張してエリアのキャプチャと再構成をサポートすることで、iOS上で新しい3Dキャプチャ機能を利用できるようにします。再構成用の新しいmacOSサンプルアプリを使用して、iOSキャプチャの質を最適化する方法を説明します。また、Apple Vision Pro、iPhone、iPad、Macで、Quick Lookを使用して最終結果を確認する方法もご紹介します。独自のイメージ処理パイプラインを作成できる新しいAPIなど、強化された3D再構成の機能も見ていきます。
-
22:13
空間コンピューティング向けに3Dアセットを最適化
3Dアセットの作成を最適化するエンドツーエンドのワークフローを詳細に検討します。デジタルコンテンツ作成ツールのメッシュ、マテリアル、テクスチャを最適化するためのベストプラクティスを学べます。Shader Graph、ベイク処理、マテリアルインスタンスを使いこなして、3Dシーンを向上させつつパフォーマンスを最適化する方法をご紹介します。ネイティブツールを利用すれば、アセットをより効果的に作成してアプリのパフォーマンスを強化できます。
-
18:42
iOS/iPadOSゲームのvisionOSへの展開
iOS/iPadOS向けゲームをvisionOSに展開し、比類のない体験を実現する方法をご紹介します。3Dフレームやイマーシブな背景を追加すると、臨場感やワクワク感が高まります。立体視機能やヘッドトラッキングを利用してウインドウに奥行きを持たせ、プレイヤーをゲームの世界にいざないましょう。
-
24:10
RealityKitデバッガの詳細
RealityKitデバッガについて説明します。この新しいツールを使用して、空間アプリのエンティティ階層を検査する方法、不適切な変換をデバッグし、欠落したエンティティを特定する方法、コードのどの部分が原因でシステムに問題が生じているかを突き止める方法を確認しましょう。
-
26:06
SwiftUIによるカスタムビジュアルエフェクトの作成
SwiftUIで、息を呑むようなビジュアルエフェクトを作成しましょう。比類のないスクロールエフェクト、リッチな色処理、カスタムトランジションを構築する方法をご紹介します。Metalシェーダとカスタムテキストレンダリングを使用する高度なグラフィックエフェクトについても確認します。
-
14:24
visionOS向けQuick Lookの新機能
アプリでファイルのプレビューや編集を手早く行える、visionOSのQuick Lookについて説明します。アプリ内およびウインドウに表示されるQuick Lookの統合や、アプリでウインドウに表示されるQuick Look体験をカスタマイズするまったく新しいAPIもご紹介します。Quick Look内に3Dモデルを表示する最新の機能強化も取り上げます。
-
9:24
USDとMaterialXの新機能
AppleプラットフォームでのUniversal Scene Description(USD)とMaterialXのサポートが向上しました。このセッションで確認しましょう。これらのテクノロジーが、3Dコンテンツの作成と配信の基盤としてどのように機能するか、また、優れた空間体験を作成するためのワークフローをどのように効率化するかについて説明します。RealityKitおよびStormでのUSDとMaterialXのサポート、Appleのシステムに用意されているツールの強化点などもご紹介します。
-
29:32
Appleプラットフォームへの高度なゲームのポーティング
Appleプラットフォームでは、全世界のプレイヤーに簡単にリーチできます。Appleシリコン上でWindows実行可能ファイルを評価する方法、サンプルコードを利用してゲームのポーティングを開始する方法、シェーダコードをMetal向けに変換する方法、ゲームをMac、iPhone、iPadに展開する方法を学びましょう。HLSLシェーダを理解する高度なMetalツールを使用し、ポーティングされたシェーダをMetal上で検証、デバッグ、プロファイルする方法もご紹介します。
-
19:54
visionOSでのパススルーによるMetalのレンダリング
Metalの利用体験をvisionOSへと拡張しましょう。レンダリングしたコンテンツを、パススルーを利用してユーザーの物理環境に統合する際のベストプラクティスをご紹介します。レンダリングしたコンテンツを物理世界と一致するように配置する、トラッキング可能なアンカー予測で遅延を抑制するなど、さまざまなことを実現する方法を学べます。
-
23:20
RealityKitオーディオで空間コンピューティングアプリの質を向上
RealityKitオーディオを使用して、空間コンピューティング体験を向上させましょう。空間オーディオにより、イマーシブな3D体験がどのように実現されるかをご紹介します。環境音やリバーブから、3Dコンテンツに個性を加えるリアルタイムの音声手順ガイドまで、アプリをより魅力的にするRealityKitオーディオAPIについて詳しく説明します。
-
25:06
Metalによる機械学習の加速
Metal Performance Shaders Graphの新しい機能を使用して、機械学習のTransformerモデルを加速する方法を説明します。モデルのコンピューティングの帯域幅と質を向上させ、それをまったく新しいMPSGraphビューアに表示する方法も取り上げます。
-
-
Tech Talks -
4:37
Game CenterでマルチプレイヤーゲームにSharePlayを追加する
SharePlayを使用して、ユーザーがFaceTimeで通話中の友達とゲームを一緒にプレイできるようにする方法を確認しましょう。すでにGame CenterのマルチプレイヤーUIを使用している場合にSharePlayのサポートを簡単に有効にする方法を紹介します。また、カスタムインターフェイスを構築している場合に、SharePlayをサポートするために必要な数行のコードも紹介します。
-
26:00
Metalシェーダのパフォーマンスを改善するベストプラクティス
Apple GPUの最新技術を利用してMetalシェーダのパフォーマンスを向上させる方法を紹介します。関数定数を設定してシェーダの実行時間を短縮する方法と、関数グループを使用してコンパイラの最適化を高める方法を学びます。リソースを並列使用する機能とシェーダの実行を改善することで実行時間を短縮する方法を確認しましょう。Apple family 9 GPUの機能についての理解を深め、ハードウェアアクセラレーションをレイトレーシングに活用しましょう。
-
11:56
App Store Connect APIを利用したGame Centerの管理
Web上のApp Store Connectを介さずApp Store Connect APIを使用してGame Centerの設定を自動化する方法を紹介します。APIを通じて達成項目やLeaderboardを作成し、グループを使用して関連するゲーム間でそれらを共有する方法を確認しましょう。また、マルチプレイヤーゲームでマッチメイキングを有効化して設定する方法についても説明します。
-
6:44
Metal Performance HUDについて
グラフィックス性能をリアルタイムで分析するための新たなヘッドアップディスプレイパネルについて紹介します。Metal Performance HUDにはグラフィックスの重要な統計値が表示されるため、従来判断が難しかったパフォーマンスの問題をモニタリング、記録、特定することができます。
-
17:06
Game Centerでのルールベースのマッチメイキング
新しいルールベースのマッチメイキング機能をリアルタイムのマルチプレイヤーゲームに組み込む方法を紹介します。カスタマイズされた柔軟なマッチメイキングを提供し、プレイヤーのマッチの質を向上させ、すべてのプレイヤーにとってより楽しく魅力的な体験を生み出す方法を確認しましょう。
-
33:56
M3とA17 Proの新しいMetalプロファイリングツール
Xcode 15の新しいプロファイリングツールを活用してApple family 9 GPUで最高のMetalパフォーマンスを実現する方法を紹介します。Metalコードのプロファイリングと最適化を行うにあたって、Shader Cost Graph、Performance Heat Maps、Shader Execution Historyの各ツールを使用する方法について説明します。新しいGPUカウンタを使用してGPU占有率とレイトレーシングのパフォーマンスを最適化する方法を確認しましょう。
-
16:57
ハイエンドゲームのiPhone 15 Proへの展開
A17 Proのパワーを活用して、ゲームをiPhone 15 ProおよびiPhone 15 Pro Maxで最大限に楽しめるようにする方法を紹介します。ベストプラクティスとテクニカルなリソースを紹介するとともに、ゲームのパフォーマンス、入力、アセット管理を最適化する方法を確認しましょう。
-
29:09
M3とA17 ProでのGPUの進化
Apple family 9 GPUの動的キャッシュ、次世代シェーダコア、ハードウェアアクセラレーテッドレイトレーシング、ハードウェアアクセラレーテッドメッシュシェーディングによって、Metalを使用するアプリとゲームのパフォーマンスを向上させる方法を紹介します。
-
12:50
リファレンスモードについて
iPad Pro 12.9インチのLiquid Retina XDRディスプレイでリファレンスモードを使用して、プロのワークフローで求められる、ハイレベルなカラー要件に対応する方法を説明します。レビュー、承認、合成、カラーグレーディングなどのワークフローにおいて、リファレンスモードを使用して、色を正確に表現する方法、および一貫性のある画像表示を可能にする方法を紹介します。また、リファレンスモードと共に使用するAPI、リファレンスモードの機能および対応するメディア形式、Sidecarでリファレンスモードを活用する方法についても説明します。
-
23:31
A15 BionicによるMetalの最新機能
MetalとA15 Bionicを使用してAppやゲームを進化させる方法を紹介し、Apple GPU Family 8の最新のMetal機能を活用できるようサポートします。ロッシー圧縮を使用してメモリを節約する方法、スパースデプステクスチャとステンシルテクスチャを使用したシャドウマッピングの技法、SIMDのシャッフル命令とフィル命令を使用して画像をより速く処理する方法を確認しましょう。
-
23:44
MacBook ProでのMetal演算
最新のMacBook ProでMetal演算を活用する方法を確認します。高パフォーマンスなMetal演算における基本的な原則を学び、フレームワークを活用する方法を確認します。開発プロセスのワークフローを向上させ、クリエイティブなプロ向けのさらに優れたAppを構築する方法を紹介します。
-
35:07
Appleシリコンゲーム向けのCPUジョブスケジューリングの調整
グラフィックスを駆使したゲームはハードウェアリソースに大きな負荷がかかり、各フレームの処理に何百、何千というCPUジョブが発生することがあります。CPUのジョブを整理して、CPUの効率性と、M1、M1 Pro、M1 Maxの各チップでのパフォーマンスを最大限に高める方法を確認します。さらに優れたゲーム体験をプレイヤーに提供するために、ゲームを調整し改善する方法を紹介します。
-
28:57
A14 BionicのMetal性能の向上について
A14 Bionicにおいて、Metalは洗練されたレンダリングやパワフルな演算処理をどのような方法で可能にしているのでしょうか? このビデオでは、Apple GPU Family 7のフィーチャーに、Metalがもたらしている能力について説明しています。新しいTexture Addressing モード、高速化したSIMDノイズ低減とMatrix Multiplication処理、そして重心座標とプリミティブIDを用いたVisibility Bufferの実装に関して深掘りする内容です。
-
13:26
Metal counter を用いたLive GPU プロファイリングの活用
macOS Big SurとiOS14におけるGPUのプロファイリングにMetal counter APIを利用します。このAPIによりローレベルのGPUのプロファイリング情報にアクセスできます。以前はXcodeやInstrumentsというオフラインのツールでしか利用できませんでした。Metal Counterを使うと重要なGPUの情報にアクセスすることが可能になり、Appのパフォーマンスを微調整することでAppやゲームの使用感が速くスムーズになります。こういったローレベルのGPUタイムスタンプの回収や分析を学び、Metalに合わせたパフォーマンス向上のために細かい情報を使うことを学びます。
-
35:48
A13 BionicにおけるMetalの機能強化
Metalは、Sparse Texture・Vertex Amplification・Tier 2 Argument Buffer・ASTC HDRなどの強力なAPIとGPU駆動の処理能力をA13 Bionicにもたらします。AppleがデザインしたA13 Bionicのアーキテクチャにおける改善点を理解し、最新のMetalの機能強化がどのように最先端でモダンなAppとゲームを進歩させるかについて確認しましょう。
-
9:44
A11におけるMetal 2 - Tile Shading
Tile shadingは、イメージブロックとスレッドグループメモリを共有する際に、Appに対しレンダリングと演算処理を一つのレンダリングパスに統合することを可能にする、新しいMetal 2のパイプラインステージです。タイルシェーディングパイプラインを作成する方法、A11 GPUの高帯域幅タイルメモリをどのように活用するかについて確認します。
-
16:10
A11におけるMetal 2 - 概要
Metal 2とA11 Bionicチップのシームレスなインテグレーションは、全く新しいレベルのパフォーマンスと機能をAppやゲームにもたらします。 Imageblock、tile shading、raster order groupの強化、imageblock sample coverage control、threadgroup sharingなどを含む新しく強力なAPI機能や、A11におけるMetal...
-
10:56
A11におけるMetal 2 - Raster Order Group
Raster Order Groupは、Metal 2 Appにおいて、同一のピクセルコーディネートにアクセスする、並列フラグメントシェーダースレッドの順番の細かな制御を可能にします。A11がどのように複数グループのサポートによってRaster Order Groupを拡張するのか、および、スレッドグループメモリのアクセスのための新機能について確認します。シングルパス遅延シェーディングと準不同半透明レンダリングのパフォーマンスをどのように向上するについても確認します。
-
13:16
A11におけるMetal 2 -Sample Coverage Control
Imageblock Sample Coverage Controlは、タイルシェーダー内のマルチサンプルトラッキングデータへのアクセスを提供し、カスタムMSAA解決アルゴリズムなどの開発を可能にします。A11 GPUがユニークなサンプルをトラッキングする方法について確認し、サーフェスアグリゲーションによって密度の高いジオメトリのレンダリングを最適化するサンプルについても確認します。
-
10:28
A11におけるMetal 2 - Imageblock
Imageblockは、Metal 2 Appにおいて、A11 GPUの高帯域幅タイルメモリにおけるカスタムのピクセル毎のデータ構造の定義や操作を可能にします。Imageblockがフラグメントとタイルステージのレンダリングパスの間でデータを受け渡す方法、準不同半透明などの高度なレンダリング手法をアンロックする方法について確認します。
-
-
WWDC23 -
18:26
空間コンピューティング向けのゲーム開発
visionOSで素晴らしいゲーム体験を開発する方法を紹介します。このプラットフォームにおけるゲーム開発の基本的な要素を解説し、イマーシブ体験の異なるレベルをスムーズに移行する方法や、ARKit、RealityKit、Reality Composer Pro、Unity、Metalおよび Compositorの可能性を探るためのロードマップを共有します。
-
15:06
Macへのゲーム展開 Part 1:ゲームプランの作成
最新のハイエンドゲームをMetalとAppleシリコンのパワフルな機能でMacとiPadに展開しましょう。ゲームポーティングツールキットがどのように既存のWindowsゲームのグラフィック機能互換性やパフォーマンスの評価に役立つか学びます。オーディオ、インプット、そして高度なディスプレイ機能に対応するためのベストプラクティスや技術的リソースについて紹介します。このセッションの視聴後には、「Macへのゲーム展開 Part 2:シェーダのコンパイル」でHLSLシェーダをMetalにポーティングする方法も確認しましょう。
-
26:45
Macへのゲーム展開 Part 3:Metalでのレンダリング
ゲームをMacで移植するための3部シリーズの締めくくりとして、レンダリングコードでMetalをサポートする方法をご紹介します。Game Porting ToolKit で既存のWindowsバイナリを評価し、HLSLシェーダをMetalに移行したら、ハイエンドの最新ゲームが必要とする機能を最適に実装する方法を学びましょう。GPUリソースバインディング、レジデンシー、同期の管理方法を紹介します。GPUコマンドを最適化し、MetalFX Upscalingを使用してリッチなビジュアルをレンダリングする方法などをご紹介します。 このセッションを最大限に活用するには、まず...
-
15:10
UnityのVRアプリのフルイマーシブ空間への展開
既存のUnity VRアプリとゲームをviisionOSにどう移植するかご紹介します。取り掛かるためのワークフローを探求しUnity Input Systemでどのように目と手のためのアプリとゲームを作成するかお見せします。UnityのXR Interaction ToolKit、Foveatedレンダリング、そしてベストプラクティスを学びます。
-
18:57
Macへのゲーム展開 Part 2:シェーダーをコンパイルする
HLSLシェーダをMetalに変換するプロセスを合理化するMetal Shader Converter について、ゲームをMacに移植するための3部構成のシリーズの2つ目としてご紹介します。すべてのシェーダステージをサポートし、Apple GPUの高度な機能を活用できるDXILの高速なエンドツーエンドのShader Pipelineを構築する方法をご覧ください。また、オフラインコンパイラを使ってGPUバイナリを生成することで、アプリの起動時間とスタッタを短縮する方法もご紹介します。 このセッションを最大限に活用するには、まず「Bring your game to Mac, Part 1:...
-
31:58
Metalレイトレーシングのガイド
Metalレイトレーシングでゲームやアプリのビジュアルクオリティを向上させる方法を紹介します。MetaレイトレーシングAPIの基本を確認しましょう。よりスケールが大きく複雑なシーンの作成、メモリ使用量とビルドの時間の削減、髪や毛皮などのビジュアルコンテンツの効率良いレンダリングなどを可能にする、最新の改善点やテクニックについて解説します。
-
20:14
Reality Composer Proにおけるマテリアルの詳細
RealityKitマテリアルを使用して3Dオブジェクトの見た目を変更するためのReality Composer Proの機能を紹介します。MaterialXと物理ベース(PBR)シェーダを紹介し、シェーダグラフエディタを使ってダイナミックなマテリアルをデザインする方法を解説し、マテリアルにカスタム入力を追加してvisionOSアプリでコントロールできるようにします。 このセッションを最大限に活用するには、まず「Reality Composer...
-
15:46
イマーシブなUnityアプリの制作
Unityを使って、魅力的なvisionOSの没入体験を作成する方法を見ていきます。UnityがAppleのフレームワークと切れ目無く統合する様子を確認しつつ、プラットフォーム専用に作成できるツールについて説明し、ボリュームカメラがどの様に既存のシーンをvisionOSのウィンドウやボリュームやスペースに送り込めるのかを見ていきます。パススルーやシーン理解などのvisionOS機能を組み込んで、Shader Graphでビジュアルをカスタマイズし、インタラクションが空間的インプットと一緒に機能するように調整る方法を学びましょう。
-
20:41
RealityKitによる空間コンピューティンングアプリの拡張
RealityKitを使い、ウインドウの枠を超えて魅力的でイマーシブな3Dコンテンツを実現する方法を学びましょう。SwiftUIシーンとRealityViewの連携機能や、コンテンツをエンティティ階層に埋め込む方法について紹介します。また、アンカーを使って仮想コンテンツと実世界をブレンドさせたり、アプリにパーティクルエフェクトを取り入れたり、動画コンテンツを追加したり、ポータルでよりイマーシブな体験を作成する方法についても説明します。
-
13:43
ScreenCaptureKitの新機能
ScreenCaptureKitの最新機能を使って、画面共有の体験をレベルアップしましょう。ビルトインのシステムピッカー、プレゼンターオーバーレイ、スクリーンショット機能を探求し、これらの機能を既存のScreenCaptureKitアプリやゲームに組み込む方法を学びましょう。
-
16:57
MetalでGPUレンダリングを最適化
最新のMetal機能とベストプラクティスを使用してGPUレンダリングを最適化する方法を学びましょう。応答性の高いオーサリングワークフローと最速のレンダリング速度を維持するための関数特殊化と並列シェーダーコンパイルの使用方法を紹介し、最適なパフォーマンスを実現するためのコンピュートシェーダーのチューニングする方法を理解しましょう
-
33:59
Background Assetsの新機能
待つというのは楽しいものではありません!Background Assetsでアプリの起動前にコンテンツをダウンロードする方法を確認しましょう。Background Assetsを既存アプリに統合する方法をお伝えし、どのタイミングでessential及びnon-essentialアセットを使用するかを掘り下げ、簡単にExtensionをデバッグする方法について解説します。
-
14:26
USDエコシステムの詳細
AppleプラットフォームにおけるUniversal Scene Description(USD)の最新アップデートについて確認し、みなさんのアプリやゲーム、Webサイトで素晴らしい3Dコンテンツを展開する方法について学びましょう。visionOS向けのUSDに対する理解を深め、MaterialXシェーダーやカラーマネジメント、USDエコシステム、そしてその他の改善点について確認していきます。
-
20:51
イマーシブアプリのためのMetal
イマーシブアプリのためのMetalMetalを使って、visionOSでフルイマーシブ体験をレンダリングする方法について確認しましょう。プラットフォーム上でのレンダリングセッションの設定方法や、基本的なレンダーループの作成方法、そして空間インプットを組み込むことでインタラクティブな体験を生み出す方法について紹介します。
-
-
WWDC22 -
37:19
ScreenCaptureKitを次のレベルへ引き上げる
ScreenCaptureKitで、Appユーザに高度なスクリーンキャプチャ機能を提供する方法をご覧ください。コンテンツフィルタの微調整、フレームメタデータの解釈、ウィンドウピッカーなど、組み込むことができる数多くの高度なオプションを紹介します。また、最適なパフォーマンスを実現するストリームを構成する方法についても解説します。
-
20:36
iOSのEDRの詳細
EDRは、AppleのHigh Dynamic Range表示やレンダリングのパイプラインです。AppのEDRを使用してHDRコンテンツをレンダリングし、iPhoneやiPadのHDRディスプレイでのダイナミックレンジ機能を最大限に活用する方法について解説します。iOSのネイティブEDR APIを活用する方法、HDRの利用が適切だと判断するベストプラクティス、トーンマッピングやHDRコンテンツレンダリングのヒント、そしてReference...
-
18:15
USDの基礎の理解
PixarのUniversal Scene Description(USD)の原理をはじめ、これにより優れた3Dアセットやワークフローを構築する仕組みをご確認ください。USDを支える中心概念をはじめ、フォーマットをコンテンツ作成パイプラインに統合する方法について解説します。また、構成を利用したUSD機能で、柔軟性と汎用性に優れたアセットを作成する方法も紹介します。
-
38:26
ゲームのメモリをプロファイリングして最適化する
Appleプラットフォームが、ゲームに必要なメモリの計算や割り当てを行う仕組みをご覧ください。InstrumentsやGame Memoryテンプレートでゲームのプロファイルを作成したり、メモリグラフで現在のメモリ使用状況をモニタリングしたり、Xcode Memory Debuggerやコマンドラインツールで分析したりする方法を紹介します。また、Metal DebuggerのMetalリソースをはじめ、メモリ使用率を最適化するためのヒントやコツについても解説します。
-
13:48
Metal 3で、GPUバイナリをターゲットにして最適化する
オフラインのコンピレーションを使用して、プロジェクトビルド時にGPUバイナリを完全に生成する際に、App内のスタッター、初回起動の時間、新しいレベルでのロード時間を削減する方法をご覧ください。また、「サイズの最適化」のコンパイラオプションを使用して、大規模なGPUプログラムでのコンパイル時間やバイナリサイズの合計を最適化する方法も紹介します。
-
26:41
プラグインと再生:AppleフレームワークをUnityゲームプロジェクトに追加する
AppleプラットフォームでのUnity Appやゲームエクスペリエンスをさらに向上させることができるようになります。Apple.Core、Game Center、Game Controller、Accessibility、Core Haptics、PHASEの6つのプラグインで、Appleテクノロジーをご利用のプロジェクトに直接追加する方法をご覧ください。新たなゲームプレイの仕組みを追加したり、ゲームをもっと使いやすくしたり、Appleの最新機能やサービスを利用したりする方法について解説します。
-
16:08
Unityゲームにアクセシビリティを追加する
オープンソースのAccessibilityプラグインを使用して、AppleプラットフォームでUnityゲームにアクセシビリティ機能を追加する方法を紹介します。そして、サンプルのUnityゲームプロジェクトにVoiceOverやスイッチコントロールなどの支援技術も追加していきます。さらに、Dynamic Typeでテキストサイズを自動的に変更する方法をはじめ、透明度の低減やコントラストの向上など、インターフェイスの調整をサポートする方法も紹介します。
-
10:07
Game Centerダッシュボードで新しいプレイヤーにリーチする
Game Centerのアクティビティダッシュボードを活用して、新しいプレイヤーにリーチする方法をご覧ください。ダッシュボードやプロフィールを通して、ゲーム上でのプレイヤーの成績、ハイスコア、リーダーボードの変遷を追跡する仕組みについて解説します。また、Game Centerプラグインを使って、Game CenterをUnityゲームプロジェクトに追加する方法も紹介します。
-
17:41
Core Image、Metal、SwiftUIでのEDRコンテンツの表示
Core ImageベースのマルチプラットフォームSwiftUI Appから、レンダリングのサポートにExtended Dynamic Range(EDR)を追加する方法をご覧ください。ここでは、ViewRepresentableを使用して、CIImagesをMTKViewに表示するベストプラクティスを紹介します。また、EDRレンダリングを有効化する簡単な手順や、EDRをサポートする内蔵CIFilter(150個以上)の例も紹介します。
-
31:23
Metalレイトレーシングのパフォーマンスを最大限に高める
レイトレーシングコードを簡素化し、Metal 3の機能を使用してパフォーマンスを向上させる方法を紹介します。さらに、レイトレーシングAppの調整に役立つGPUデバッグおよびプロファイリングツールについて解説します。また、加速構造のプリミティブごとのデータを使用して、インターセクションテストを高速化したり、シェーダーコードのメモリアクセスや間接参照を削減したりする方法についても解説します。加速構造のビルドや改修を高速化することで、ロード時間やフレームあたりのオーバーヘッドを削減することができるようになります。
-
17:44
Metalメッシュシェーダでジオメトリを変換する
Metalメッシュシェーダとは - GPU駆動のジオメトリを作成・処理する、Metalの最新かつ柔軟なパイプラインです。このAPIがレンダリングパイプラインを向上させ、柔軟性を高める仕組みをはじめ、GPU駆動の機能がもたらす可能性について解説します。メッシュシェーダを使用するGPUで、ヘアレンダリングなどの手続き型ジオメトリを作成する方法や、追加の計算パスや中間バッファを使用せず、単独のレンダリングパスで構築する方法をご覧ください。また、GPU駆動のメッシュレットカリングで、シーンの処理やレンダリングを改善する方法も紹介します。
-
34:14
Metal 3でバインドレスにする
Metal 3でバインドレスにする際に、レイトレーシングなどの強力なレンダリング技術をどう活用できるのかご覧ください。引数バッファーの単純化、ヒープからの加速構造の割り当て、Metalの検証レイヤーやDebugger Toolの改善による利点を活かして、Appのバインドレス化を実現する方法を紹介します。また、長期的なリソース構造で、CPUやGPUのパフォーマンスを制御する方法についても解説します。
-
22:04
AVFoundationやMetalによるHDR動画のEDR表示
AVFoundationやMetalを活用して効率的なEDRパイプラインを構築する方法を紹介します。そして、AVPlayerを使用してHDR動画をEDRで表示したり、ビデオ再生をAppビューに追加したり、Metalでレンダリングしたり、Core ImageやカスタムMetalシェーダを使用してキーイングやカラーマネジメントなどのビデオエフェクトを追加したりする方法について解説します。ゲーム開発でもPro App開発でも、使用するフレームワーク選びで役立つことでしょう。さらに、トランスポート、カラースペース、ピクセルバッファのフォーマット選びに関するベストプラクティスも紹介します。
-
24:57
Apple GPUでコンピューティングワークロードを拡張する
コンピューティングワークロードを作成して、Apple GPUで効率的に拡張する方法をご覧ください。作業配分を改善してGPUを飽和させたり、効果的なパイプライン化と同時ディスパッチでGPUタイムラインのギャップを最小化したり、アトミック操作を効果的に使用したりする方法を紹介します。また、XcodeやInstrumentsの最新のカウンタやツールについても解説します。これで、空間および時間のメモリアクセスパターンを最適化することができるようになります。
-
15:44
Metal 3の紹介
Metal 3で、あなたのAppにAppleシリコン上のポテンシャルをフル活用しましょう。最新の機能、改善点、ツールを紹介します。また、リソースの高速ロード、ビルド時のシェーダバイナリのコンパイル、メッシュシェーダによる複雑なジオメトリの処理、高解像度グラフィックスの高速レンダリング、機械学習ネットワークの高速トレーニングなど、先進の機能とコンパイラツールの使用方法について紹介します。
-
22:21
USDツールとレンダリングに関する詳細
Universal Scene Description(USD)アセットの生成、検査、変換に役立つ最新ツールがどこまで進化したかご確認ください。これらのツールの最新情報について解説し、これによりご利用のコンテンツ作成パイプラインに統合することもできるようになります。また、USD Hydraレンダリングの機能や、ご利用のAppへの統合方法も紹介します。 USDの導入については、WWDC22の「USDの基礎の理解」をご確認ください。
-
22:24
Metal 3で、リソースのロードを高速化
Metal 3の高速なリソースストリーミングで、アセットを迅速にロードする方法をご覧ください。SSDストレージの速度とApple Siliconのユニファイドメモリアーキテクチャのスループットを活用するために、Appで非同期の "set-it-and-forget-it" ワークフローを使用する方法を紹介します。また、GPU のレンダリングと計算の作業と並行して実行する別のキューを作成し、それと同期させる方法についても検討します。最後に、オーディオなどのアセットを優先度の高いキューに指定して、データを低レイテンシーでロードする方法について説明します。
-
22:11
MetalFX Upscalingでパフォーマンスを向上させる
MetalFXは、プラットフォーム用に最適化されたMetal App向けのグラフィックスエフェクトを提供する新しいAPIです。MetalFX Upscalingを使用すると、ご利用のAppで、レンダリング品質を損なうことなく低解像度でフレームをレンダリングできるようになり、レンダリング時間も短縮されます。また、こうした2つの効果(空間的な拡張によるパフォーマンスの大幅な向上と、時間的なAAや拡張による最高品質のレンダリング)の利用方法とタイミングについても解説します。
-
26:58
metal-cppを使用して、C++でMetalのプログラムを作成する
C++のゲームやAppで、Metalの機能を活用できるようになりました。metal-cppでC++コードをMetalにブリッジする方法やオブジェクトライフサイクルの管理方法を紹介し、さらに、これらの言語をAppで連携させるユーティリティについて解説します。また、Objective-CとC++をスムーズに統合するAppアーキテクチャの設計に関するベストプラクティスも紹介します。
-
15:28
ScreenCaptureKitの紹介
ScreenCaptureKitが、macOSの画面共有・ビデオ会議・ゲームストリーミングサービスなどのAppに、高性能のスクリーンキャプチャを提供する仕組みについて解説します。このAPIの構成要素について解説し、ストリームを設定して画面上の動画およびオーディオコンテンツをキャプチャする方法や、それを既存のAppに統合するためのヒントを紹介します。
-
26:00
自分の世界を拡張現実に
Object CaptureやRealityKitを使用して、現実世界のオブジェクトを拡張現実ゲームに取り込む方法を紹介します。さらに、Object Captureフレームワークで詳細なアイテムをキャプチャしたり、これらをXcodeのRealityKitプロジェクトに追加したり、定型化されたシェーダやアニメーションを適用したり、ARエクスペリエンスの一部としてこれらを使用したりする方法を紹介します。また、ARKit、RealityKit、Object Captureと連携させる際のベストプラクティスも紹介します。 このセッションを最大限に活用するには、WWDC21の「RealityKit...
-
29:51
Metalで機械学習を加速する
Metalを使用して、macOSでのPyTorchモデルトレーニングを加速する方法をご覧ください。TensorFlowトレーニングサポートの最新情報をはじめ、MPS Graphの最新機能や操作、優れたパフォーマンスで機械学習のあらゆるニーズに対応するベストプラクティスを紹介します。 機械学習でのMetalの使用について、詳しくはWWDC21の「Metal Performance Shaders Graphによる機械学習の加速」をご覧ください。
-
-
WWDC21 -
29:53
RealityKit 2を使用した高度なレンダリング
RealityKitの最先端のレンダリング機能を使用して、AR体験のための魅力的なビジュアルを作成しましょう。カスタムシェーダの書き方、リリアルタイムでのダイナミックメッシュの描き方、ARシーンのスタイリングに役立つクリエイティブなポストプロセス効果について解説します。
-
9:03
Core Imageカーネルの改善点
Metal Shading Language で書かれた Core Image カーネルをAppに追加する方法を確認します。Metal Shading Languageで記述されたCore ImageカーネルのためにXcodeルールと命名規則をどのように使用するかを検討し、Core Imageカーネルに役立つMetalのStitchable関数とダイナミックライブラリ機能を理解できるようにします。
-
15:00
バーチャルゲームコントローラと物理ゲームコントローラの活用
今こそゲーム入力をレベルアップするときです。iPhone、iPad、Mac、Apple TV用のバーチャルゲームコントローラと物理ゲームコントローラの最新の改良点を紹介します。タッチ入力をゲームコントローラの入力に変換するバーチャルオンスクリーンコントローラを紹介し、Appにコントローラの共有機能を追加する方法を説明します。また、DualSenseコントローラに搭載されているアダプティブトリガーテクノロジーをサポートする方法、コントローラサポートのベストプラクティス、App...
-
25:55
ゲームへの周期Leaderboardの導入
周期Leaderboardは、プレイヤーがゲームに戻ってくるのを促す素晴らしい方法です。今回は、App Store Connectとゲームの両方で周期Leaderboardをセットアップする方法を紹介します。 このCode-Alongを始める前に、周期Leaderboardと従来のLeaderboardの違いをおさらいするためにの「Game Centerの利用:Leaderboard、達成項目、マルチプレイヤー」の周期Leaderboardのセクションをご確認いただくことをお勧めします。
-
21:12
Metalでのバインドレスレンダリングの詳細
Argument Buffersを追加してバインドレスレンダリングを採用することで、シェーダーの可能性を最大限に引き出し、最新のレンダリング技術を実装します。レイトレーシングとラスタライズのパイプラインを最大限に活用するために、シーン全体とリソースをGPUで利用できるようにする方法を確認しましょう。
-
22:09
Game Centerの新機能:ウィジェット、フレンド、マルチプレイヤーの改良点
GameKitを使ってオンラインゲーム体験をパワーアップし、マルチプレイヤー、リーダーボード、達成項目などの機能をゲームに採用します。ここでは、プレイヤーのマッチングやマルチプレイヤーAPIなど、Game Centerの最新の改良点を紹介し、ゲームの発見率を高める方法を探ります。
-
8:40
ReplayKitによるローリングクリップ
ゲームやAppで、誰かの素晴らしい瞬間を見逃すことはもうありません。過去のビデオやオーディオサンプルのローリングバッファを提供するReplayKitの最新のアップデート(クリップスクリーンレコーディング)について紹介します。忘れられない瞬間が起きたとき、それを記録して人々のために保存し、最も関連性の高いときにそれらのクリップを表示する方法をご確認ください。最後に、ReplayKitをiOSやmacOSのAppに統合する方法を紹介します。
-
29:48
Metalレイトレーシングによるハイブリッドレンダリング
レイトレーシングをラスタライズエンジンと組み合わせることで、シンプル化されたグラフィックス技術を実装し、Appやゲームのビジュアルを向上させる方法を説明します。自然なアルゴリズムを使用して光の相互作用を正確にシミュレートする方法を紹介して、レイトレースしたシーンのキャプチャ、検査、デバッグにXcodeの最新ツールを活用する方法を確認します。
-
29:34
Apple Siliconを利用した画像処理Appの作成
画像処理AppをAppleシリコン向けに最適化する方法を紹介します。Metalのレンダリングコマンドエンコーダ、タイルシェーディング、ユニファイド・メモリ・アーキテクチャ、メモリレス・アタッチメントを活用する方法について説明します。Apple独自のタイルベースの遅延レンダラーアーキテクチャを使用して、低メモリフットプリントで電力効率の高いAppを作成する方法や、計算ベースのAppをディスクリートGPUからAppleシリコンに移行する際のベストプラクティスをお伝えします。
-
34:16
EDRによるHDRレンダリング
EDRはAppleのハイダイナミックレンジ表現とレンダリングパイプラインです。AppでEDRを使用してHDRコンテンツをレンダリングし、Appleの内蔵ディスプレイやPro Display XDRなどのHDRディスプレイのダイナミックレンジ性能を引き出す方法を紹介します。 ゲームやプロ向けAppのデベロッパが、macOSのネイティブEDR APIを活用して操作性をさらに向上させる方法や、HDRが適切かどうかの判断、トーンマッピングの適用、HDRコンテンツの配信に関するベストプラクティスを紹介します。
-
14:51
USDによる3Dワークフローの作成
PixarのUniversal Scene Description(USD)の柔軟性、汎用性、パワーを3Dワークフローで活用しましょう。macOS用のプロフェッショナルなワークフローでUSDファイル形式を使用する方法について説明します。Object Captureを使用して実世界のオブジェクトの3Dモデルをスキャンし、サードパーティのデジタルコンテンツ作成ツールの可能性を活かし、高品質なレンダリングシーケンスを構築します。
-
16:00
オーディオハプティックデザインの実践
iPhoneでアニメーション、サウンド、ハプティクスを含むリッチなApp体験を提供する方法を紹介します。Core Hapticsフレームワークでマルチモーダルな体験をデザインするためのキーコンセプトをお伝えします。サンプルのHapticRicochet Appでは、ハプティックとサウンドのフィードバックが重要なインタラクティブモーメントと調和するようデザインされており、不思議で楽しい体験を生み出す方法を解説します。 このセッションを最大限活かしていただくためには、事前にWWDC19の「Core...
-
23:20
可変リフレッシュレートディスプレイ向けの最適化
ダイナミックディスプレイタイミングをサポートしているすべてのAppleプラットフォーム上でスムーズな画面更新を実現する方法を紹介します。macOS上のAdaptive Syncディスプレイでフルスクリーンのゲームの更新頻度を調整するためのテクニックを説明して、低電力モードなどのシステム状態がProMotionディスプレイで使用できるフレームレートに与える影響について明らかにします。また、ディスプレイリンクAPIを使用したカスタム描画のためのベストプラクティスも紹介します。
-
26:31
ProRAW画像の撮影と処理
AppでProRAWをサポートすると、標準のRAW情報をAppleの高度なコンピュテーショナルフォトグラフィ技術と組み合わせることで、フォトグラファーが画像を簡単に取り込んで編集できるようになります。まず、ProRAW画像のルック&フィール、クオリティメトリクス、Appとの互換性などといったフォーマットの概要を説明します。さらに、AVFoundationを使った画像の取り込み、PhotoKitを使ったストレージ、Core Imageを使った編集など、制作パイプラインのあらゆる段階でProRAWをAppに取り入れる方法を紹介します。
-
20:28
ARKit 5の詳細
ARKit 5で次世代のAR Appを構築しましょう。ロケーションアンカーをさらなる地域で使用したり、ロケーションベースのAR体験に人々をより簡単に参加させる方法を紹介します。フェイストラッキングとモーションキャプチャについても詳しく説明します。また、ARコンテンツを現実世界に配置するためのベストプラクティスを紹介します。また、App Clip CodeをAR Appに組み込むことで、バーチャルコンテンツを簡単に見つけ、正確に配置する方法も紹介します。
-
39:53
Metalのデバッグ、プロファイリング、アセット作成ツール
Xcodeを使用して、Metalのデバッグ、プロファイリング、アセット作成のワークフローを次のレベルに引き上げる方法を紹介します。レイトレーシングとGPUプロファイリングのための最新ツールを確認し、Metalデバッガのワークフローについて確認します。また、最新のGPUテクスチャフォーマットをすべてサポートし、マルチプラットフォームのアセット作成パイプラインに簡単に統合できるテクスチャコンバータツールの使用方法も紹介します。
-
32:27
Apple GPU向けのハイエンドゲームの最適化
Apple GPU向けのハイエンドゲームの最適化: Appleのレンダリングツールやデバッグツールを使用して、パフォーマンスの問題を解決し、Appleプラットフォームで素晴らしいゲームを作る方法を紹介します。Larian Studiosや4A Gamesの開発者と協力して、Apple GPU向けにゲームを最適化した経験についてお伝えします。 シェーダの最適化、メモリ帯域幅の使用量の削減、GPUワークロードのオーバーラップの増加など、ゲームのパフォーマンスを向上させるためのさまざまなテクニックを検証します。また、Xcode...
-
29:50
MetalレイトレーシングによるAppの強化
Metalグラフィックスフレームワークとシェーディング言語のコア部分であるレイトレーシングを利用することで、Appやゲームで写真のようにリアルな3Dシーンを実現できます。このセッションでは、レイトレーシングの実装における最新の改善点を探り、プロダクションレンダリングプロセスにおけるアップグレードされた点について確認します。また、より詳細なシーンの作成、ネイティブサポートコンテンツとモーションのインテグレーションなどに役立つMetal APIを紹介します。
-
24:52
Metalのコンパイルワークフロー
Metalシェーディング言語は強力なC++ベース言語で、柔軟なシェーダ開発パイプラインを維持しながら、Appで驚くべき効果をレンダリングすることができます。ダイナミックライブラリとファンクションポインタを使用して、レンダリングパイプラインをより簡単に構築・拡張する方法について確認します。また、バイナリ関数アーカイブ、関数リンキング、関数スティッチングを使用して、ランタイムでのシェーダのコンパイルを高速化する方法も紹介します。
-
27:56
Object Captureによる3Dコンテンツの作成
"Object Captureは、わずか数枚の画像を使って実世界のオブジェクトのリアルな3Dモデルをすばやく簡単に作成する方法を提供します。macOSのフォトグラメトリ技術によってアセットを現実のものにする方法について確認します。また、最高品質の結果を得るために、どのようなオブジェクトを選択し、どのように画像をキャプチャしていくのかといったベストプラクティスについても紹介します。 "
-
14:26
AR Quick LookとObject Captureの融合
ビジュアルクオリティとファイルサイズの両方を最適化しながら、Object CaptureのアセットをAR Quick Lookに組み込むシンプルな方法を紹介します。AR Quick LookとObject Captureを統合してまったく新しいエクスペリエンスを生み出す方法について確認します。 このセッションを最大限に活かしていただくために、WWDC19の「AR Quick Lookの最新情報」を先に視聴いただくことをお勧めします。また、WWDC20の「AR Quick Lookでオンラインショッピング」では、Apple...
-
25:07
RealityKit 2の詳細
RealityKit 2を使えば、魅力的なAR体験の作成がこれまで以上に簡単になります。RealityKitフレームワークの最新の強化点を探り、水中サンプルプロジェクトを通じて詳細を確認しましょう。機能が強化されたエンティティコンポーネントシステム、効率化したアニメーションパイプライン、フェイスメッシュとオーディオを強化したプラグアンドプレイのキャラクターコントローラーを紹介します。
-
37:28
Physical Audio Spatialization Engine(PHASE)によるジオメトリを意識したオーディオの実現
ジオメトリを意識したオーディオによって、Appやゲームに複雑でインタラクティブな、没入感のあるオーディオシーンを構築する方法を紹介します。Appleの空間オーディオAPIであるPHASEを紹介します。Physical Audio Spatialization...
-
23:56
SwiftUI Appへのリッチなグラフィックスの追加
SwiftUIでグラフィックを活用する方法について確認しましょう。キーボードセーフエリアを含むセーフエリアの利用からはじめ、オンスクリーンキーボードに重ならない、端から端まで広がる美しいグラフィックをデザインする方法を紹介します。また、簡単にカスタマイズできる背景やコントロールを作成するために、SwiftUIで使用できるマテリアルや鮮やかさについて確認し、drawingGroupなどのグラフィックスAPIとまったく新しいCanvasについても説明します。これらのツールにより、SwiftUIで完全にインタラクティブで割り込み可能なアニメーションやグラフィックスをこれまで以上にシンプルにデザ...
-
29:12
Metal Performance Shaders Graphによる機械学習の加速
Metal Performance Shaders Graphは、線形代数、機械学習、コンピュータビジョン、および画像処理のためのカスタマイズされた多次元グラフをビルド、コンパイル、および実行するのに役立つ計算エンジンです。Apple製品のMetalバックエンドを通じて、MPSGraphが人気のTensorFlowプラットフォームをいかにして加速できるかについて紹介します。グラフに制御フローを加えたり、グラフのコンパイルを管理してパフォーマンスを最適化したり、MPSGraphオペレーションを使用してわずか数行のコードで最もハードな演算アプリケーションを高速化する方法を確認します。
-
-
WWDC20 -
36:16
MetalでGPUバイナリを作成する
シェーダーパイプラインを増強しMetalシェーダーのコンパイルモデルを拡張すると、特に初回ローンチ時のPipeline State Object (PSO) ロードタイムが大幅に削減されます。Metalバイナリアーカイブとダイナミックライブラリを利用した明確なPSOキャッシュとGPUバイナリーの共有について学びます。ライブラリの作成のためのツールチェーンも詳述し、シェーダーコンピレーションワークフローが改善します。
-
23:58
ReplayKitを使用したMac上でのAppの取り込みとストリーミング
ReplayKitをMac Appやゲームに統合し、簡単に画面録画を共有したり、ライブオーディオやビジュアルをオンラインで放送したりする方法について学びます。Mac App内に画面コンテンツ、オーディオ、およびマイクの入力を取り込み、さらに動画をライブ視聴者に放送する方法を紹介します。 Appでこのフレームワークを使用する方法の詳細については、 “Live Screen Broadcast with ReplayKit”および"What's New with Screen Recording and Live Broadcast"を参照してください。
-
23:32
Game Centerの利用:ダッシュボード、アクセスポイント、プロファイル
Appleのソーシャルゲームネットワークが利用できるようになりました。ここでは、そのゲーム内インターフェイスやまったく新しいプレイヤーエクスペリエンスを始めとする、Game Centerの最新のアップデートをご紹介します。GameKitをAppに組み込んでプレイヤーを効果的に認証し、プレイヤーをゲーム内のダッシュボードに誘うアクセスポイントを利用する方法を学びましょう。そこからプレイヤーのプロファイルとプライバシーオプションについて見ていきます。 Game...
-
8:37
動画AppのためのCore Imageパイプラインの最適化
Core Imageの処理能力を活用し、App内の動画パフォーマンスを最適化する方法について説明します。あなたのAppで動画にエフェクトを適用するためのCore Imageパイプラインを構築する方法を紹介します。CIContextを使用するときに、Appのメモリのフットプリントを減らす方法、およびCore Imageフィルタを使用した動画再生のためのAVPlayViewまたはMTKViewビュークラスの使用に関するベストプラクティスについて学びます。さらに、独自のカスタムカーネルをMetal Shading Languageで書くべき理由について説明し、Core...
-
25:15
RealityKitの新機能
RealityKitはAppleが拡張現実のためにゼロから作り上げたレンダリング、アニメーション、物理、音声エンジンです:これまでの3Dレンダラーを見直し、デベロッパが簡単にプロトタイプを作成し、高品質なAR体験を創り出すことができます。RealityKitの新たな改良点をAppに効果的に実装する方法についてもお伝えします。ビデオテクスチャ、iPad ProのLiDARスキャナを使ったシーンの理解、ロケーションアンカー、フェイストラッキング、改良されたデバックツールなどの機能を見ていきます。...
-
7:16
Discover Core Imageデバッグ技術
Xcode環境変数を使用して、Core Imageパイプライン内のレンダリングおよび最適化の問題を検出して、修正します。Core Imageグラフを可視化するための環境変数の設定方法を紹介します。Core Imageグラフの生成方法、およびそれを解釈してメモリ、色、およびパフォーマンスの問題を発見し、Core Imageパイプラインを改善および最適化する方法について学びます。
-
24:59
ゲームコントローラの進歩
ランブルしましょう!iPhone、iPad、Mac、およびApple TV上のゲームに、サードパーティゲームコントローラ、およびカスタムのハプティクスを取り込む方法について学びます。Xbox's Elite Wireless Controller Series 2およびAdaptive Controller などの最新のコントローラのサポートを追加し、それぞれに応じてゲームのコントロールをマッピングする方法について学びます。Core Hapticsと並行してGame...
-
14:17
Xcode 12によるMetal Appのインサイトの取得
MetalのデバッギングとXcode 12のパフォーマンス最適化ツールによって、グラフィックスの問題を短時間で見つけ出す方法を学びましょう。ここでは、Metal Debuggerを使用して問題をすばやく診断する方法をご紹介します。メモリの使用量、帯域幅、パフォーマンス、Metal APIの実装の改善方法を提案する新しいサマリービューをご覧ください。 本セッションの前に、Metalの基本を理解しておくことをお勧めします。まずは “Harness Apple GPUs with Metal”をご覧ください。
-
23:40
AVFoundationとVideoToolboxを使ったDecode ProRes
Mac AppでProResコンテンツをより簡単にデコードおよび表示する方法: AVFoundationとVideoToolboxのデコード機能を活用して、最適なグラフィックパイプラインを実装する方法について学びます。Appのベストプラクティスとパフォーマンスに関する考慮事項を共有し、Afterburnerカードをパイプラインに統合する方法およびMetalを使用してデコードされたフレームを表示する方法について説明します。
-
32:50
GPUカウンタによるMetalのAppやゲームの最適化
GPUカウンタは、GPU使用量を精密に測定し、ボトルネックを正確に示してMetalのAppやゲームのワークロードを最適化するのに役立ちます。ここでは、グラフィックスワークロードの概要を示すためにXcode 12上のMetal System TraceインスツルメントやMetal Debuggerで使用できるツールをご紹介し、収集したデータを使用してGPUパイプラインで十分に活用されていない場所や過度に使用されている場所を見つける方法を示します。Appの機能を向上させるためにそのデータに基づいてどのような対応ができるかご覧ください。 本セッションの前に、Apple...
-
20:56
MetalでのGPU側のエラーのデバッグ
Xcode 12の強化されたレポーティングで、最も扱いにくいGPU側のプログラミングエラーでさえも見つけ出しましょう。MetalのAPI検証レイヤはプロジェクトのほとんどの問題を捕捉できますが、GPUエラーはデバッグが難しい多くの問題の原因となる場合があります。 GPU側のエラーを知り、Xcode...
-
28:18
アーティストのARツールキット
Reality ConverterとReality Composerがあれば、iOS、iPadOS Appで拡張現実アセットを準備することがこれまで以上に容易にできます。今ある3DアセットをUSDZに変換し、Reliaty Composerに入れてAR体験を構築する方法、そして今あるXcodeプロジェクトとの統合やAR Quick Lookへのエキスポートの方法もお伝えします。様々な、人気の3Dフォーマットでアセットを扱う方法、AR場面の構築とテスト方法、アーティストワークフローへの統合方法もお伝えします。 このセッションを有効に活用するためには、USDZとReality...
-
39:35
Metal Performance Shaders GraphでカスタムMLモデルを構築する
MetalのCompute能力をマルチディメンションTensorsに拡張する、Metal Performance Shaders (MPS) Graphをご紹介します。MPS Graphは高度にチューニングされた並列処理データライブラリの上に構築され、機械学習に欠かせないものであり、多大なGPUパワーを活用します。MPS Graphにより洗練された、ダイナミックなニューラルネットワーク学習のアーキテクチャを表現する方法、またアーキテクチャ上でGPUを加速させるための最適化の仕方をお伝えします。 このセッションで網羅するコンセプトをより深く理解するには、WWDC19の"Metal for...
-
20:31
Metal関数ポインタの紹介
Metalは、低レベル・低オーバーヘッドのハードウェア加速グラフィックスフレームワークであり、Appに素晴らしい視覚効果をもたらすシェーダーAppプログラミングインタフェースです。関数ポインタを使用して、Metal...
-
45:22
Metal PerformanceをApple Silicon Macに最適化する
Apple Silicon Macはグラフィックを駆使したアプリケーション向けの新しい斬新なプラットフォームです。GPUを起動させ、爆発的な速さのAppとゲームを作る方法をお見せします。 Apple Silicon Mac内でApple独自のTile-Based Deferred Rendering (TBDR) GPUアーキテクチャを活用する方法、最大のスループットを提供するためにワークロードをスケジューリングする方法、レンダリングパイプラインの構成と全体効率を向上させる方法を学びます。グラフィックチームと共にApple...
-
18:38
AR Quick Lookでオンラインショッピング
AR Quick Lookはオンラインショッピングにまったく新たな側面を与えます。拡張現実の中であなたの製品を簡単に披露し、「買う前にお試し」体験を提供する方法をお見せします。製品バナーをAR Quick Lookに見せ、Apple Payと統合し、または「カートに追加する」のようなカスタマイズアクションを表示できるようになります。 このセッションを最大限に活用するには、WWDC2019の"Advances in AR Quick Look"を見て内容に触れておいてください。 AR Quick LookとApple...
-
24:23
Apple GPUとMetalの併用
Apple GPUの能力と、AppleプラットフォームでのGPUアクセラレーテッドグラフィックスの最新基盤であるMetalを組み合わせ、視覚的に優れた高機能のAppやゲームを作りましょう。Apple GPUのアーキテクチャと機能、そしてMetalがそのTile-Based Deferred Rendering(TBDR)アーキテクチャを活用してAppやゲームの性能を大きく向上させる仕組みをご覧ください。本セッションでは、Apple GPUの効率性について説明し、最新のレンダリング技術のアレイにTBDRを適用する方法をご紹介します。...
-
5:42
パフォーマンス重視のAppやゲームのサポート
iOSやiPadOSには、デベロッパがあらゆるデバイス世代に対応する画期的なAppやゲームを提供するのに役立つ強力な機能が備わっています。しかし場合によっては、パフォーマンス要件の非常に厳しいAppがA12 Bionicチップ以上を備えたデバイスでしかベストエクスペリエンスを提供できないことがあります。 Xcode 12では、デベロッパがパフォーマンス重視のAppやゲームの設定画面でこの要件を表示させることができるようになっています。ここでは、この設定を適用する限られた状況と、慎重に考慮しなければならないApp配布のトレードオフについてご紹介します。...
-
33:52
MetalをApple Silicon Macでも
MetalやApple Silicon Macの中核部であるTile Based Deferred Rendering (TBDR) GPUのアーキテクチャをご紹介します。高度にグラフィック化されたAppをApple Silicon Macにトランスレート、またはポートする方法、プラットフォームからネイティブで作成する場合のTBDRの活用方法についても学びます。旧式MacのImmediate Mode Rendering...
-
14:04
キーボードとマウスによるゲームをiPadに
iPadのゲームをレベルアップし、キーボード、マウス、トラックパッドによるコントロールを追加しましょう。Game Controller frameworkを使って、既存のタイトルを拡張したり、他のプラットフォームからゲームを持ってきたり、全く新しいインタラクション体験を生み出す方法をお伝えします。 ゲームを画面全体で最大限に楽しむことができるよう、キーボードとPlayer Motionのためのデルタマウス座標イベントを組み込む方法や、Dockやコントロールセンターなどのポインタシステムのジェスチャを無効にする方法を学ぶことができます。 Xbox...
-
18:07
Game Centerのデザイン
Game Center向けにゲームのインターフェイスを整えましょう。ここでは、達成項目、Leaderboard、マルチプレイヤーゲームなどによって、プレイヤーに豊かな体験を提供するGameKitインターフェイスのパーソナライズ方法をご紹介します。ゲームのアクセスポイントをカスタマイズし、収集可能なカードスタイルの達成項目や複数のLeaderboardをデザインし、あらゆるプラットフォームやオリエンテーションにインターフェイスを適応させる方法を学びましょう。Game Centerのデザインについて学んだ後は、"Tap into Game...
-
24:41
USDの新機能
Universal Scene Description (USD)スタンダードの提案スキーマとストラクチャに関する最新情報をお伝えします。Realilty Composerを使いアンカー、物理、動作、3Dテキスト、USDZにエクスポートする立体音響といったインタラクティブな要素を含むARコンテンツを構築する方法をお見せします。新たに作成した要素をアプリケーションに入れる、効率的な方法もお伝えします。 配信フォーマットとしてのUSDZにさらに興味があれば、"Working with USD"をご確認ください。ARコンテンツをReality...
-
6:12
Xcodeを使用したMetalベースCore Imageカーネルの作成
Metal Shading Languageで書かれたCore ImageカーネルをAppに統合してロードする方法について学びます。また、これらの画像フィルタを適用して独自のエフェクトを作成する方法についても説明します。Metal Shading Languageで書かれたCore ImageカーネルのXcode規則と命名規則の使用方法を紹介します。MetalおよびMetal Shading Languageを用いて、Core Image APIを効果的かつ最適に使用する方法について説明します。
-
24:54
Game Centerの利用:Leaderboard、達成項目、マルチプレイヤー
Game Centerの組み込みをレベルアップし、Leaderboard上でのプレイヤー同士のスコアの比較や、価値のある達成項目の獲得、他のプレイヤーとの繋がりの提供を実現できます。特別なウイークリーチャンピオンシップ、デイリーショーダウン、1時間のコンペティションなどを、リカーシブLeaderboardを使って開催したり、最大100個のユニークなゲームの達成項目を作りましょう。また、Game Centerプレイヤーのために、リアルタイム、あるいはターンベースのマルチプレイヤーマッチをセットアップする方法をお伝えします。 Geme Center...
-
27:38
ARKit 4について
ARKit 4は、人々とその身の回りの世界とのつながり方を一変させる次世代の拡張現実Appの構築を可能にします。バーチャルオブジェクトと実世界の緯度経度、及び高度とをつなぐロケーションアンカーの使い方を含め、Appleの拡張現実プラットフォームにおける最新の改善点をご紹介します。iPad ProのLiDARスキャナを利用し、周囲環境の深度マップを手に入れる方法や、iPad Air(第3世代)、iPad mini(第5世代)を含め、その他のA12 Bionic以降のチップを搭載したフロントカメラ付きのすべてのデバイスでのARにおけるフェイストラッキングの方法もお伝えします。...
-
21:05
Metalを使用したレイトレーシング
レイトレーシング(MetalグラフィックスフレームワークとShading Languageの中核部分)によって、Appやゲームでフォトリアリスティックな3Dシーンを実現します。MetalレイトレーシングAPIおよびレイトレーシングのためのShading Language Extensionの基本を紹介し、それらをグラフィックスAppおよびゲームで使用する方法および最適なパフォーマンスを得るためにカーネルを管理し、シングルコンピューティングカーネルに組み込む方法について学びます。
-
-
WWDC19 -
37:13
RealityKitとReality Composerの紹介
ARのために設計されたRealityKitを使用すると、デベロッパはワールドクラスのレンダリング、アニメーション、物理エンジン、スペーシャルオーディオの機能を利用できます。このセッションでは、従来の3Dエンジンを刷新するRealityKitを活用して、これまでになく迅速かつ簡単にARを開発する方法を紹介します。RealityKitベースのAppやゲームの開発の基本、およびReality ComposerでAR体験のコンテンツのプロトタイピングと作成を行う方法についてご確認ください。
-
56:04
Core Hapticsで知覚体験を拡張する
Core Hapticsを活用すると、iPhoneのオーディオに同期する独自のHapticを設計することができます。2つのパートから成るこのセッションでは、音声およびHapticの基本的な設計原則と、人間の幅広い感覚に訴える有益で楽しい体験を生み出すためのコンセプトを紹介します。Taptic Engineを使用してビジュアル、オーディオ、Hapticを組み合わせることで新たなレベルの臨場感を生み出し、Appやゲームのフィードバックを向上させる方法についてご確認ください。コンテンツの作成および再生方法と、どのようなときにCore...
-
55:28
Metalによる最新のレンダリング
MetalはGPUを活用したグラフィックスおよび演算のためのフレームワークで、プロフェッショナル向けのAppからコンソールスタイルのゲームに至るまで、あらゆるAppの構築に役立ちます。このセッションでは、Metalの機能を利用して、遅延レンダリングやタイルベースのフォワードレンダリングといった最新のグラフィックステクニックを実装する方法について説明します。GPUで処理される機能により、Metalで処理のスケジュールが自動的に決定され、シーン全体の描画や演算処理の実行が、CPUとほとんど、またはまったくやり取りせずに行われる仕組みについてご確認ください。GPUファミリーを使用することで、さ...
-
46:43
受賞できるAppやゲームをデザインする
体験談、インタビュー、アーティファクトを通して、Apple Design Awardを受賞したAppやゲームにおける有益なデザインプロセス、テクニック、ベストプラクティスを紹介します。
-
39:26
人をARに組み込む
ARKit 3では、実世界の人をARシーンに緊密に統合する革新的な機能を利用できます。Appでライブモーションキャプチャを使用して、バーチャルキャラクターをアニメーションさせたり、2Dおよび3Dシミュレーションに適用したりする方法についてご確認ください。また、バーチャルコンテンツが実世界の人の背後を通り過ぎるようにすることで、より臨場感あふれるAR体験を実現できる「ピープルオクルージョン」についても紹介します。
-
51:27
ARKit 3の紹介
ARKitはiOSのための革新的な拡張現実(AR)プラットフォームで、人が周囲の世界とつながる方法を一変させます。ARKit 3の最先端の機能と、ARKit 3がどのようにRealityKitのための革新的な基盤となるかについてご確認ください。このセッションでは、ARKitを使用してモーションキャプチャとピープルオクルージョン向けに身体の位置や動きを把握することにより、より魅力的なARを生み出す方法について説明します。複数のフェイストラッキング、共同セッションの構築、オンボーディング用のコーチングUIなどのための追加機能についてご確認ください。
-
43:57
AR Quick Lookの最新情報
AR Quick Lookは、3DおよびARで高品質なコンテンツを体験するためのビルトインビューアです。Reality Composerとの統合により、豊かでインタラクティブな体験をこれまでにないほど簡単に表示および共有することができます。このセッションでは、レンダリングの向上点と複数のオブジェクトの表示について説明し、小売り、教育などの分野におけるAR Quick Lookの実践的な活用例を紹介します。
-
59:05
Reality ComposerによるAR体験の構築
Reality Composerを使用すると、誰もがARシーンのプロトタイプ作成や開発を簡単に行い、AppやAR Quick Lookによる体験に組み込むことができます。このセッションでは、Reality Composerの強力で直感的な機能と、ビルトインARライブラリのすぐに使える数百個ものバーチャルオブジェクトについて紹介します。アニメーションやインタラクションを簡単に構築して3Dコンテンツを豊かにする方法と、Realityファイルを直接Appに統合する方法についてご確認ください。
-
39:47
RealityKitでAppを構築する
簡単に学べるAPIを使用してゲームを開発し、RealityKitの機能を実践的に理解していきましょう。このセッションでは、アセットのロード、シーンの構築、アニメーションの適用、ゲームインプットの処理において推奨されるアプローチを紹介します。エンティティとコンポーネントにはRealityKitの強力な要素が表れており、同時にカスタマイズのための柔軟性も確保されています。組み込みのネットワーキング機能を活用し、ゲームで臨場感あふれるマルチプレイヤー体験を実現する方法の詳細についてご確認ください。
-
37:09
Xcode 11でのデバッグ
Xcode 11では、バグをすばやく発見および修正するための新機能が導入されています。このセッションでは、ネットワークの状況と発熱の状態をシミュレーションする方法と、デバッグ中にAppのランタイム環境を上書きする方法を紹介します。デバッグ機能がどのようにXcodeのプレビューと連動し、ビルドと実行の前に問題を特定できるかについてご確認ください。View Debuggerを使用してSwiftUIビューのトラブルシューティングを実行する方法もご確認いただけます。
-
35:17
共同のAR体験を構築する
iOS 13では、ARKitとRealityKitによって、Appでこれまでより迅速かつ簡単に共有AR体験を確立できます。共同セッションを通して、複数のデバイスで共同のワールドマップを構築し、ARのアンカーと情報の更新をリアルタイムで共有する方法についてご確認ください。ARKitベースのAppに共同セッションを組み込む方法を説明した後、RealityKitとSwiftを使用して構築された、夢中になれるマルチプレイヤーARゲームのSwiftStrikeを紹介します。
-
57:13
OpenGL AppをMetalに移行する
MetalはAppleプラットフォームでGPUによる高速なグラフィックス処理と演算を行うための最新の基盤であり、OpenGL、OpenGL ES、OpenCLに代わるものです。このセッションでは、Metalのアーキテクチャと機能、およびOpenGLベースのAppをMetal APIに移行するための詳しいアプローチを紹介します。
-
43:06
シミュレータを最大限に活用する
このセッションでは、シミュレータの世界を詳しく紹介します。シミュレータの仕組みやあまり知られていない機能、シミュレータのコマンドラインインターフェイスによる自動化についてご確認ください。MetalによるシミュレータのネイティブGPU高速処理や、Metalコードを最適化して活用する方法についても説明します。
-
41:25
機械学習のためのMetal
Metal Performance Shaders(MPS)には、機械学習およびGPUのパワフルな性能を活用するために不可欠な、データ並列処理プリミティブの厳選されたライブラリが収められています。iOS 13とmacOS Catalinaでは、MPSによってパフォーマンスが向上し、より多くのニューラルネットワークを活用できるようになりました。しかも、これまでより簡単に使用できるようになっています。このセッションでは、MPSのこうした向上点と、スタイル変換のような革新的なテクニックを実装するための実践的な方法について説明します。
-
10:18
Game Centerのプレイヤー識別子
Game Centerが、対象範囲が個々のゲームやデベロッパチームのIDにスコープされた永続的なプレイヤー識別子に対応しました。このセッションでは、スコープされた識別子によってプレイヤーのプライバシーがどのように向上するかを説明し、Appやゲームを推奨されるAPIに移行させる方法を紹介します。
-
49:24
MetalのAppとゲームを最適化する
リソース消費量の高いMetalのAppやゲームにおいて、パフォーマンス、メモリ、帯域幅の最適化を検討することは重要です。このセッションでは、レンダリングを円滑にして高いフレームレートを達成するための鍵となるベストプラクティスについて説明します。また、GPUへの負荷が高い処理や想定外の処理を特定するために役立つ強力なツールも紹介します。高いパフォーマンスを引き出せるGPU機能と、メモリの効率的使用に関するエキスパートからのアドバイスについてご確認ください。
-
17:00
新しいゲームコントローラへの対応
iOS 13、macOS Catalina、tvOS 13のGame Controllerフレームワークでは、広く知られている複数のコンソールゲームコントローラに新たに対応しています。このセッションでは、新しく追加されたコントローラと、入力の伝達方法について説明します。また、オプションのボタンを処理するために推奨されているベストプラクティスと、macOSへの対応における適切なアプローチも紹介します。
-
58:56
プロフェッショナル向けのAppのためのMetal
Metalは、AppleプラットフォームにおけるGPUによる高速処理の心臓部となる、プラットフォームに最適化されたグラフィックスおよび演算のためのフレームワークです。このセッションでは、最新の高パフォーマンスなプロフェッショナル向けのAppとワークフローに向けたテクニックに対応した、Metalアーキテクチャの主要な側面について説明します。Metalの機能を使用してパフォーマンスを最適化し、ビデオ編集パイプラインで安定したフレームレートを維持する方法についてご確認ください。CPUとGPUの並列処理を活用する方法と、効率的なデータスループットのためのベストプラクティスも紹介します。
-
31:55
USDを使用する
Universal Scene Description(USD)を使用すると、安定した3Dシーンを描写することができ、エンジニアとアーティストがクリエイティブのワークフロー全体でシームレスにコラボレーションすることができます。このセッションでは、USDの強力な機能と、その優れた拡張性を紹介します。USDアセットの作成方法と、ARKitとRealityKitで使用するusdzコンテンツの作成に関する詳しい情報についてご確認ください。
-
58:38
Metalによるレイトレーシング
Metal Performance Shaders(MPS)によってGPUの強力な並列処理能力を活用することで、モダンなレイトレーシングおよびレイキャスティングの心臓部となる計算処理を大幅に高速化することができます。このセッションでは、MPSによって動的なシーンの計算がどのように高速化されるかを説明し、ソフトシャドウ、アンビエントオクルージョン、グローバルイルミネーションを実装する方法の実践的な例を紹介します。ハイブリッドレンダリングの適用を有効にする方法と、Appを複数のGPU対応に拡張する新しいテクニックについてご確認ください。
-
-
WWDC18 -
33:35
Metal Game Performance Optimization
Realize the full potential of your Metal-based games by tackling common issues that cause frame rate slowdowns, stutters, and stalls. Discover how to clear up jitter and maintain a silky-smooth frame rate with simple changes in frame pacing. Get introduced to new tools for analyzing rendering...
-
-
WWDC17 -
10:06
Display P3の概要
広色域ディスプレイでは、アプリがこれまで以上に豊かで鮮やかな、生き生きとした色で表示されます。色管理やDisplay P3の色空間に関する基本情報を紹介し、よりカラフルな画像やアイコンを制作するための実践的なワークフローテクニックを解説します。
-
13:53
Design Tips for Great Games
Great games transport us into another world where we can reign over a kingdom, fight epic battles, or become a pinball wizard. Learn on-boarding and UI design best practices that will enable everyone to lose themselves in your game and have fun.
-
29:05
High Efficiency Image File Format
Learn the essential details of the new High Efficiency Image File Format (HEIF) and discover which capabilities are used by Apple platforms. Gain deep insights into the container structure, the types of media and metadata it can handle, and the many other advantages that this new standard affords.
-
53:52
SceneKit: What's New
SceneKit is a fast and fully featured high-level 3D graphics framework that enables your apps and games to create immersive scenes and effects. See the latest advances in camera control and effects for simulating real camera optics including bokeh and motion blur. Learn about surface subdivision...
-
40:09
SceneKit in Swift Playgrounds
Discover tips and tricks gleaned by the Swift Playgrounds Content team for working more effectively with SceneKit on a visually rich app. Learn how to integrate animation, optimize rendering performance, design for accessibility, add visual polish, and understand strategies for creating an...
-
32:17
Going Beyond 2D with SpriteKit
SpriteKit makes it easy to create high-performance, power-efficient 2D games and more. See how to take SpriteKit objects into Augmented Reality through seamless integration with ARKit. Learn about mixing 2D and 3D content and applying realistic transformations. Take direct control over SpriteKit...
-
-
WWDC16 -
41:15
Advanced Metal Shader Optimization
The Metal shading language is an easy-to-use programming language for writing graphics and compute functions which execute on the GPU. Dive deeper into understanding the design patterns, memory access models, and detailed shader coding best practices which reduce bottlenecks and hide latency...
-
-
WWDC15 -
39:48
What's New in Core Motion
See what's new in Core Motion. Learn how your application can take advantage of the motion sensors on iOS devices. Walk through new features of the pedometer and learn how to use the altimeter to take your app to the next level. Get personal with motion APIs and sensor data on the Apple Watch...
-
42:46
Managing 3D Assets with Model I/O
Model I/O provides a seamless infrastructure for accessing and managing 3D models. Its high-performance architecture supports reading and writing popular mesh and model formats, textures, and materials. Get introduced to the Model I/O framework and learn key details about its integration with...
-
-
WWDC14 -
56:33
Ingredients of Great Games
Kick off the game development sessions of WWDC 2014 by gaining insight into the key ingredients needed to create a great game for iOS. Understand the importance of harnessing the full capabilities of the platform to create a richer gameplay experience. Get practical guidance about game production...
-
53:18
Working with Metal: Advanced
Building on the fundamentals, learn how to create advanced games and graphics applications with Metal. See how to construct your rendering pipeline, understand how to use compute and graphics together, and discover how to optimize your Metal-based app.
-
46:23
Working with Metal: Overview
Metal provides extremely efficient access to the graphics and compute power of the A7 chip. Get introduced to the essential concepts behind Metal, its low-overhead architecture, streamlined API, and unified shading language. See how Metal lets you take your iOS game or app to the next level of...
-
53:43
Working with Metal: Fundamentals
Start learning how to code with Metal in this step-by-step walkthrough of basic scene rendering. See the code you need to get your first Metal-based application up and running. Explore how to create graphics and compute shaders and efficiently animate scenes.
-