View in English

  • Apple Developer
    • 今すぐ始める

    「今すぐ始める」を詳しく見る

    • 概要
    • 学ぶ
    • Apple Developer Program

    最新情報

    • 最新ニュース
    • Hello Developer
    • プラットフォーム

    プラットフォームを詳しく見る

    • Appleプラットフォーム
    • iOS
    • iPadOS
    • macOS
    • tvOS
    • visionOS
    • watchOS
    • App Store

    特集

    • デザイン
    • 配信
    • ゲーム
    • アクセサリ
    • Web
    • Home
    • CarPlay
    • テクノロジー

    テクノロジーを詳しく見る

    • 概要
    • Xcode
    • Swift
    • SwiftUI

    特集

    • アクセシビリティ
    • App Intent
    • Apple Intelligence
    • ゲーム
    • 機械学習とAI
    • セキュリティ
    • Xcode Cloud
    • コミュニティ

    コミュニティを詳しく見る

    • 概要
    • 「Appleに相談」イベント
    • コミュニティによるイベント
    • デベロッパフォーラム
    • オープンソース

    特集

    • WWDC
    • Swift Student Challenge
    • デベロッパストーリー
    • App Store Awards
    • Apple Design Awards
    • Apple Developer Center
    • ドキュメント

    ドキュメントを詳しく見る

    • ドキュメントライブラリ
    • テクノロジー概要
    • サンプルコード
    • ヒューマンインターフェイスガイドライン
    • ビデオ

    リリースノート

    • 注目のアップデート
    • iOS
    • iPadOS
    • macOS
    • watchOS
    • visionOS
    • tvOS
    • Xcode
    • ダウンロード

    ダウンロードを詳しく見る

    • すべてのダウンロード
    • オペレーティングシステム
    • アプリ
    • デザインリソース

    特集

    • Xcode
    • TestFlight
    • フォント
    • SF Symbols
    • Icon Composer
    • サポート

    サポートを詳しく見る

    • 概要
    • ヘルプガイド
    • デベロッパフォーラム
    • フィードバックアシスタント
    • お問い合わせ

    特集

    • アカウントヘルプ
    • App Reviewガイドライン
    • App Store Connectヘルプ
    • 近日導入予定の要件
    • 契約およびガイドライン
    • システムステータス
  • クイックリンク

    • イベント
    • ニュース
    • Forum
    • サンプルコード
    • ビデオ
 

ビデオ

メニューを開く メニューを閉じる
  • コレクション
  • すべてのビデオ
  • 利用方法

その他のビデオ

  • 概要
  • Summary
  • トランスクリプト
  • コード
  • Metalによるリアルタイムのニューラルレンダリングパイプラインの構築

    Metal 4を使用して機械学習をリアルタイムレンダリングパイプラインに統合する方法を紹介します。MetalFXニューラルデノイジングによってプロダクション品質の成果を達成するための実用的な導入パターンとベストプラクティス、MaxonのRedshift Liveからの実践的なインサイトを共有します。MLコマンドエンコーダーをインラインで使用して、グラフィックス作品のニューラルトーンマッパーをトレーニングしてデプロイする方法や、テンソルに関する新しいAPIを使って、シェーダ内でコンパクトな特化型ニューラルネットワークを直接構築し評価する方法について解説します。

    関連する章

    • 0:00 - Introduction
    • 2:16 - MetalFX Denoising
    • 9:57 - Deploy custom ML networks with Metal 4
    • 13:40 - Inline neural networks with tensorOps
    • 20:55 - Next steps

    リソース

    • Training a neural network to render irradiance in real time
    • Metal sample code library
    • Download the Metal Performance Primitives (MPP) Programming Guide
    • Understanding the Metal 4 core API
      • HDビデオ
      • SDビデオ

    関連ビデオ

    WWDC25

    • Metal 4による機械学習とグラフィックスの統合
    • Metal 4ゲームの知識を深める
  • このビデオを検索

    こんにちは Yuliaです AppleのGPUソフトウェアエンジニアです。 本日は機械学習を取り入れる 方法をご紹介します Metal 4を使ったリアルタイム レンダリングパイプラインへの統合です。 機械学習をレンダラに統合するための 実践的な方法を学べます 高性能パイプラインを構築するための ベストプラクティス そして今日から採用できる 2つのテクニックも紹介します。 機械学習はリアルタイムレンダリングで 研究から実用段階へと移行しています。 レンダリングパイプライン全体を通じて 従来は解析的手法に依存してきた 多くの確立されたテクニックが 機械学習でも実装できるように なっています。 ニューラルデノイジング ニューラルテクスチャ 学習済みトーンマッピング その他多くのテクニックが 機械学習を活用できます。 パイプラインの各段階でこれらのアプローチは 品質を向上させることができます パフォーマンスや メモリ使用量も改善できます。 Metalでの仕組みをご説明します。 Appleプラットフォームでは 完全な機械学習ツールセットが レンダリングニーズに対応しています。 最上位レベルではMetalFXが すぐに使えるニューラルデノイジングと アップスケーリングAPIを提供します 完全統合されたブラックボックス ソリューションとしてです。 Metal 4のMLコマンドエンコーダを使うと 事前学習済みモデルを コマンドバッファ内で直接実行でき 統合とスケジューリングをより 細かく制御できます。 最も柔軟なレベルでは TensorOps APIが 構築ブロックを提供します シェーダ内でカスタムモデルを 直接設計・実行するためのものです ニューラルアクセラレータを フルに活用できます M5とA19 Pro Appleシリコン GPUに導入されたものです。 本日はこれらすべてについて 順番に説明します。

    今日の内容はこちらです。 MetalFXでレンダリングパイプラインに 本番品質の結果を達成する方法 採用方法も含めて説明します MaxonのRedshift Liveを 例として使います 現代のリアルタイム パストレーシングビューポートとして Appleのベストプラクティスに従って MetalFX Denoisingを採用しています。 次にニューラルトーンマッパーを トレーニングしてMetal 4で デプロイする方法を説明します。 最後にTensorOps APIを使って シェーダ内で小さなネットワークを 構築する方法を説明します。

    まずはMetalFXから始めます。 パストレーサーではフレームバジェットの 都合で1サンプル/ピクセルや 数サンプル/ピクセルしか使えない 場合があります。 ただし1サンプルでは 当然ノイズが発生します。

    品質を維持するには MetalFX Denoisingを使いましょう。 これはライブビューポートの 低レイテンシ要件に対応するよう 特別に設計されています。 MetalFX Denoisingはニューラルアップスケーラーと デノイザーを組み合わせたソリューションで Appleシリコンに最適化された プラットフォーム統合ソリューションです。 パイプラインには 簡単に統合できます。 拡散アルベドや深度など いくつかの補助入力を生成する必要があります その他にもいくつか必要です。 レンダラによっては すでに生成済みの場合もあります。 これらの入力をすべてMetalFXに渡すと 美しいデノイズ済み画像が得られます。 その後パイプラインを完了させます ポストプロセスと 出力の表示を行います。 これはRedshift Liveです MaxonのリアルタイムパストレーサーでAppleシリコン上で Cinema 4Dで高品質な 3Dアセットをレンダリングし Appleシリコン上で動作しています。 ビューポートでパストレーシングの 恩恵がすべて得られますが カメラ移動中には 若干のノイズが見えます 1サンプル/ピクセル表示によるものです。 MetalFXデノイザーを有効にすると 画像が劇的に安定し ノイズが消えます。 Redshift Liveはクリーンで 最終品質に近い画像を インタラクティブなフレームレートで 提供できるようになります リアルタイムのレイトレースライティング シャドウ グローバルイルミネーションも実現します。 アーティストはビューポートで ライティング効果をリアルタイムに確認できます この木が動く様子もリアルタイムです。 これはハードウェアアクセラレーションの レイトレーシングと MetalFXのニューラルデノイジングを 組み合わせることで実現します。 こちらは1サンプル/ピクセルで レンダリングされたフレームの例です。 Redshift Liveによるものです。 空間的技法と時間的技法を 活用することで MetalFXはノイズの多い1サンプル/ピクセルを ほぼ最終品質の画像に リアルタイムで変換できます。 入力の詳細と アプリケーションでMetalFXを 活用する方法については 「Go further with Metal 4 games」 セッションをご確認ください。 MetalFXから最高の品質を得るために Maxonが実践した 3つの主要なベストプラクティスを 説明します まずデノイザーの入力とノイズについてです。

    デノイザーの出力品質は 入力品質に直接依存します。 通常 補助入力はノイズがない状態なので そのままの状態を保つよう 努めてください。 すべての入力の中で拡散アルベドが デノイジングに最も重要な信号です。 迷ったときは なるべく ノイズのない版に近づけてください 画面に表示したい最終結果に できるだけ近づけてください。 エンジン内の各入力について デバッグビューの作成を検討してください。 GPUキャプチャを使って テクスチャをフレームごとに検査します。 これで入力を検証できます モデルが期待する見た目に なっているか確認できます。

    シーンにノイズのないレイヤや 強くデノイズしたくない部分が ある場合があります。 2つのツールが使えます 透過オーバーレイと デノイザー強度マスクです これらを使うことでこのようなシナリオでの 品質を最大化できます。 パーティクル フォグ ボリューメトリクス 空など 意味のある表面を持たない エフェクトがあります レンダリングパイプラインによっては すでにノイズがない場合もあります。 MetalFXはノイズの多い入力を デノイズしてアップスケールします。

    ノイズのないエフェクトには MetalFXの透過オーバーレイ 入力を活用できます。 オーバーレイ入力はアップスケールのみ行われ 最終結果に合成されます。 空のようにノイズのない領域には MetalFXを設定して そのピクセルのデノイジングを スキップできます デノイザー強度マスクを使います。 例をご紹介します。 ここでは空がデノイズ対象外として マークされています。 値は0から調整できます 0はデノイジングなし 1は ユースケースに応じた 最大強度のデノイジングを意味します。 これによりシーンの デノイジング効果を制御できます。 MetalFXですでに素晴らしい出力を 得られているはずですが 反射と透過に関して いくつか難しいケースがあります。 この2つ目のベストプラクティスが 役立ちます。 鏡には固有の色がありません。 観察者には反射面が見えます。 前述のように 入力は 特に拡散アルベドは 最終的な望ましい出力に できるだけ近づけるべきです。 鏡のようなオブジェクトには アルベドや法線などの 反射したジオメトリの プロパティを格納します。

    ガラスは同じ基本概念の上に さらに発展させたものです。 観察者には反射したものと 透過したものの組み合わせが見えます ノイズが発生する可能性があります。 解決策のひとつは拡散アルベドなどの ジオメトリプロパティを Fresnelタームでブレンドして 入力のノイズを大幅に削減することです。 Fresnelとは交差点において どれだけの光が反射と屈折に それぞれ使われるかを示すものです。 左側にはプライマリ表面の アルベドが見えます 右側では 反射と屈折を組み合わせた アルベドに置き換えられています。

    これはプライマリ表面置換と呼ばれる よく知られたテクニックです。 これを正しく実装すると 反射が美しくシャープになります。 マテリアルが豊かな見た目になり 反射と屈折もシャープになったので 3つ目のベストプラクティスに進みましょう モーションベクターを正確にすることです。 正確なモーションベクターは 時間的安定性に不可欠です。 モーションベクターはピクセル単位の スクリーン空間変位です 現在のフレームから 前フレームへの変位を表します。 各ピクセルのモーションベクターは 次の問いに答えるものです このピクセルは前フレームで どこにありましたか? モーションベクターは現代の レンダリング技術の基本です。 モーションベクターを正確にすることが ぼけた結果と 動き中のシャープな出力の 差を生みます。 モデルはモーションベクターを使って 動き中と時間経過での シーンを理解します。 MetalFXはサブピクセルシフトのない デジッタリング済みモーションベクターを期待します。 これがないとMetalFXが受け取る モーションベクターが 最大1ピクセルずれる 可能性があります エッジのシマリングが発生します。 正しく計算する方法を 説明します。 静的オブジェクト向けの カメラのみのモーションベクターを計算するコードです。 まず現在の頂点の プロジェクション位置を計算します。 次に同じ位置を前フレームの 行列でプロジェクションします。 モーションベクターは その2つの差です。 ただしカメラ行列が ジッタリングされているため 現在のフレームから ジッタデルタを引きます 前フレームからも引きます。 最後にジッタのないクリーンな モーションベクターが得られます。 動くオブジェクトや 変形するジオメトリには カメラのみのパスでは 変位を捉えられません。 各頂点の前フレームのワールド位置を 格納するか 2回スキンします そして実際のモーションベクターを 計算します。 動きが本質的に信頼性に欠ける 高速移動のオブジェクトには アルファブレンドのパーティクルなど リアクティブマスクを使います。 リアクティブマスクの詳細は 「Go further with Metal 4 games」をご確認ください。 実際にどう見えるかをご覧ください。 MaxonのRedshift Liveは 説明したすべてのベストプラクティスを実装しており MetalFX Denoisingを最大限に活用し Appleシリコン上で動作し 最終品質に近い画像を提供します。

    次はプラットフォームソリューションを 超えて 独自のML搭載ソリューションを 構築する方法を説明します。 ニューラルレンダリングはデノイジングを はるかに超えています。 パイプライン全体にわたって ますます多くのテクニックが 機械学習ベースになっています Metal 4を使えば独自のものを 構築・デプロイするツールが揃っています。 Metal 4では独自の機械学習技術を パイプラインに取り込む 2つの方法があります。 MLコマンドエンコーダを使うと 学習済みモデルをデプロイできます コマンドバッファ内で 同じパイプライン上で直接 コンテキストスイッチなしで実行できます。 TensorOps APIを使えば 小さなハードウェアアクセラレーション付きの ネットワークをシェーダ内で 直接構築できます。 両APIの詳細については 「Combine Metal 4 machine learning and graphics」 をご確認ください。 本日はトーンマッピングに焦点を当てます。 ほとんどのレンダラは拡張された ポストプロセスパイプラインを持ち HDR画像を正しくマッピングして 表示可能でアーティストの ビジョンに合うよう変換します トーンマッピング カラーグレード フィルムエミュレーションなどを行います。 パイプラインは複数のステージで 構成されており それぞれが独自のパラメータを持ち 連結された出力を生成します。 パイプラインは任意に複雑になります。 最善の結果はイメージの内容を 理解することから得られます それこそがニューラルネットワークが 学習できることです。 アイデアはシンプルです。 既存のカラーパイプライン全体か 一部を取り出して 単一のニューラルネットワークに 置き換えます。 ネットワークはカラー変換を 学習します。 このようなワークフローの例が HDRNetです。 Gharbiらによる2017年の アーキテクチャです。 仕組みの概要をご説明します。 ネットワークは画像の小さな ダウンサンプル版で動作します。 2種類の解析を行います グローバルとローカルで シーン全体と細部の両方を捉えます。 このプロセスによりネットワークは カラー変換を生成できます 画像の16x16タイルに対して。 これらのローカライズされた変換は スマートなエッジ対応技術で適用され 美しいトーンマッピングされた 最終結果を生成します。

    このソリューションを作成するには まず 選択したフレームワークで ネットワークを開発してトレーニングします 例えばPyTorchを使います。 トレーニングデータは手動でトーンマッピングした 過去のプロジェクトから作成できます またはレンダラが生成した 大量のトーンマッピング済み画像からも作成できます。 モデルのトレーニングが完了したら MTLPackageにエクスポートします。 Metal 4でネットワークを実行するには セットアップと実行の両方で いくつかの手順が必要です 実際の実行も含みます。 まずパイプラインをセットアップするために MTLPackageを読み込みます 関数ディスクリプタで ネットワーク関数を指定します そして機械学習パイプライン ディスクリプタを作成します。 このプロセスは通常の パイプラインの読み込みとよく似ています。 次のステップはネットワーク実行の ディスパッチです エンコーダを作成します 入力と出力を含む 引数テーブルを作成します 最後にコマンドバッファを ディスパッチします。 これで実行が開始されます コンピュート 機械学習とレンダリング作業が 同時に行われます。 更新されたパイプラインはこちらです。 まずパストレーサーがサンプルを生成し MetalFXデノイジングと新しい ニューラルトーンマッパーが続きます すべて同じコマンドバッファに エンコードされ 同じフレームで実行されます。 MLエンコーダは複数段の ポストプロセスチェーン全体を 単一のニューラル評価に 置き換えました。 ネットワークのトレーニングと デプロイ方法を説明しました。

    次はさらに深くに進んで 小さなネットワークを TensorOps APIを使って シェーダ内で直接構築します。 これまでは大規模な汎用ネットワークを 探索してきました 大規模なデータセットで オフラインでトレーニングされたものです。 今度は逆のアプローチを見ていきます 特定のタスク向けの小さなネットワークです。 数千パラメータ以下で シーンデータでトレーニングされます 数フレームごとにオンラインで トレーニングされることもあります。 ネットワークは1つのシナリオのみを扱います 汎化する必要がありません。 これまでMLを実行する方法を学びました 同じコマンドバッファ内で スタンドアロンのステップとして。 ここではコンピュートとレンダリングと 並行して実行されます。 ただし小さなネットワークは シェーダ内にインライン化できます 残りのコードと一緒に ALUとテクスチャサンプリング 命令と共に。 この実現を可能にする技術が TensorOpsです レンダリングパイプラインの あらゆるステージで利用できます。 これらを組み合わせることで 新しい可能性とワークフローが オンライントレーニングを含む 形で生まれます。 例を示します イメージベースドライティングに使われるスカイボックスです。 スカイボックスはシーン内の ジオメトリに光を当てており 自然な柔らかい照明を 生み出しています。 この柔らかい照明は 特定の点からすべての方向から 来る平均的な光の結果です。 通常この結果はオフラインで事前計算され ランタイムでサンプリングされます。 ただしシーンはほとんど静的ではありません。 昼夜サイクルが動的な場合もあります。 オフラインで学習した信号が 同期しなくなる場合があります。 これはニューラルネットワークに適した 学習可能な関数です オンライントレーニングが ここで活躍します。 このテクニックを再現する方法を 見てみましょう。 MLコマンドエンコーダについて 学んだことを基にすると 簡略化されたレンダリングループは このようになります まずワールドを更新します レンダリングに向けてすべての情報を 最新の状態にします。 次にMLコマンドエンコーダを ディスパッチします モデルで推論を実行するために 必要なライティング情報を 生成します シェーディングに後で使用します。 オンライントレーニングは このパラダイムを変えます。 独自のトレーニングと推論ルーティンを 作成することで フレームごとに1回以上の トレーニングイテレーションを実行し モデルの精度を向上させられます。 これがオンライントレーニングループの スカイ照明モデルへの 適用例です。 まずサンプリングしたい方向を生成し モデルで推論を実行して 結果を得ます。 次に解析的な解を計算できます スカイ照明問題のエラー計算に使います 最後にバックプロパゲーションパスを実行して モデルを徐々に改善します。 これはオフラインでも使えるのと まったく同じフローです ただしこの場合はフレームをまたいで トレーニングを繰り返します。

    これで独自の推論と トレーニングルーティンが実行できます。 これにより推論パスを実行して シェーディングパス内に インライン化できます TensorOpsを使えばこれを 非常に効率的に実装できます。 これで毎フレーム適応するモデルを 持つことができます 新しいワールドの状態に そしてこの情報をシェーディングに すぐに活用できます。 これは不可能だったことです 標準的なオフライントレーニング ワークフローでは実現できません。 この概念は信号を学習できる あらゆる技術に汎用化できます。 独自のソリューションの構築を 始める方法をご説明します。 高レベルでは ニューラルネットワークは 3つの主要な構成要素で できています 入力層 ネットワークの入力 (入力特徴とも呼ばれる)を処理します。 出力層はネットワークの 最終的な予測を生成します 最後に隠れ層です ここで学習の魔法が起こります。 スカイプローブは小さなネットワークで 隠れ層グループはそれぞれ 4ニューロンの2つの隠れ層で構成されます。 ネットワークは入力値として 方向をエンコードした3つのfloatを取り 出力として3つのfloatを生成します その方向から来る平均照度を カラーとして表したものです。 これは全結合多層パーセプトロンと 呼ばれます 略してMLPと言います 3-4-4-3のネットワークです。 入力サイズを試行錯誤できます レイヤの数とサイズも アプリケーションに最適な 結果を得るために。 ネットワークを評価するには 入力テンソルを準備する必要があります。 複数の入力を同時にバッチ処理して 2D行列にするのが最善です。 スカイプローブの例では 2D行列になります 評価したい入力方向の バッチです。 ただし入力にはネットワークに役立つ あらゆるデータを入れられます 位置データやマテリアルデータなどです。 同じ原則が出力テンソルにも 適用されます。 スカイプローブでは カラーのバッチの2D行列にします。 MLPの構造がわかったので シェーダ内での実装方法と フォワードパスでの評価方法を 見ていきます。 評価を開始する準備ができました。 入力テンソルと最初の隠れ層の 重みテンソルがあります。 matmul 2Dテンソル演算を使って 2つを乗算できます。 事前活性化結果が得られます これに活性化関数を適用します。 その前に行列乗算の結果を 格納する必要があります。 効率的な方法をご説明します。 スレッド実行スコープに 慣れているかもしれません 1つのスレッドがテンソル演算全体の 実行を担当します。 これは分岐した処理や パイプラインステージで実行する場合に優れています スレッドグループを完全に 制御できない場合です。 ただし完全に制御できる場合は 新しい可能性が生まれます。 コンピュートステージでは SIMDグループ実行スコープが使えます 参加しているすべてのスレッドが 同じ行列乗算を処理します。 この実行モードでは 協調テンソルにもアクセスできます。 協調テンソルのストレージは スレッドグループ内の 複数のスレッドに分散されます メインメモリへの高コストな 往復を回避できます。 最初の乗算の出力として 協調テンソルを使うことで 結果は高速なスレッド ストレージメモリに留まります。 その後 活性化関数を インプレースで適用できます。 次のレイヤでも同じ 行列乗算の操作を繰り返し 活性化を繰り返せます。 そして出力層まで すべての後続レイヤで 結果のテンソルを格納して コンピュートシェーダ内ですぐに または後のステージで活用できます。 左側はレイトレーシングで計算された グラウンドトゥルースのレンダリングです。 右側はニューラルレンダリング版です。 小さなニューラルネットワークが 信号を効率的に学習できました。 TensorOpsを使ってシェーダ内で MLPを構築して評価する方法の 高レベルな概要でした。 まったく同じ構成要素を使って 効率的な バックプロパゲーションパスを作成できます オンライントレーニングに必要なものです。 コードの詳細については 「Metal Performance Primitives (MPP) Programming Guide」 をご確認ください。

    まとめると 本日はレンダリングパイプラインにおける MLの3つのレベルを紹介しました。 まずMetalFXがプラットフォーム統合の ニューラルデノイジングを提供します 3つのベストプラクティスとともに 入力をクリーンに保つ 観察者が見るものを格納する モーションベクターを正確にする。 次にMTLPackageを使って オフラインでトレーニングしたモデルを エクスポートしてランタイムでデプロイできます ポストプロセスパイプライン全体を 単一のニューラル評価に置き換える 方法を学びました。 最後にTensorOps APIを紹介しました シェーダ内で小さなネットワークを 直接構築できます ニューラルアクセラレータ上で動作します。 各レベルでより多くの制御が得られます。 アプリに合ったものを選んでください。 Xcodeをダウンロードして Metal 4のサンプルコードを探索してください。 アプリにリアルタイムの要件がある場合 プロアプリやゲームのビューポートなど MetalFX DenoisingとUpscalingを採用してください。 独自のポストプロセスパイプラインで ニューラルトーンマッパーをトレーニングしてみてください。 TensorOps APIを使って特化した 小さなネットワークを試してみてください。 過去のセッションも参照して 詳細をご確認ください。

    皆さんの作品が楽しみです。

    • 8:46 - Compute camera-only motion vectors

      #include <metal_stdlib>
      using namespace metal;
      
      // Compute camera-only motion vectors
      float4 clipCurrent = viewProjCurrent * float4(worldPos, 1.0);
      float2 ndcCurrent = clipCurrent.xy / clipCurrent.w;
      
      float4 clipPrevious = viewProjPrevious * float4(worldPos, 1.0);
      float2 ndcPrevious = clipPrevious.xy / clipPrevious.w;
      
      float2 motion = ndcPrevious - ndcCurrent;
      
      // Get subpixel offset for current and previous frames
      float2 jitterCurrent = getJitter(frameIndex);
      float2 jitterPrevious = getJitter(frameIndexPrevious);
      motion -= jitterPrevious - jitterCurrent;
    • 0:00 - Introduction
    • An overview of how machine learning is transforming real-time rendering pipelines on Apple platforms, and a preview of three levels of ML integration: MetalFX Denoising, deploying custom networks with Metal 4, and building tiny networks inline in shaders with tensorOps.

    • 2:16 - MetalFX Denoising
    • How to integrate MetalFX Denoising into a path tracer running at one sample per pixel. Covers auxiliary inputs (albedo, depth, motion vectors), best practices for clean inputs, transparency overlays, the denoiser strength mask, and primary surface replacement for mirrors and glass — illustrated with Redshift Live from Maxon.

    • 9:57 - Deploy custom ML networks with Metal 4
    • How to train a neural tone mapper offline (e.g., HDRNet), export it to Metal Performance Shaders Graph, and execute it inside a Metal 4 command buffer alongside your existing rendering passes to replace complex post-processing pipelines with a single network.

    • 13:40 - Inline neural networks with tensorOps
    • How to build and run small multilayer perceptrons directly inside Metal shaders using the TensorOps API and cooperative tensors. Demonstrates an online-trained sky visibility probe that adapts to dynamic scenes each frame — enabling ML inference and training that runs alongside your existing compute and render work.

    • 20:55 - Next steps
    • A recap of the three levels of ML integration in rendering pipelines, and guidance on where to start: download Xcode, explore Metal 4 sample code, and adopt MetalFX denoising for real-time applications first.

Developer Footer

  • ビデオ
  • WWDC26
  • Metalによるリアルタイムのニューラルレンダリングパイプラインの構築
  • メニューを開く メニューを閉じる
    • iOS
    • iPadOS
    • macOS
    • tvOS
    • visionOS
    • watchOS
    Open Menu Close Menu
    • Swift
    • SwiftUI
    • Swift Playground
    • TestFlight
    • Xcode
    • Xcode Cloud
    • SF Symbols
    メニューを開く メニューを閉じる
    • アクセシビリティ
    • アクセサリ
    • Apple Intelligence
    • App Extension
    • App Store
    • オーディオとビデオ(英語)
    • 拡張現実
    • デザイン
    • 配信
    • 教育
    • フォント(英語)
    • ゲーム
    • ヘルスケアとフィットネス
    • アプリ内課金
    • ローカリゼーション
    • マップと位置情報
    • 機械学習とAI
    • オープンソース(英語)
    • セキュリティ
    • SafariとWeb(英語)
    メニューを開く メニューを閉じる
    • 英語ドキュメント(完全版)
    • 日本語ドキュメント(一部トピック)
    • チュートリアル
    • ダウンロード
    • フォーラム(英語)
    • ビデオ
    Open Menu Close Menu
    • サポートドキュメント
    • お問い合わせ
    • バグ報告
    • システム状況(英語)
    メニューを開く メニューを閉じる
    • Apple Developer
    • App Store Connect
    • Certificates, IDs, & Profiles(英語)
    • フィードバックアシスタント
    メニューを開く メニューを閉じる
    • Apple Developer Program
    • Apple Developer Enterprise Program
    • App Store Small Business Program
    • MFi Program(英語)
    • Mini Apps Partner Program
    • News Partner Program(英語)
    • Video Partner Program(英語)
    • セキュリティ報奨金プログラム(英語)
    • Security Research Device Program(英語)
    Open Menu Close Menu
    • Appleに相談
    • Apple Developer Center
    • App Store Awards(英語)
    • Apple Design Awards
    • Apple Developer Academy(英語)
    • WWDC
    最新ニュースを読む。
    Apple Developerアプリを入手する。
    Copyright © 2026 Apple Inc. All rights reserved.
    利用規約 プライバシーポリシー 契約とガイドライン