Choose your operating system:
Windows
macOS
Linux
This page outlines the various Command Line Arguments and Console Variables you can use to determine what settings are used when rendering out your Sequences.
If you have not launched Unreal Engine 4 (UE4) Editor from a command line, see the
Please see the Rendering Out Cinematic Movies page if you would like to learn about rendering out movies within Unreal Engine 4 (UE4).
Required Commands
These commands are required to render out an image sequence correctly. Include these anytime you are rendering from a command line:
Argument |
Description |
---|---|
-MovieSceneCaptureType="/Script/MovieSceneCapture.AutomatedLevelSequenceCapture" |
Used to define many of the command line arguments listed on this page. |
-LevelSequence="/Game/PathToSequence/SequenceName" |
Tells the Editor which sequence to play. |
-NoLoadingScreen |
The game instance of the Editor will fail to render properly without this. |
Control Commands
These are some of the recommended command line arguments to give you full control over image quality, rendering parameters, and file naming/type.
The Usage column includes recommendations on when to use the command line argument:
Argument |
Description |
Notes |
Usage |
||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
-ResX=#### |
Set horizontal resolution for the game window. |
Eg: -ResX=1920 |
Lower res for previews, Higher for final. |
||||||||||||||||
-ResY=#### |
Set vertical resolution for the game window. |
Eg: -ResY=1080 |
Lower res for previews, Higher for final. |
||||||||||||||||
-ForceRes |
Forces the window to the specified resolution, even when larger than the screen resolution. |
||||||||||||||||||
-VSync |
Activate the VSYNC via command line. |
High Perf cost, but doesn't hurt us since we aren't rendering in real-time. |
Final Renders. |
||||||||||||||||
-NoVSync |
Deactivate the VSYNC via command line. |
See the "Notes" entry in the -VSync row (located above this cell). |
Preview Renders. |
||||||||||||||||
-MovieFrameRate=30 |
Sets the frame rate of the output. |
Overrides the default of 30fps. |
Depends on the needs of your cinematic (for example: rhythmic movement suffers when using a low FPS. This could be unwanted even in Previews). |
||||||||||||||||
-NoTextureStreaming |
Disables texture streaming. |
Will take longer to render, but worth it for final renders. |
Final Renders. |
||||||||||||||||
-MovieFolder="PATH" |
Destination folder for rendered images. |
Defaults to Project/Saved/Screenshots. |
Recommended when batch rendering. Otherwise all image files dump into the same folder. |
||||||||||||||||
-MovieFormat=ASD |
Media format. JPG, BMP, PNG, or Video. |
Defaults to PNG. |
|||||||||||||||||
-MovieQuality=## |
Sets the compression quality. |
Expressed in a percentage, defaults to 75. |
|||||||||||||||||
-MovieName="Example.{frame}" |
Sets the naming format for the output files. |
|
Definitely recommended for batch rendering. Gives the files a unique name corresponding to the map name, render pass, etc. |
||||||||||||||||
-MovieCinematicMode=Yes/No |
Enables Cinematic Mode. |
Hides Player Character and disables Player Character Movement. Also disables the HUD. |
Usually a good idea to enable this all the time. |
||||||||||||||||
-MovieWarmUpFrames=## |
Number of frames to run the scene before playing the sequence. This will not play out in real-time. |
Default of 0 frames. This will also run the frames before the beginning of your sequence's play range. |
Useful when you have Particle Systems or physics that need to simulate before you begin recording. |
||||||||||||||||
-MovieDelayBeforeWarmUp=# |
Number of seconds before the Warm-up Begins. Runs in real-time. |
If you need to do anything with your Pawn before the sequence starts. |
|||||||||||||||||
-MovieStartFrame=### |
Overrides the start frame of your sequence. |
Defaults to the in and out markers in Sequencer. |
|||||||||||||||||
-MovieEndFrame=### |
Overrides the end frame of your sequence. |
Defaults to the in and out markers in Sequencer. |
|||||||||||||||||
-NoScreenMessages |
Hides on-screen messages like "Rebuild Lighting" or "Print String" outputs. |
Custom Render Passes
Using these commands requires -MovieFormat=CustomRenderPasses
and {material}
in the -MovieName
.
Argument |
Description |
Notes |
---|---|---|
-CustomRenderPasses="RenderPassName" |
Sets the custom render Pass. |
Options are (exclude parenthesis): AmbientOcclusion, BaseColor, CustomDepth, CustomDepthWorldUnits, CustomStencil, FinalImage, MaterialAO (Ambient Occlusion), Metallic, Opacity, PostTonemapHDRColor, Roughness, SceneColor, SceneDepth, SceneDepthWorldUnits, SeparateTranslucencyA (Alpha), SeparateTranslucencyRGB, ShadingModel, Specular, SubsurfaceColor, WorldNormal. |
-CaptureFramesInHDR |
Renders with HDR in the .exr format. |
|
-HDRCompressionQuality=## |
Compression Quality for HDR Frames (0 for no compression, 1 for default compression which can be slow). This is dependent on -CaptureFramesInHDR. |
|
-CaptureGamut="HCGM_Name" |
The color gamut to use when storing HDR captured data. This is dependent on -CaptureFramesInHDR. |
(See Capture Gamut Descriptions below) HCGM_Rec709, HCGM_P3DCI, HCGM_Rec2020, HCGM_ACES, HCGM_ACEScg, HCGM_MAX. |
-PostProcessingMaterial="MaterialPath" |
The Custom Post Processing Material to use for rendering. |
Format looks like: "Material'/Engine/BufferVisualization/SceneDepth.SceneDepth'" An easy way to get that path is to right-click the Material in the Content Browser and select Copy Reference. |
Capture Gamut Descriptions
HCGM_Rec709 - Rec. 709 / sRGB
HCGM_P3DCI - P3 D65
HCGM_Rec2020 - Rec. 2020
HCGM_ACES - ACES
HCGM_ACEScg - ACEScg
Console Variables
The following console variables can be useful for determining the quality of your renders and can be added your DefaultEngine.ini
in your Game/Config folder of your project.
The values used below are the recommended values for highest quality.
Variable |
Description |
||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
r.ForceLOD=0 |
Forces all LODs to 0, whereas -1 turns it off. |
||||||||||||
r.MotionBlurQuality=4 |
Defines the motion blur method (adjust for quality or performance): 0 is off, 1 is low, 2 is medium, 3 is high (default), 4 is very high. |
||||||||||||
r.MotionBlurSeparable=1 |
Adds a second motion blur pass that smooths noise for a higher quality blur. 0 is off, 1 is on. |
||||||||||||
r.DepthOfFieldQuality=4 |
Allows adjusting of the Depth of Field quality. Currently only fully affects BokehDOF. GaussianDOF is either 0 for off, otherwise on.
|
||||||||||||
r.HLOD=0 |
Single argument: 0 or 1 to Disable/Enable HLOD System. Multiple arguments: force X where X is the HLOD level that should be forced into view. |
||||||||||||
r.SSR.Quality=4 |
Whether to use screen space reflections and at what quality setting. Limits the setting in the post process settings which has a different scale. Costs performance, adds more visual realism but the technique has limits.
|
||||||||||||
r.ViewDistanceScale=30 |
Controls the view distance scale. A primitive's MaxDrawDistance is scaled by this value. Higher values will increase view distance but at a performance cost. |
||||||||||||
r.MipMapLODBias=-1 |
Apply additional mip map bias for all 2D textures, range of -15.0 to 15.0. |
||||||||||||
r.Shadow.MaxResolution=4096 |
Max square dimensions (in texels) allowed for rendering shadow depths. Range 4 to hardware limit. Higher = better quality shadows but at a performance cost. |
Examples
In this section, we provide a few sample command line arguments for different situations. In the examples provided, we consider the following the specifics related to our project.
Build Location = C:\Program Files (x86)\Epic Games\4.##\Engine\Binaries\Win64\UE4Editor.exe
Project Location = D:\Unreal Projects\SequencerTestBed\SequencerTestBed.uproject
Map Name = TestRender_Map.umap
Sequence Name = Test_Render_SQ
Preview Render
Here is an example for a 16:9 preview render at 30fps with a resolution of 1280x720 in the .jpg file format.
"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
Final Renders
In this example, we use the following for our final, full quality renders aiming for 16:9 at 30fps, 3840x2160 resolution, in the .bmp file format.
"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=3840 -resy=2160 -forceres -MovieFormat=BMP -MovieQuality=100 -notexturestreaming -MovieCinematicMode=yes -MovieWarmUpFrames=60