プロファイル ビューポート 2.0 レンダリング イベント
内での実行に関する内のイベントを検索するには、プリフィックス「Vp2」を検索します。プリフィックス Vp2 に加え、イベント ラベルの残りが、計測されるイベントに関する追加のコンテキストを提供します。
重要なイベントのリストは、カテゴリに対して、いくつかの論理的なグループに分けることができます。シーンの処理では、レンダリングの準備に更新フェーズが、実際のレンダリングにレンダリング フェーズが必要です。また、更新またはレンダリング フェーズ中に発生するリソース管理イベントがある場合があります。
リソース イベント
レンダー ターゲット(シーンがレンダリングされる場所)の管理に関するイベントを以下に示します。
これには、API (MRenderTarget)によって割り当てられたカスタムのオフスクリーン ターゲットの管理に関するイベントも含まれていることに注意してください。オンスクリーン ターゲットは MRenderTargets ではありません。
- Vp2AcquireOffScreenTarget: レンダリング先のオフスクリーン バッファを取得
- Vp2AcquireOnScreenTarget: オンスクリーン バッファを取得
- Vp2CloneOffScreenTarget: オフスクリーン バッファのコピーを作成
- Vp2ReleaseTarget: バッファ プールにオフスクリーン バッファをリリース
- Vp2ResizeTarget: ターゲットをサイズを変更。再割り当てを伴う場合がある
- Vp2MapToSystemMemory: ハードウェア ターゲットをシステム(CPU)ラスターにマップ
- Vp2CacheSystemRaster: ターゲットの内容をシステム ラスターにコピー
- Vp2SaveCacheToDisk: システム ラスターをディスク ファイルに保存
- Vp2CopyRaster: システム ラスターのコピーを作成
- Vp2BlitTargetToImage: ターゲットをシステム イメージに転送
- Vp2BlitTargetToGL: ターゲットを OpenGL コンテキストに転送
- Vp2ReleaseTargetToCache: バッファのキャッシュからターゲットをリリース
- Vp2BlitDepthTargetToBuffer: 深度ターゲットをシステム イメージに転送
テクスチャの管理に関するイベントを以下に示します。これには、API (MTextureManager/MTexture)によって取得されたテクスチャに関するイベントも含まれていることに注意してください。
- Vp2AcquireFileTexture: ディスク上のファイルからテクスチャを取得
- Vp2AcquireDataTexture: CPU データからテクスチャを取得
- Vp2SaveTexture: ディスクにテクスチャを保存
- Vp2RawTextureData: GPU テクスチャ データを CPU データにコピー
- Vp2UpdateTexture: GPU テクスチャを同じ位置で更新
更新フェーズ
以下は、主な更新イベントのブレイクダウンです。これらは機能領域および/またはスコープごとに一覧表示されています。
- シーン レベル: Vp2UpdateScene がメインのシーン レベルの更新イベント
- 評価レベル:
- Vp2UpdateGeometry: ジオメトリ シェイプの DG 評価
- Vp2UpdateDagObject: DAG オブジェクトの DG 評価
- Vp2TranslateGeometry: DG ジオメトリ データをレンダリング可能な形式に変換し、欠落しているジオメトリ ストリーム(サーフェス法線の生成など)を追加します。
- Vp2UpdateGeometryBuffer: ジオメトリ バッファの更新
- シェーダ レベル:
- Vp2ShaderDoDG: シェーダの DG 評価
- Vp2ShaderItemCompileShader: シェーダのコンパイル
- Vp2ConstructFragmentGraph: フラグメント グラフからのシェーダ コンストラクション
- Vp2ShaderWrite: シェーダ パラメータの更新
- Vp2AssignShaderInstance: レンダー項目にシェーダ インスタンスを割り当て
上記のイベントは通常、描画可能 UI またはレンダー項目が処理される前に発生します。描画可能 UI リストとレンダー リストに関連付けられたメインのイベントは次のとおりです。
- Vp2UpdateUI: 描画可能 UI を作成します。これは更新ごとに行われます。
- Vp2BuildRenderLists: レンダリングする前の、レンダー項目の最終分類とフィルタリングです。入力として描画可能 UI とノード評価によって作成されたレンダー項目をとります。ogs コマンドでトレーシングを有効にした場合は、リストの数を確認するためのトレース ラベルは、レンダー リストの作成と呼ばれます。
- Vp2ClearRenderLists: 作成されたレンダー リストは、必要に応じて、このイベント中にフラッシュされます。
レンダリング
シーン レンダーを表すイベントには、Vp2SceneRender というラベルが付けられます。
イベント リストは、「高」レベルと「低」レベルの 2 つに分割できます。「高」レベルは、「低」レベル パスの機能グループであり、描画可能 UI またはレンダー項目のレンダリングでもあります。
高レベルのイベント
このイベントの分類は、レンダリングの出力先と、使用されるレンダリング パイプライン ロジックに基づいています。
内部レンダリング イベント
- Vp2DrawOverlay: オーバーレイ描画を表すイベント(2D マーキー描画ツールなど)
- Vp2DrawUVEditor: に描画を表すイベント
- Vp2BuildShadowMap: シャドウ マップの更新を表すイベント
- Vp2Draw3dBeautyPass: 色/「ビューティ」パスのレンダリングを表すイベント
- オーバーレイの一部として、、またはビューティ パスの前後に発生する任意の描画可能 UI レンダリングには、次の形式のイベント ラベルがあります。
- Vp2<UI list name>: <UI list name> は下の「低レベルのイベント」セクションで指定された名前です。
プラグイン レンダリング イベント
プラグイン レンダラ(MPxRenderer)を使用している場合、イメージをレンダーするためのビューポート 2.0 の処理は、Vp2DrawPluginRenderer イベントで表されます。
レンダー オーバーライド(MRenderOverride)を使用している場合、イメージをレンダーするためのビューポート 2.0 の処理は、Vp2OverrideRenderer イベントで表されます。イベントは、次のサブイベントに分類されます。
- Vp2ExecuteRenderOverride: レンダー オーバーライドを実行します。プラグイン セットアップを除外します。
- Vp2UpdateOverrideOperation: 操作ごとに必要なすべてのパラメータを更新します。操作イベントのラベルは次のとおりです。
- Vp2ClearOperation: バックグラウンドをクリア
- Vp2SceneOperation: 3D シーン レンダー
- Vp2QuadOperation: 2D クアッド レンダー
- Vp2UserOperation: ユーザ操作
- Vp2HUDOperation: HUD 操作
- Vp2PresentationOperation: プレゼンテーションの操作
- ラベル Vp2DrawOperation は、イベントが上記の操作のレンダリング部分を計測していることを示します。このラベルは、Vp2Draw3dBeautyPass などの内部レンダリング イベント ラベルの代わりに使用されます。
低レベルのイベント
- 「パス」イベントのレンダー:
- メインの 2D または 3D のレンダリング パス内から、より粒度の細かいイベントはラベルとしてパス セマンティック名を使用します。たとえば、「colorPass」セマンティックは、カラー
パスの処理を表示するために使用されます。
注:これらのセマンティック名は、
MPassContext により API で公開されているものと一致します。たとえば、GLSL と DX11 ハードウェア シェーダ プラグインはこれらの名前を使用します。
- UI レンダー リストをレンダリングするイベントには、次のラベルがあります。
- ビューティ パス前のレンダー:
- “Pre-Opaque UI”
- “Pre-Transparent UI"
- ビューティ パス後のレンダー:
- “Post Render UI"
- "Post Alpha UI"
- "X-Ray UI”: X 線描画(ジョイントの X 線表示など)
- シーン内の他の要素の上に描画する必要があるレンダリング:
- "On-Top UI": 3D 描画
- "Orthographic On-Top UI": 2D 描画
- "Manipulator": マニピュレータ描画(2D または 3D)
- オーバーレイ描画:
- "2D Overlay UI"
- "3D Overlay UI"
- HUD 描画: