← すべての記事

2026年のRealityKitとReality Composer Pro 3

Reality Composer Pro 3はXcodeのバンドルから離れ、アプリケーションフォルダから起動する独立したアプリとして出荷されました。一見するとパッケージングに関する注記のように読めますが、これはWWDC26の空間関連の発表全体の中で最も明確なシグナルです。オーサリングツールはもはや付属物ではなく、それ自体が目的地となり、その下のエンジンもそれに見合うよう進化したのです。1

2026年のリリースでは、パイプラインの両輪が同時に動きました。RealityKitは、シーンを本物らしく見せるレンダリングとシミュレーションの機能を獲得しています。ソフトシャドウ、ベイクされたライトマップ、実際の壁に投影されるプロジェクティブテクスチャ、クロス、ナビゲーションメッシュ、ガウシアンスプラット、そしてレイトレースによる音響です。一方Reality Composer Pro 3は、それらの機能をビルドサイクルなしでつなぎ合わせるワークフローを手に入れました。ヘッドセット上でのライブプレビュー、プロトタイプとインスタンス、ノードベースのグラフ、そして3Dコンテンツを生成するAIアシスタントです。両者を結ぶ第三の糸がコードです。Xcodeプラグインがオーサリングツール内でカスタムコンポーネントを実行し、新しい構造化モデルのツールキットが共同デザインレビューアプリを支えます。それぞれの要素はもはや別々のデモではなく、首尾一貫した作業のあり方になりました。

本記事では、今年の空間オーサリングパイプラインを定義する5つのWWDC26セッションをたどります。それぞれに、要点を裏付けるクリップと、作り方を変える洞察を添えています。

TL;DR / 要点

  • RealityKitのライティングとシミュレーションが成熟しました。lightSizeで制御されるソフトシャドウ、ベイクされたライトマップ、プロジェクティブテクスチャと実際の部屋への物理空間ライティング、クロス、ナビゲーションメッシュ、ガウシアンスプラット、そしてレイトレースによるリバーブです。2
  • Reality Composer Pro 3は(もはやXcodeの開発者ツールではなく)独立アプリとして出荷され、高速な反復のために作られています。ドック可能なシミュレーションタブ、オーバーライド可能なプロトタイプとインスタンス、デバイス上でのライブプレビュー、ベイクされたライトマップ、そして生成AIアシスタントを備えています。3
  • エディタはXcodeプラグインで拡張できます。コンポーネントとシステムはRealityComposerProPluginプロトコルを通じてエディタ内で実行され、カスタムアニメーションアクションはEntityActionを介してシーケンサーに組み込まれ、@ScriptableマクロはコンポーネントをScript Graphに公開します。4
  • ビジュアルなノードベースのツール(Animation Graph、Behavior Tree、Script Graph、Compute Graph、Shader Graph)により、デザイナーはビルドサイクルなしでキャラクターの挙動、GPUパーティクル、マテリアルをオーサリングできます。5
  • visionOS 27は、共同デザインレビューのための構造化3Dモデルのツールキットを追加しました。階層に基づくManipulationComponentの配置、断面用の新しいClippingComponent、そしてアセンブリを自動展開する体積加重分散です。6

RealityKitはリアリズムを生む機能を手に入れた

RealityKitは2019年以来、Appleのクロスプラットフォーム3Dエンジンであり、一度作ればvisionOS、iOS、iPadOS、macOS、tvOSへ展開できるレイヤーです。2 2026年の追加機能は、「正しくレンダリングされる」と「本物らしく見える」の間の隔たりを埋めるもので、Chaparral Villageという1つのゲームの中で実演されました。これによりセッションは機能のチェックリストではなく、一本の筋が通ったものになっています。

Watch on Apple Developer ↗
RealityKitチームのDennisが、ソフトシャドウ、ライトマップ、プロジェクティブテクスチャ、クロス、ナビゲーションメッシュ、ガウシアンスプラット、そして没入型オーディオを、1つのゲームシーンを通して解説します。

まずは影から始めましょう。APIの選択が、チームの考え方を物語っているからです。RealityKitの影はデフォルトで硬いエッジになりますが、これが正しいのは光源が極小の場合だけです。実際の光には面積があり、面積は半影、つまり光の一部だけが遮られる柔らかな減衰を生みます。RealityKitはこれを直感的な1つのつまみでモデル化します。影のlightSize、すなわち光の直径(メートル単位)です。0.7に設定するとエッジが柔らかくなり、光が大きいほど半影は広がります。付随するquality設定はサンプル数とパフォーマンスを天秤にかけます(lowでは硬い影になり、mediumでも通常の視聴距離では十分です)。2 これらのコントロールは物理量に対応しており、ぜひ身につけておきたいパターンです。

2つの機能が光を仮想の境界の外へ押し出します。プロジェクティブテクスチャは、フィルムを通して懐中電灯を照らすことを模倣し、スポットライトが向く先にパターンを投影します。アニメーションするコースティクスや、プラネタリウムの星や星雲などです。続いて物理空間ライティングは、RealityKitのシーン理解メッシュを通じて、それらの仮想の光が実際の部屋と相互作用できるようにします。これにより投影された星々が実際の壁に沿うのです。その有効化は拍子抜けするほど簡単です。スポットライトにSurroundingsLightコンポーネントを追加するだけです(現在はスポットライトとポイントライトに対応)。2 仮想の光を実際の部屋の光に変えるのは、別個のレンダリングパスではなく、アタッチするコンポーネントなのです。

セッションの残りは、シミュレーションとキャプチャを巡ります。クロスシミュレーションは、布をスプリングエッジで結ばれたパーティクル頂点のメッシュとして記述します。カーテンをピン留めすると、特定の頂点がキネマティックとしてマークされます。ナビゲーションメッシュは、エリアごとの移動コストとオフメッシュ接続を持つ通行可能な領域を定義し、NavigationComponentを通じて供給され、NavigationControllerによって照会されます。ガウシアンスプラットは、実世界のキャプチャを位置、スケール、回転、不透明度、球面調和関数で定義される楕円体としてレンダリングし、GaussianSplatComponentに組み立てられます。没入型オーディオは、レイトレースによる幾何音響に基づくカスタムリバーブメッシュを獲得し、そこではReverbMeshResourceが部屋のジオメトリとマテリアルごとの音響特性を定義します。2 一貫しているのは、それぞれの機能がエンティティに組み合わせるコンポーネントだという点です。これはまさに、RealityKitが常に持ってきたエンティティ・コンポーネント・システムの形そのものです。

Reality Composer Pro 3は反復のループを閉じる

エディタにおける最も重大な変更には、APIが一切ありません。Reality Composer Pro 3はもはやXcodeの開発者ツールではありません。アプリケーションから起動し、リリース全体が、編集してから結果を見るまでの時間を削ることを軸に組み立てられています。3

Watch on Apple Developer ↗
JPがChaparral Villageの錬金術シーンをライブで構築します。USDバンドルのインポート、プロトタイプとインスタンス、デバイス上でのプレビュー、ベイクされたライトマップ、そしてAIアシスタントです。

エディタはエンティティとコンポーネントのモデルを保っています。USDファイルを最適化されたバンドルとしてインポートし、エンティティとしてビューポートにドラッグして、インスペクタのコンポーネントで形を整えます。変わったのはフィードバックです。再生を押すとシーンが動きます。シミュレーションタブをシーンタブの横にドッキングすれば、ゲームが動いている間もオーサリングを続けられ、グラフを微調整して、デプロイの手順を一切踏まずに結果を見られます。JPの言い回しこそ覚えておくべきものです。シミュレーションタブは内側のループからデプロイのプロセスを取り除き、あなたと最終的な体験との間の摩擦をほぼ消し去るのです。3

3つのシステムがそのループを拡張します。プロトタイプは、エンティティをProject Browserにドラッグできる再利用可能なアセットに変えます。それを何度もインスタンス化し、任意のインスタンスをオーバーライドし、オーバーライドをリセットし、あるいはソースへ反映できますが、あなたがそう決めない限り、何も恒久的には変わりません。ライブプレビューは、コンパニオンアプリ(年内に出荷予定)を通じて接続されたVision Proを対象とします。これによりMac上でオーサリングしながら、更新をデバイス上で即座に確認できます。物理空間ライティングは、まさにそこで判断しなければならないものです。3 ライトマップは静的なライティングを処理します。Lightmapコンポーネントが間接照明、アンビエントオクルージョン、あるいはビューティをテクスチャに事前計算し、フルベイクの前にプレビュータブでその効果を確認できます。セッションはReality Composer Pro Assistantで締めくくられます。これは要求に応じて3Dオブジェクトとマテリアルを生成するAIパネルです。3 このパターンは繰り返されます。代償を払う前に、変更の結果を見るのです。

Xcodeでエディタを拡張する

アーティストが組み込みコンポーネントしか使えないなら、独立したエディタは本格的なチームにとって行き止まりになるでしょう。その答えがプラグインシステムであり、Reality Composer Proを「使うツール」から「プログラムするツール」へと再定義します。年内に出荷予定です。4

Watch on Apple Developer ↗
Niklasが大釜のプラグインを構築します。カスタムコンポーネントとシステム、シーケンサーのアニメーションアクション、そしてScript Graphノードを、すべてエディタ内でライブに実行します。

前提となるのはチーム構成です。Chaparral Village型のプロジェクトでは、Reality Composer Proプロジェクト(アーティストとデザイナー)とXcodeプロジェクト(エンジニア)を同じgitリポジトリで組み合わせます。インポートされたファイルはディスク上で内部JSONに変換されるため、標準のgitツールでマージでき、さらにエディタは、素のgit mergeよりも競合の少ないカスタムマージツールを追加します。4 エンジニアは共有コードから2つのスキームをビルドします。アプリと、彼らのコンポーネントとシステムをエディタに公開するRCPCustomComponents.frameworkプラグインです。シーンはRealityKitのシリアライズ形式であるReality Fileにエクスポートされ、アプリがそれを読み込みます。コードはプラグインとしてエディタへ流れ込み、コンテンツはReality Fileとしてアプリへ流れ込みます。

その仕組みは登録のハンドシェイクです。RealityComposerProPluginに準拠するクラス(RealityComposerPro Swiftパッケージのもので、プロジェクトをリンクすると自動的に追加されます)を書き、そのsetupメソッドの中で、エディタが渡してくるコンテキストにコンポーネントとシステムを登録します。Cシンボルとしてエクスポートされローダーが見つけられるcreateRealityComposerProPlugin()関数が、そのプラグインを返します。プラグインのスキームをビルドし、プロジェクトを開き、信頼のプロンプトを承認すると、カスタムコンポーネントがインスペクタに現れます。アーティストが水位スライダーをドラッグすると表面が反応します。あなたのSwiftシステムがエディタ内で動いているからです。4 Xcodeのデバッガをアタッチして、プラグインコード内でブレークポイントに到達させることさえできます。このセッションの率直な余談は心に留めておく価値があります。Script Graphとコードは似たことをしますが、コードに手を伸ばす本当の理由は、大きなScript Graphは保守が難しくなること、そしてコードはScript GraphにはできないApple API(SwiftUIもその一つ)を呼び出せることにあります。4

プラグインの及ぶ範囲は、3つのエディタシステムに達します。カスタムコンポーネントとシステムが基本ケースです。カスタムアニメーションアクションはEntityAction(およびCodable)を実装し、編集可能なパラメータを伴ってシーケンサーにドラッグします。そして@Scriptableマクロは、コンポーネントを、登録するスキーマへと展開し、デザイナーがそれをScript Graphノードに直接配線できるようにします。4 同じカスタムデータに、コードから、タイムラインから、そしてビジュアルスクリプティングのレイヤーから、同時に到達できるのです。

コードなしで挙動を構築するノードグラフ

セッション281がコードの物語なら、セッション393はその鏡像です。コードを使わず、エディタのビジュアルグラフだけで、デザイナーがどこまで到達できるか。2026年の答えは、インタラクティブなキャラクターのほぼ全行程まで、です。

Watch on Apple Developer ↗
Vincentが錬金術師に一連の動作を与えます。Animation Graphのステートマシン、Behavior Tree、Script Graphのインタラクティビティ、ナビゲーションメッシュ、そしてCompute Graphの煙のエフェクトです。

この構築は4種類のグラフを積み重ねます。Animation Graphは、ルートにFinal Poseノードを持つノードベースのランタイムエディタです。VincentはState Machineを配置し、条件付き遷移を持つIdleとWalkの状態を定義し、実行時に切り替えられる単一のisWalkingブール値でブレンドを駆動します。Behavior Treeは自律的な動作をオーサリングします。Sequenceコンポジットが、Rotate To Face、Move To、Waitの各ノードを順に実行し、Parameter Setterノードが移動の前後でisWalkingを切り替え、PreconditionがreadyToBrewフラグがtrueになるまで錬金術師を待たせます。Script Graphはイベント駆動の接着剤を提供します。On TapノードがreadyToBrewを設定し、タップでキャラクターを大釜へ送るのです。5 チームの速度にとって重要な洞察はこうです。グラフはビジュアルでイベント駆動なので、チームの誰もがビルドサイクルなしで、エディタ内で直接、挙動を構築しテストできます。5

このセッションは、セッション279がコード側から説明した2つの要素を埋め合わせます。Navigation Meshコンポーネントは、あのAPIに対応するオーサリング側の存在です。Shapesのバウンディングボックスがサンプリングするジオメトリを選び、Off-Mesh Connectionsが離れた領域を結び、セルサイズなどのGeneration Parametersがサンプリング解像度を制御します。一度オーサリングすれば、そのメッシュはBehavior Tree、Animation Graph、あるいはカスタムのSwiftシステムに供給されます。5 Compute Graphは、Metalを基盤とするGPUパーティクルシミュレーションを4つのフェーズ(Emitter、Initialize、Simulate、Output)にわたって構築し、大釜の煙は負の重力を用いて蒸気が上へ漂うようにしています。Shader GraphはRealityKit PBR Surface 2(シーンとサブサーフェススキャタリング)、専用の髪用サーフェス、そして編集可能なポータルサーフェスとジオメトリを追加しました。5

構造化された3Dモデルでの共同作業

最後のセッションはその成果です。エンジンとエディタがこれほど高性能になったとき、何が作れるのか。visionOS 27は、共同デザインレビューのためのツールキットを出荷します。SharePlayの通話に参加する人々が、同じ複雑なアセンブリを操作し、それを開き、断面化し、部品を引き抜きます。同じ空間で、同じ忠実度で、同時に。6

Watch on Apple Developer ↗
Billがデザインレビューアプリを構築します。階層を意識した操作、インタラクティブなクリッピング平面、そして体積加重分散によって駆動される自動展開です。

その土台は構造であり、このセッションの最も鋭い指摘は、階層のないジオメトリはコードにとって無用だということです。ルートにフラット化されたエンジンブロックは問題なくレンダリングされますが、掴んだりアニメーションさせたりするものを何も提供しません。ピストンはInteriorPart_47のような名前のフラットなリストに埋もれているのです。ネストされた階層は各部品を見つけ出せるようにし、それが他のすべての前提条件になります。6 その階層の上で、操作とは配置の決定です。ルートにManipulationComponentを置けば、アセンブリ全体が1つのオブジェクトとして動きます。それを子へと下ろせば(InputTargetComponentCollisionComponentを併せ、releaseBehavior.stayに設定して)、各部品が個別に掴めるようになり、残りはその場に留まります。Billの言い回しは、5つのセッションの中でECSの哲学を最も端的に言い表したものです。「見るもの」から「探るもの」への転換は、ひとえにコンポーネントがツリーのどこに存在するかによって起きるのです。6

クリッピングは、まさに新しいRealityKitの機能です。ClippingComponentは、軸に沿ったboundsの外側のジオメトリを毎フレーム破棄し(shouldClipChildrenはデフォルトでfalse、よくある落とし穴です。shouldClipSelfはデフォルトでtrue)、外側と同じくらい簡単に内部を露わにします。6 インタラクションのモデルは意図的に小さく作られています。バウンディングボックスの6つの面が6つのドラッグ可能な平面となり、それぞれが1つのスカラーを制御します。それらのドラッグを自然に感じさせることが、このセッションの数学のレッスンです。ドラッグの差分をワールドからモデルのフレームへ変換し、次に平面の法線へ投影することで、掴んだ軸に沿ってのみboundsが変化します。自動展開も同じ統計的な誠実さを用い、各軸に沿った体積加重位置分散を計算し、最も分散の大きい軸に沿ってサブアセンブリを扇状に広げます。6 グラフィックスの講演にしては珍しいBillの締めくくりの教訓はこうです。分散、ベクトル投影、座標フレーム変換に慣れ親しんでおきましょう。なぜなら、努力を感じさせないインタラクションは、その数学の上に築かれているからです。

どこから始めるか

すべてを一度に採用するのは間違った動きです。残りの作業を解き放つものから順に進めましょう。

  1. まず独立したエディタをダウンロードする。 Reality Composer Pro 3がXcodeのバンドルを離れたことは、他のあらゆるワークフローが依存する変更です。シーンを再インポートして、シミュレーションタブ、プロトタイプ、ライトマッププレビューを手元に揃えましょう。3
  2. 機能の前に反復のループを手に入れる。 シミュレーションタブをドッキングしてシーンが動いている間にオーサリングし、次にデバイス上のライブプレビューをVision Proへ接続します。平らなMacの画面で物理空間ライティングやソフトシャドウを判断すると、誤った印象を受けます。32
  3. RealityKitの機能には、書き直しではなくコンポーネントとして手を伸ばす。 ソフトシャドウ、ベイクされたライトマップ、スポットライト上のSurroundingsLightは、それぞれが1つのコンポーネントかプロパティであり、それぞれが不釣り合いなほどのリアリズムをもたらします。2
  4. アーティストがあなたのデータを必要とするときにのみXcodeプラグインを追加する。 RealityComposerProPluginの登録は、デザイナーがカスタムコンポーネントをライブで調整したいと思った瞬間にその価値を発揮します。それまでは、組み込みコンポーネントとScript Graphが多くの領域をカバーします。45
  5. デザインレビューは階層の上に築く。 構造化モデルのツールキットは、適切にネストされたアセットの上でのみ機能します。だからインタラクションのコードを書く前に階層を整えましょう。6

5つのセッションを貫く筋はこうです。今年の空間パイプラインは、構築よりも構成に報いるのです。リアリズムはアタッチするコンポーネントであり、反復はドッキングするタブであり、共同作業は尊重する階層です。

FAQ

Reality Composer Pro 3はまだXcodeの一部ですか?

いいえ。Reality Composer Pro 3は今や、開発者サイトからダウンロードしてアプリケーションフォルダから起動する独立したアプリです。アプリのビルドとプラグインの読み込みのためにXcodeプロジェクトとリンクはしますが、エディタは独立して動作します。3

2026年のRealityKitでソフトシャドウはどのように機能しますか?

影のlightSizeプロパティは光の直径(メートル単位)です。デフォルトの0では硬い影になり、より大きな値(セッションでは0.7を使用)が半影を広げます。qualityはmediumかhighに設定しましょう。lowでは光のサイズに関係なく硬い影になるためで、コストを管理しつつ通常の視聴距離ではmediumが推奨されます。2

Reality Composer Proのエディタ内で自分のSwiftコードを実行できますか?

はい。RealityComposerProPluginプロトコルに準拠するプラグインを作り、そのsetupメソッドでコンポーネントとシステムを登録します。エディタはそのコードをライブで実行するので、アーティストがプロパティを調整するとアプリを再ビルドせずにシステムの反応を確認できます。Xcodeのデバッガをアタッチして、プラグインコード内のブレークポイントに到達させることもできます。この機能は2026年内に出荷予定です。4

visionOS 27の新しいクリッピング機能とは何ですか?

ClippingComponentは、軸に沿ったバウンディングボックス(bounds)の外側のジオメトリを毎フレーム破棄し、複雑なアセンブリの内部を透かして見せます。shouldClipChildrenはデフォルトでfalseなので、trueに設定するまでは親アセンブリが子をクリップしない点に注意してください。6

キャラクターをアニメーションさせてタップに反応させるのにコードを書く必要はありますか?

いいえ。Reality Composer Pro 3のビジュアルグラフがそれをカバーします。Animation Graphのステートマシンがアイドルと歩行のアニメーションをブレンドし、Behavior Treeが動作を順序付けてブール値で制御し、Script GraphがOn Tapノードを配線してそのブール値を切り替えます。すべてビルドサイクルなしでオーサリングされます。5

Apple Ecosystemのクラスタ全体は次の通りです。RealityKitがなぜ3DにおけるSwiftUIではなくエンティティ・コンポーネント・システムなのかを説明する空間メンタルモデル、シーンと没入スタイルを構造化するためのvisionOSの空間パターン、これらのツールを取り巻くプラットフォーム機能についてのvisionOS 27の新機能、そしてRealityKitがvisionOS、iOS、iPadOS、macOS、tvOSにどう展開されるかを示すAppleプラットフォームマトリックスです。ハブはApple Ecosystemシリーズにあります。AIエージェントを伴うiOSのより広い文脈については、iOSエージェント開発ガイドをご覧ください。

参考文献


  1. Apple Developer: Reality Composer Pro. RealityKitアプリ向けに3Dコンテンツを構成、編集、プレビューするためのAppleのオーサリングツール。独立アプリとしての配布とアプリケーションフォルダからの起動は、WWDC26のセッション280で述べられています。 

  2. Apple、WWDC26セッション279、「Explore advances in RealityKit」。developer.apple.com/videos/play/wwdc2026/279. ソフトシャドウとlightSize、ライトマップ、プロジェクティブテクスチャ、物理空間ライティングとSurroundingsLightコンポーネント、クロスシミュレーション、ナビゲーションメッシュ(NavigationComponent/NavigationController)、3Dガウシアンスプラット(GaussianSplatComponent)、そしてReverbMeshResourceによるレイトレースのリバーブを扱っています。RealityKitフレームワークのリファレンス:developer.apple.com/documentation/realitykit

  3. Apple、WWDC26セッション280、「Iterate your spatial scenes faster with Reality Composer Pro 3」。developer.apple.com/videos/play/wwdc2026/280. 独立アプリ、エンティティ/コンポーネントモデル、ドック可能なシミュレーションタブ、オーバーライド可能なプロトタイプとインスタンス、デバイス上でのライブプレビュー、ベイクされたライトマップ(間接照明、アンビエントオクルージョン、ビューティ)、そしてReality Composer Pro Assistantを扱っています。 

  4. Apple、WWDC26セッション281、「Extend Reality Composer Pro 3 functionality with Xcode」。developer.apple.com/videos/play/wwdc2026/281. RealityComposerProPluginプロトコルと登録、エディタ内で実行されるカスタムコンポーネントとシステム、git/JSONのマージワークフローとReality Fileのエクスポート、EntityActionによるカスタムシーケンサーアクション、そして@ScriptableマクロでコンポーネントをScript Graphに公開することを扱っています。 

  5. Apple、WWDC26セッション393、「Supercharge your spatial workflows with Reality Composer Pro 3」。developer.apple.com/videos/play/wwdc2026/393. Animation Graphのステートマシン、Behavior Tree(Sequence/Selector/Parallelのコンポジット、アクションノード、プリコンディション)、イベント駆動のScript Graph、Navigation Meshコンポーネント、Compute GraphのGPUパーティクル(Emitter/Initialize/Simulate/Output)、そしてRealityKit PBR Surface 2と髪用サーフェスを含むShader Graphの強化を扱っています。 

  6. Apple、WWDC26セッション284、「Collaborate on structured 3D models in visionOS」。developer.apple.com/videos/play/wwdc2026/284. インタラクティビティの前提条件としてのアセット階層、ManipulationComponentの配置(InputTargetComponentCollisionComponentreleaseBehaviorを伴う)、visionOS 27の新しいClippingComponentboundsshouldClipChildrenshouldClipSelf)、クリッピング平面のドラッグのための座標フレーム変換とベクトル投影、そして体積加重位置分散による自動展開を扱っています。 

関連記事

visionOS 27の新機能 — 空間開発者向け完全ガイド

visionOS 27では、MacからのSpatial Preview、PCからのFoveated Streaming、Safariの没入型環境、メートル空間でのオブジェクトトラッキング、そしてRealityKitが追加されました。

2 分で読める

RealityKitと空間的メンタルモデル

RealityKitはエンティティ・コンポーネント・システムであり、3D版のSwiftUIではありません。アンカーは現実空間にエンティティを配置します。ウィンドウとは異なるモデルの5つの側面を解説します。

2 分で読める

The Robots Are Taking Exams in My Search Console

First-party GSC data: 91% of 3.8M impressions fail a human-query filter. Exam questions, pasted errors, and agent sweeps…

10 分で読める