導入
UE4は 動画出力のためのコマンドライン引数 というマニュアルページで、コマンドラインからSequenceを書き出す方法を載せてくれています。
マニュアルに書いてあるサンプルのコマンドを引用しますと、たとえばこちらは、サイズ・書き出しフォーマット指定・クオリティなどを引数で渡して書き出し方法を指定しています。
"C:\Program Files (x86)\Epic Games\4.##\Engine\Binaries\Win64\UE4Editor.exe" "D:\Unreal Projects\SequencerTestBed\SequencerTestBed.uproject" /Game/TestRender/TestRender_Map -game -MovieSceneCaptureType="/Script/MovieSceneCapture.AutomatedLevelSequenceCapture" -LevelSequence="/Game/Test_Render/Test_Render_SQ" -MovieFrameRate=30 -noloadingscreen -resx=1280 -resy=720 -MovieFormat=JPG -MovieQuality=75
引数ごとの説明を読むと横幅は -ResX
で、縦幅は -ResY
で指定すると書いてあったので -ResX=2048 -ResY=2048
のように画像サイズを指定した引数を渡して書き出しを行ってみると、ディスプレイの最大サイズ?よりも大きいサイズで書き出すことができませんでした。
さきほどのサンプルだと -resx=1280 -resy=1280
と小文字になっていたので、実はマニュアルが間違えてたのかなと思い小文字バージョンでもやってみたのですが、先ほどと同じく、画像サイズが期待されたサイズにはなりませんでした。
解決策
-windowed
を引数で追加します。
コマンドライン引数 というマニュアルを見ると、「レンダリング」という項目があり、その中にWINDOWED:Window モードでゲームの実行を設定する。
と書かれています。動画出力のための~~のマニュアルにはwindowedのことは書かれていませんでしたが、どうやらこちらのマニュアルも参考にしてオプションを決めてあげる必要があるのかもしれないです。もしかすると、プロジェクト設定やエディタ環境設定周りの設定も関係してるかも??