2021/3/22エンジニア

    [UE4] スクリーンショットの撮影方法

    執筆: T.H.

    はじめに

    UE4 のスクリーンショット撮影には色々な方法があります。今回はその中からいくつかの方法とその違いをご紹介いたします。

    UE4 エディタ上のスクリーンショット撮影方法

    ショートカットキー『F9』を使用する

    ・準備

    準備は不要で、挙動は異なりますが、再生中かどうかに関わらずスクリーンショットを撮る事が出来ます。

    ・スクリーンショット出力先

    プロジェクトフォルダ内の『\Saved\Screenshots\Windows』に出力されます。(Windows の場合)

    ・スクリーンショットに含まれるもの

    再生中の場合はエディタ全体

    (ビューポート右上の UI という白文字はウィジェットで表示しています)

    再生中ではない場合はビューポート

    ※右上にある UI の文字は BeginPlay 時に追加しているため表示されておりません。

    ブループリントで ExecuteConsoleCommand の shot を使用する

    ・準備

    (例)レベルブループリントで特定のキーが押下された時に ExecuteConsoleCommand の Command shot が呼ばれるようにする。

    ・スクリーンショット出力

    プロジェクトフォルダ内の『\Saved\Screenshots\Windows』に出力されます。(Windows の場合)

    ・スクリーンショットに含まれるもの

    プレイ中のレベル (UI 無し)

    C++ で FScreenshotRequest の RequestScreenshot を使用する

    ・準備

    (例)まずC++ で MyBlueprintFunctionLibrary に下記関数を追加する。

    次にレベルブループリントで特定のキーが押下された時にExecuteConsoleCommand の Command shot が呼ばれるようにする。

    (FileName は出力ファイル名ですので、任意の名前にして下さい)

    ・スクリーンショット出力先

    ScreenshotWithFilename 関数で指定したフォルダ (今回は『\Saved\Screenshots』) に出力されます。

    ・スクリーンショットに含まれるもの

    IsShowUI を true にするとエディタ全体

    IsShowUI を false にするとプレイ中のレベル (UI 無し)

    パッケージ化後のスクリーンショット撮影方法

    ※プロジェクト設定→パッケージング→Project→BuildConfiguration が Shipping の場合は『①ショートカットキー『F9』を使用する』と『②ブループリントで ExecuteConsoleCommand の shot を使用する』は使用出来ません。

    (Development 等の場合は使用可能です)

    ①ショートカットキー『F9』を使用する

    UI 有り

    ②ブループリントで ExecuteConsoleCommand の shot を使用する

    UI 無し

    ③C++ で FScreenshotRequest の RequestScreenshot を使用する

    IsShowUI を true にすると UI 有り

    IsShowUI を false にすると UI 無し

    まとめ

    スクリーンショットは色々な方法で撮影出来ますが、Shipping でパッケージ化後には使えない、UI が含まれない、エディタ全体が撮影される等違いがあります。用途に応じた撮影方法をご検討ください。

    関連リンク