Movie Render Pipeline

Movie Render Pipeline

Choose your operating system:

Windows

macOS

Linux

On this page

Actions

Allocate New Shot Override Config

Allocate New Shot Override Config

Target is Movie Pipeline Executor Shot

Build New Process Command Line

Build New Process Command Line

Target is Movie Pipeline Setting

Build New Process Command Line Args

Build New Process Command Line Args

Target is Movie Pipeline Setting

Cancel All Jobs

Abort the currently executing job and skip all other jobs.

Target is Movie Pipeline Executor Base

Cancel Current Job

Abort the currently executing job.

Target is Movie Pipeline Executor Base

Connect Socket

Attempts to connect a socket to the specified host and port. This is a blocking call.

Target is Movie Pipeline Executor Base

Convert Manifest File to String

Loads the specified manifest file and converts it into an FString to be embedded with HTTP REST requests. Use in combination with SaveQueueToManifestFile.

Target is Movie Pipeline Editor Blueprint Library

Copy From

Copy this configuration from another existing configuration.

Target is Movie Pipeline Config Base

Create Job from Sequence

Create a job from a level sequence. Sets the map as the currently editor world, the author, the sequence and the job name as the sequence name on the new job. Returns the newly created job.

Target is Movie Pipeline Editor Blueprint Library

Disconnect Socket

  • Disconnects the socket (if currently connected.)

Target is Movie Pipeline Executor Base

Duplicate Sequence

Duplicates the specified sequence using a medium depth copy. Standard duplication will only duplicate the top level Sequence (since shots and sub-sequences are other standalone assets) so this function recursively duplicates the given sequence, shot and subsequence and then fixes up the references to point to newly duplicated sequences.

Use at your own risk. Some features may not work when duplicated (complex object binding arrangements, blueprint GetSequenceBinding nodes, etc.) but can be useful when wanting to create a bunch of variations with minor differences (such as swapping out an actor, track, etc.)

This does not duplicate any assets that the sequence points to outside of Shots/Subsequences.

Target is Movie Pipeline Blueprint Library

Ensure Job Has Default Settings

Ensure the job has the settings specified by the project settings added. If they're already added we don't modify the object so that we don't make it confused about whether or not you've modified the preset.

Target is Movie Pipeline Editor Blueprint Library

Execute

Execute the provided Queue. You are responsible for deciding how to handle each job in the queue and processing them. OnExecutorFinished should be called when all jobs are completed, which can report both success, warning, cancel, or error.

For C++ implementations override virtual void Execute_Implementation() const override For Python/BP implementations override @unreal.ufunction(override=True) def execute(self):

Target is Movie Pipeline Executor Base

Export Config to Asset

Export Config to Asset

Target is Movie Pipeline Editor Blueprint Library

Find or Add Setting by Class

Finds a setting of a particular type for this pipeline config, adding it if it doesn't already exist.

Target is Movie Pipeline Config Base

Find or Get Default Setting for Shot

Allows access to a setting of provided type for specific shot.

Target is Movie Pipeline Blueprint Library

Find Setting by Class

Find a setting of a particular type for this config.

Target is Movie Pipeline Config Base

Find Settings by Class

Find all settings of a particular type for this config.

Target is Movie Pipeline Config Base

Get Active Executor

Returns the active executor (if there is one). This can be used to subscribe to events on an already in-progress render. May be null.

Target is Movie Pipeline Queue Engine Subsystem

Get All Settings

Get All Settings

Target is Movie Pipeline Master Config

Get Completion Percentage

Gets the completion percent of the Pipeline in 0-1

Target is Movie Pipeline Blueprint Library

Get Configuration

Get Configuration

Target is Movie Pipeline Executor Job

Get Current Aperture

Get Current Aperture

Target is Movie Pipeline Blueprint Library

Get Current Executor Shot

Get Current Executor Shot

Target is Movie Pipeline Blueprint Library

Get Current Focal Length

Get Current Focal Length

Target is Movie Pipeline Blueprint Library

Get Current Focus Distance

Get Current Focus Distance

Target is Movie Pipeline Blueprint Library

Get Current Job

Get Current Job

Target is Movie Pipeline

Get Current Segment Name

Get Current Segment Name

Target is Movie Pipeline Blueprint Library

Get Current Segment State

Get Current Segment State

Target is Movie Pipeline Blueprint Library

Get Current Segment Work Metrics

Get Current Segment Work Metrics

Target is Movie Pipeline Blueprint Library

Get Current Sequence

Get Current Sequence

Target is Movie Pipeline Blueprint Library

Get Current Shot Frame Number

Get Current Shot Frame Number

Target is Movie Pipeline Blueprint Library

Get Current Shot Timecode

Get Current Shot Timecode

Target is Movie Pipeline Blueprint Library

Get Effective Frame Rate

Returns the frame rate override from the Master Configuration (if any) or the Sequence frame rate if no override is specified. This should be treated as the actual output framerate of the overall Pipeline.

Target is Movie Pipeline Master Config

Get Effective Output Resolution

In case of Overscan percentage being higher than 0 we render additional pixels. This function returns the resolution with overscan taken into account.

Target is Movie Pipeline Blueprint Library

Get Estimated Time Remaining

Get the estimated amount of time remaining for the current pipeline. Based on looking at the total amount of samples to render vs. how many have been completed so far. Inaccurate when Time Dilation is used, and gets more accurate over the course of the render.

Target is Movie Pipeline Blueprint Library

Get Initialization Time

Returns the time this movie pipeline was initialized at.

Target is Movie Pipeline

Get Job Author

Get Job Author

Target is Movie Pipeline Blueprint Library

Get Job Initialization Time

Get Job Initialization Time

Target is Movie Pipeline Blueprint Library

Get Job Name

Get Job Name

Target is Movie Pipeline Blueprint Library

Get Last Loaded World

~Python/Blueprint API

Target is Movie Pipeline Python Host Executor

Get Map Package Name

Get the package name for the map in this job. The level travel command requires the package path and not the asset path.

Target is Movie Pipeline Blueprint Library

Get Master Frame Number

Get Master Frame Number

Target is Movie Pipeline Blueprint Library

Get Master Timecode

Get Master Timecode

Target is Movie Pipeline Blueprint Library

Get Movie Pipeline Engine Changelist Label

Get a string to represent the Changelist Number for the burn in. This can be driven by a Modular Feature if you want to permanently replace it with different information.

Target is Movie Pipeline Blueprint Library

Get Overall Output Frames

Get Overall Output Frames

Target is Movie Pipeline Blueprint Library

Get Overall Segment Counts

Get Overall Segment Counts

Target is Movie Pipeline Blueprint Library

Get Pipeline Master Config

Get the Master Configuration used to render this shot. This contains the global settings for the shot, as well as per-shot configurations which can contain their own settings.

Target is Movie Pipeline

Get Pipeline State

Get the current state of the specified Pipeline. See EMovieRenderPipelineState for more detail about each state.

Target is Movie Pipeline Blueprint Library

Get Preset Origin

Get Preset Origin

Target is Movie Pipeline Executor Job

Get Preview Texture

Get Preview Texture

Target is Movie Pipeline

Get Queue

Returns the queue of Movie Pipelines that need to be rendered.

Target is Movie Pipeline Queue Engine Subsystem

Get Shot Override Configuration

Get Shot Override Configuration

Target is Movie Pipeline Executor Shot

Get Shot Override Preset Origin

Get Shot Override Preset Origin

Target is Movie Pipeline Executor Shot

Get Status Message

Get the current status message for this shot. May be an empty string.

For C++ implementations override virtual FString GetStatusMessage_Implementation() override For Python/BP implementations override @unreal.ufunction(override=True) def get_status_message(self): return ?

Target is Movie Pipeline Executor Shot

Get Status Progress

Get the current progress as last set by SetStatusProgress. 0 by default.

For C++ implementations override virtual float GetStatusProgress_Implementation() override For Python/BP implementations override @unreal.ufunction(override=True) def get_status_progress(self): return ?

Target is Movie Pipeline Executor Job

Get Transient Settings

Get Transient Settings

Target is Movie Pipeline Master Config

Get User Settings

Returns an array of all settings in this config that the user has added via the UI or via Scripting.

Target is Movie Pipeline Config Base

HTTPResponse Recieved Delegate

HTTPResponse Recieved Delegate: If an HTTP Request has been made and a response returned, the returned response will be broadcast on this event.

Initialize

Initialize the movie pipeline with the specified settings. This kicks off the rendering process.

Target is Movie Pipeline

Initialize Transient Settings

Initializes a single instance of every setting so that even non-user-configured settings have a chance to apply their default values. Does nothing if they're already instanced for this configuration.

Target is Movie Pipeline Master Config

Is Consumed

Gets whether or not the job has been marked as being consumed. A consumed job is not editable in the UI and should not be submitted for rendering as it is either already finished or already in progress.

For C++ implementations override virtual bool IsConsumed_Implementation() override For Python/BP implementations override @unreal.ufunction(override=True) def is_consumed(self): return ?

Target is Movie Pipeline Executor Job

Is Map Valid for Remote Render

Checks to see if any of the Jobs try to point to maps that wouldn't be valid on a remote render (ie: unsaved maps)

Target is Movie Pipeline Editor Blueprint Library

Is Rendering

Report the current state of the executor. This is used to know if we can call Execute again.

For C++ implementations override virtual bool IsRendering_Implementation() const override For Python/BP implementations override @unreal.ufunction(override=True) def is_rendering(self): return ?

Target is Movie Pipeline Executor Base

Is Shutdown Requested

Has RequestShutdown() been called?

Target is Movie Pipeline

Is Socket Connected

Returns true if the socket is currently connected, false otherwise. Call ConnectSocket to attempt a connection.

Target is Movie Pipeline Executor Base

Load Manifest File from String

Loads the specified manifest file and converts it into an UMoviePipelineQueue. Use in combination with SaveQueueToManifestFile.

Target is Movie Pipeline Blueprint Library

On Duplicated

Should be called to clear status and user data after duplication so that jobs stay unique and don't pick up ids or other unwanted behavior from the pareant job.

For C++ implementations override virtual bool OnDuplicated_Implementation() override For Python/BP implementations override @unreal.ufunction(override=True) def on_duplicated(self):

Target is Movie Pipeline Executor Job

On Executor Errored Delegate

On Executor Errored Delegate: Called when an individual job reports a warning/error. Jobs are considered fatal if the severity was bad enough to abort the job (missing sequence, write failure, etc.)

Exposed for Blueprints/Python. Called at the same time as the native one.

On Executor Errored Impl

On Executor Errored Impl

Target is Movie Pipeline Executor Base

On Executor Finished Delegate

On Executor Finished Delegate: Called when the Executor has finished all jobs. Reports success if no jobs had fatal errors. Subscribe to the error delegate for more information about any errors.

Exposed for Blueprints/Python. Called at the same time as the native one.

On Executor Finished Impl

This should be called when the Executor has finished executing all of the things it has been asked to execute. This should be called in the event of a failure as well, and passing in false for success to allow the caller to know failure. Errors should be broadcast on the error delegate, so this is just a handy way to know at the end without having to track it yourself.

Target is Movie Pipeline Executor Base

On Individual Job Finished Delegate

On Individual Job Finished Delegate

On Individual Job Work Finished Delegate

On Individual Job Work Finished Delegate: Called after each job is finished in the queue. Params struct contains an output of all files written.

On Individual Shot Work Finished Delegate

On Individual Shot Work Finished Delegate: Called after each shot is finished for a particular render. Params struct contains an output of files written for this shot. Only called if the UMoviePipeline is set up correctly, requires a flag in the output setting to be set.

On Movie Pipeline Finished Delegate

On Movie Pipeline Finished Delegate

On Movie Pipeline Finished Impl

This function should be called by the Executor when execution has finished (this should still be called in the event of an error)

Target is Movie Pipeline

On Movie Pipeline Shot Work Finished Delegate

On Movie Pipeline Shot Work Finished Delegate: Only called if IsFlushDiskWritesPerShot() is set! Called after each shot is finished and files have been flushed to disk. The returned data in the params struct will have only the per-shot metadata for the just finished shot. Use OnMoviePipelineFinished() if you need all ot the metadata.

On Movie Pipeline Work Finished Delegate

On Movie Pipeline Work Finished Delegate: Called when we have completely finished this pipeline. This means that all frames have been rendered, all files written to disk, and any post-finalize exports have finished. This Pipeline will call Shutdown() on itself before calling this delegate to ensure we've unregistered from all delegates and are no longer trying to do anything (even if we still exist).

The params struct in the return will have metadata about files written to disk for each shot.

Remove Setting

Removes the specific instance from our Setting list.

Target is Movie Pipeline Config Base

Request Shutdown

Request the movie pipeline to shut down at the next available time. The pipeline will attempt to abandon the current frame (such as if there are more temporal samples pending) but may be forced into finishing if there are spatial samples already submitted to the GPU. The shutdown flow will be run to ensure already completed work is written to disk. This is a non-blocking operation, use Shutdown() instead if you need to block until it is fully shut down.

Target is Movie Pipeline

Resolve Filename Format Arguments

Resolves the provided InFormatString by converting {format_strings} into settings provided by the master config.

Target is Movie Pipeline Blueprint Library

Resolve Version Number

If version number is manually specified by the Job, returns that. Otherwise search the Output Directory for the highest version already existing an increments it by one.

Target is Movie Pipeline Blueprint Library

Save Queue to Manifest File

Take the specified Queue, duplicate it and write it to disk in the ../Saved/MovieRenderPipeline/ folder. Returns the duplicated queue.

Target is Movie Pipeline Editor Blueprint Library

Send HTTPRequest

Sends a asynchronous HTTP request. Responses will be returned in the the OnHTTPResponseRecieved event.

Target is Movie Pipeline Executor Base

Send Socket Message

Sends a socket message if the socket is currently connected. Messages back will happen in the OnSocketMessageRecieved event.

Target is Movie Pipeline Executor Base

Set Configuration

Set Configuration

Target is Movie Pipeline Executor Job

Set Consumed

Set the job to be consumed. A consumed job is disabled in the UI and should not be submitted for rendering again. This allows jobs to be added to a queue, the queue submitted to a remote farm (consume the jobs) and then more jobs to be added and the second submission to the farm won't re-submit the already in-progress jobs.

Jobs can be unconsumed when the render finishes to re-enable editing.

For C++ implementations override virtual void SetConsumed_Implementation() override For Python/BP implementations override @unreal.ufunction(override=True) def set_consumed(self, isConsumed):

Target is Movie Pipeline Executor Job

Set Initialization Time

Override the time this movie pipeline was initialized at. This can be used for render farms to ensure that jobs on all machines use the same date/time instead of each calculating it locally.

Needs to be called after ::Initialize(...)

Target is Movie Pipeline

Set Job Index

Set the index of the given job

Target is Movie Pipeline Queue

Set Movie Pipeline Class

Specify which MoviePipeline class type should be created by this executor when processing jobs.

Target is Movie Pipeline Executor Base

Set Preset Origin

Set Preset Origin

Target is Movie Pipeline Executor Job

Set Shot Override Configuration

Set Shot Override Configuration

Target is Movie Pipeline Executor Shot

Set Shot Override Preset Origin

Set Shot Override Preset Origin

Target is Movie Pipeline Executor Shot

Set Status Message

Set the status of this job to the given value. This will be shown on the UI if progress is set to a value less than zero. If progress is > 0 then the progress bar will be shown on the UI instead. Progress and Status Message are cosmetic and dependent on the executor to update. Similar to the UMoviePipelineExecutor::SetStatusMessage function, but at a per-job level basis instead.

For C++ implementations override virtual void SetStatusMessage_Implementation() override For Python/BP implementations override @unreal.ufunction(override=True) def set_status_message(self, inStatus):

Target is Movie Pipeline Executor Job

Set Status Progress

Set the progress of this job to the given value. If a positive value is provided the UI will show the progress bar, while a negative value will make the UI show the status message instead. Progress and Status Message are cosmetic and dependent on the executor to update. Similar to the UMoviePipelineExecutor::SetStatusProgress function, but at a per-job level basis instead.

For C++ implementations override virtual void SetStatusProgress_Implementation() override For Python/BP implementations override @unreal.ufunction(override=True) def set_status_progress(self, inProgress):

Target is Movie Pipeline Executor Job

Should Render

Returns whether this should should be rendered

Target is Movie Pipeline Executor Shot

Shutdown

Abandons any future work on this Movie Pipeline and runs through the shutdown flow to ensure already completed work is written to disk. This is a blocking-operation and will not return until all outstanding work has been completed.

Target is Movie Pipeline

Socket Message Recieved Delegate

Socket Message Recieved Delegate: If this executor has been configured to connect to a socket, this event will be called each time the socket recieves something. The message response expected from the server should have a 4 byte (int32) size prefix for the string to specify how much data we should expect. This delegate will not get invoked until we recieve that many bytes from the socket connection to avoid broadcasting partial messages.

Update Job Shot List from Sequence

Scan the provided sequence in the job to see which camera cut sections we would try to render and update the job's shotlist.

Target is Movie Pipeline Blueprint Library

Warn User Of Unsaved Map

Pop a dialog box that specifies that they cannot render due to never saved map. Only shows OK button.

Target is Movie Pipeline Editor Blueprint Library

Categories

Queue

Queue

Rendering

Rendering