WindowCapture2D

Table of Contents

Unreal Engine 用リアルタイムウィンドウキャプチャプラグイン 外部アプリケーションのウィンドウを Unreal Engine プロジェクト内で直接表示できます。

このプラグインの動作を確認するために、このページから無料のテスターアプリをダウンロードできます。

概要

WindowCapture2D は外部アプリケーションのウィンドウをリアルタイムでキャプチャし、Unreal Engine でテクスチャとして表示するプラグインです。

このプラグインを使用することで、デスクトップアプリケーション、ウェブブラウザ、その他のソフトウェアをゲーム内テクスチャとしてシームレスに統合できます。

VR や AR アプリケーション内で他のアプリケーションを表示したり、シミュレーション内で追加コンテンツを表示したり、UE プロジェクトに革新的な機能を追加できます。

主要な機能

  • Windows OS の任意のウィンドウのリアルタイムキャプチャ(Mac と Linux は非対応)
  • モニターを指定したデスクトップ単位でのキャプチャ(v2.1.0以降で利用可能)
  • キャプチャ画像の任意領域トリミング(v2.1.0以降で利用可能)
  • キャプチャしたウィンドウを Unreal Engine でテクスチャとして表示
  • ウィンドウタイトルによる柔軟な対象選択(完全一致、部分一致、カスタマイズ可能なルールをサポート)
  • 高性能キャプチャシステム
  • C++ と Blueprint の両方で完全機能サポート

Unreal Engine 対応バージョン

WindowCapture2D のプラグインバージョンごとの対応状況は以下のとおりです。

プラグインバージョン対応UEバージョン
v2.1.0UE5.5 - 5.8

デモ動画

以下の動画では WindowCapture2D の基本機能と使用方法を紹介しています:

使用例

WindowCapture2D の典型的な使用ケース:

  • シミュレーターやトレーニングアプリケーションでの実際のソフトウェアインターフェース表示
  • ゲーム内ブラウザの実装
  • 仮想デスクトップ環境の作成
  • インタラクティブマルチメディア展示の開発

使用方法

キャプチャした画像を3D空間の平面に出力

Content Browser の Settings メニューを開き、「Show Plugin Content」をチェックした後、画面左側のツリービューから「WindowCapture2D Content」を選択できるようになります。「PlaneActor」を選択してください。

WindowCapturePlane Actor を選択して、レベルに配置します。

ウィンドウをキャプチャする方法

配置した WindowCapturePlane の Properties でキャプチャ対象ウィンドウを設定します。

「Capture Target Title」にキャプチャしたいウィンドウのタイトルを入力します。

「Title Matching Window Search」では、入力した文字列とウィンドウタイトルの照合方法を選択できます:

  • PerfectMatch: ウィンドウタイトルと完全一致
  • ForwardMatch: ウィンドウタイトルが入力文字列で始まる
  • PartialMatch: ウィンドウタイトルに入力文字列が含まれる
  • BackwardMatch: ウィンドウタイトルが入力文字列で終わる
  • RegularExpression: 正規表現を使用してウィンドウタイトルを照合

「Frame Rate」でキャプチャ間隔を設定します。

Play を押すと、キャプチャした画像が WindowCapturePlane に表示されます。

デスクトップをキャプチャする方法

ウィンドウではなくデスクトップ全体をキャプチャしたい場合は、以下を設定します。

  1. CaptureTargetType を Desktop に設定する
  2. MonitorIndex にキャプチャしたいモニターのインデックス(0始まり)を入力する

キャプチャ画像をトリミングする方法

キャプチャした画像の一部だけを使いたい場合は、以下を設定します。

  1. bUseTrimming を有効にする
  2. TrimX, TrimY, TrimWidth, TrimHeight に切り出したい領域を設定する

キャプチャした画像をウィジェットに出力

ユーザーウィジェットの Blueprint を開き、WindowCaptureUMG を好きな場所に配置します。

配置した WindowCaptureUMG の Properties でキャプチャ対象ウィンドウを設定します。

設定項目は上記の WindowCapturePlane と同じです。

キャプチャした画像が出力されるテクスチャを直接扱う

以下の Blueprint を参考にして、キャプチャした画像を含むテクスチャを取得できます。

CaptureMachine オブジェクトを作成します。

CaptureMachine オブジェクトの Properties でウィンドウ情報を設定します。

CaptureMachine オブジェクトの Start メソッドを呼び出します。

ウィンドウがキャプチャされると「Change Texture」イベントが発火し、Texture2D オブジェクトを取得できます。

Note

キャプチャ中のウィンドウのサイズが変更されると、その都度新しいテクスチャが作成され、「Change Texture」イベントが呼び出されます。

注意事項・注意点

  • WindowCapture2D は Windows OS でのみ動作します。
  • 理論的には Windows 10 でも動作するはずですが、正式なサポートは Windows 11 のみです。
  • 4K や 5K などの高解像度ディスプレイで最大化されたウィンドウをキャプチャすると、CPU と GPU リソースが大幅に消費されます。
  • Windows 11 でも、キャプチャできないウィンドウが一部存在します。

FAQ

よくある質問はこちらで確認できます。

レビューをお寄せください

このプラグインをご利用いただきありがとうございます。Epic Games Fabストアでのレビューは、今後の開発の大きな励みになります。ぜひご感想をお聞かせください!

Fabストアでレビューを書く