Navigation
API > API/Runtime > API/Runtime/MovieSceneCapture > API/Runtime/MovieSceneCapture/Protocols
Inheritance Hierarchy
- UObjectBase
- UObjectBaseUtility
- UObject
- UMovieSceneCaptureProtocolBase
- UMovieSceneImageCaptureProtocolBase
- UUserDefinedCaptureProtocol
- UUserDefinedImageCaptureProtocol
References
| Module | MovieSceneCapture |
| Header | /Engine/Source/Runtime/MovieSceneCapture/Public/Protocols/UserDefinedCaptureProtocol.h |
| Include | #include "Protocols/UserDefinedCaptureProtocol.h" |
Syntax
class UUserDefinedCaptureProtocol : public UMovieSceneImageCaptureProtocolBase
Remarks
A blueprintable capture protocol that defines how to capture frames from the engine
Variables
| Type | Name | Description | |
|---|---|---|---|
| FFrameMetrics | CachedFrameMetrics | Frame metrics cached for the current frame | |
| const FCapturedPixelsID * | CurrentStreamID | Transient stream ID used only during filename generation | |
| TUniquePtr< FFrameGrabber > | FinalPixelsFrameGrabber | A frame grabber responsible for capturing LDR final pixels from the viewport when requested | |
| FCapturedPixelsID | FinalPixelsID | The ID of the final pixel stream cached from StartCapturingFinalPixels | |
| TAtomic< int32 > | NumOutstandingOperations | A running count of the number of currently pending async operations | |
| TObjectPtr< UWorld > | World | ~ End UObject implementation World pointer assigned on Setup |
Constructors
| Type | Name | Description | |
|---|---|---|---|
UUserDefinedCaptureProtocol
(
const FObjectInitializer& ObjInit |
Functions
| Type | Name | Description | |
|---|---|---|---|
| FString | GenerateFilename
(
const FFrameMetrics& InFrameMetrics |
Generate a filename for the current frame | |
| FFrameMetrics | Access this protocol's current frame metrics | ||
| void | Called when this protocol is going to be shut down - should not capture any more frames | ||
| bool | Called to check whether this protocol has finished any pending tasks, and can now be shut down | ||
| bool | |||
| void | Called when this protocol should capture the current frame | ||
| void | OnFinalize () |
Called to complete finalization of this protocol | |
| void | Called when this protocol should temporarily stop capturing frames | ||
| void | OnPixelsReceived
(
const FCapturedPixels& Pixels, |
Called when pixels have been received for the specified stream name | |
| void | OnPixelsReceivedImpl
(
const FCapturedPixels& Pixels, |
Called when image pixel data is ready to be processed | |
| void | OnPreTick () |
Called before the capture process itself is ticked, before each frame is set up for capture Useful for any pre-frame set up or resetting the previous frame's state | |
| bool | OnSetup () |
Called once at the start of the capture process, but before any warmup frames | |
| bool | |||
| void | Called when this protocol should start capturing frames | ||
| void | OnTick () |
Called after the capture process itself is ticked, after the frame is set up for capture, but before most actors have ticked | |
| void | OnWarmUp () |
Called when the capture process is warming up. | |
| void | ReportOutstandingWork
(
int32 NumNewOperations |
INTERNAL: Report that the protocol is dispatching the specified number of asynchronous tasks that need to be completed before this protocol can be finalized | |
| void | ResolveBuffer
(
UTexture* Buffer, |
Resolve the specified buffer and pass it directly to the specified handler when done (does not pass to any bound streams) | |
| void | StartCapturingFinalPixels
(
const FCapturedPixelsID& StreamID |
Instruct this protocol to start capturing LDR final pixels (including slate widgets and burn-ins) | |
| void | Instruct this protocol to stop capturing LDR final pixels |
Overridden from UMovieSceneCaptureProtocolBase
| Type | Name | Description | |
|---|---|---|---|
| void | AddFormatMappingsImpl
(
TMap< FString, FStringFormatArg >& FormatMappings |
Called when generating formatting filename to add any additional format mappings | |
| void | Called when we have finished capturing and we should start finalizing the capture | ||
| void | CaptureFrameImpl
(
const FFrameMetrics& FrameMetrics |
Instruct this protocol to capture a frame relating to the specified metrics | |
| void | FinalizeImpl () |
Called when we have finished capturing | |
| UWorld * | GetWorld () |
~ End UMovieSceneCaptureProtocolBase implementation ~ Begin UObject implementation | |
| bool | Check whether this protocol has any processing left to do, or whether it should be finalized. | ||
| void | PreTickImpl () |
~ Begin UMovieSceneCaptureProtocolBase implementation | |
| bool | SetupImpl () |
Called once at the start of the capture process (before any warmup) to set up anything required for the capture. | |
| bool | Start capturing | ||
| void | TickImpl () |
Called on the main thread to do any additional processing | |
| void | WarmUpImpl () |
Start warming up this capture protocol |