OWL Cinecam and Component

An augmented Cinecamera Actor and Component for Unreal Engine with precise Viewport color matching, output to a Render Target, Alpha Channel support, Stereoscopic output and various other features.

Last updated 2 days ago

Overview

The OWL Cinecam and Capture Component let you capture live outputs from Unreal Engine with identical colors to your Unreal Viewport and a wide range of additional useful rendering a compositing features.

It is primarily used for live-stream from Unreal in workflows such as:

  • Projection mapping and VJing (including live stereoscopic 3D).

  • VTubing (character with alpha channel).

  • Previsualisation in Digital Twins from drones or moving actors.

  • Broadcasting from virtual studios.

Cinecam Actor

The OWLCinecameraActor is a standalone Actor that you use in your Unreal level like any other camera.

To use the OWL Cinecam:

  1. Go to Place Actors and in the Off World Live section find the OWL Cine Camera and drag and drop it into your level.

  2. You can now use the Camera Actor in Unreal like you would any standard camera.

Capture Component

The OWL Capture Component adds the OWL capture capabilities to whatever Camera or Actor you attach it to. This is useful if you have an existing sequence which you want to live-stream from.

To use the OWL Capture Component:

  1. Select any Unreal Camera, Cinecam or Actor in your World Outliner and at the top of its Details panel click Add and type and select OWL Capture:

  2. This will add an OWL Capture Component to your Camera/ Actor which you will see in your components list. Make sure that this OWL Component is attached to your Cinecam or Actor by dragging it and seeing the green tick:

Blueprint Set-Up

  • The OWL Cinecam is made up of a Scene Component, a Camera Component and a Capture Component:

  • The details for all of these components can be accessed from the OWLCineCameraActor, but to change some of these settings via Blueprints you will need to know which settings are a part of which component.

  • The Transform settings for the Camera are controlled just as any other Actor in Unreal and can be keyframed or controlled dynamically via Blueprints.

  • The Off World Live Capture settings are unique to the Capture Component and can be controlled via Blueprints by accessing the CaptureComponent as a child of the CineCameraActor, below is an example of setting some of the settings dynamically via a Custom Event in the Level Blueprint:

Live-Streaming

You can live-stream the Render Target of the OWL Cinecam using both the OWL Media Outputs and Unreal’s Media Capture framework:

OWL Media Outputs

  • The easiest way to set this up is to use the OWL Media Output Wizard, which will let you set up an OWL Cinecam along with any media outputs you need.

  • OWL has outputs for Spout, Virtual Webcam, RTMP, SRT, RTSP, HTTP and Save to File which aren’t available in Unrea.

  • If you want to set out the outputs separately, then you can follow the guides in this documentation.

  • This works in Editor, Runtime and in Packaged games.

Unreal Media Capture

  • Unreal has a Media Capture Framework which can send Render Targets.

  • It has a large number of configurations and is excellent for studio outputs such as capture cards and SMPTE 2110 (Rivermax), which you will need to configure by adding their respective plugins and media captures.

  • You can also use the OWL Spout and NDI Media Output integrations via this method, to take advantage of the studio workflow configuration options.

  • It is for Editor/ Runtime usage only so won’t work in packaged games.

  • To set up:

  1. Go to Edit> Plugins and ensure that the Media Framework Utilities Plugin is enabled:

  2. In Windows> Virtual Production select Media Capture:

  3. In the Media Capture window, select the Render Target you want to send from the list and select the Media Output you want to send it via and then press Capture to begin sending:

Color Grading

You can use the color grading tools in Unreal with the OWL Cinecam to give cinematic beauty to your output.

This can create very distinctive visual output without requiring third party software, which is particuarly efficient if you are live-rendering:

  1. Open the Color Grading tab in Window > Color Grading:

  2. When you adjust the settings in the color panel you will see the Preview of your Cinecam change. The Tabs and Dials correspond to different sections of the Color Grading panel, but are easier to use due to the color visualisation:

Performance

Frame Rate

Rendering to the Render Target is performance intensive because you are rendering an additional set of pixels to your Viewport and your output is likely much higher resolution than your Viewport.

To increase your live frame rate from the Cinecam/ Component the main options are:

  1. You can use the Editor and Runtime Viewport Rendering tickboxes in the OWL Editor drop down to switch off the Viewport (If you have Nanite in your scene, you cannot switch off the Editor Viewport or it will crash Unreal.)

    1. This is a toggle that you can also activate in Blueprints.

  2. Enable upsampling with TSR or DLSS, which is particularly effective at higher resolutions, by ticking the Enable Upscaling box in the Details panel and setting a new screen percentage for your output. More details in the Features section below.

  3. You can use Frame Generation from the DLSS Streamline plugin, with a blueprint like below, selecting in the Set DLSS-FG Node the number of frames per real frame rendered you want. (More frames will give you a higher FPS but more artefacts):

Visual Quality

  • The OWL Cinecam uses the identical rendering pipeline as the Unreal Viewport and so should have complete color consistency with what you see and do in the Viewport.

  • This includes responding to Post Process Volumes etc.

  • You can use OCIO to deliver a precise color pipeline if you need it for your production purposes.

  • In this respect the OWL Cinecam is more color precise than Unreal’s Cinecam Capture Component which uses a Scene Capture 2D Actor (not the same as the Viewport rendering pipeline) with various Scene View Extensions to add post process effects.

  • If you use DLSS then you may see a reduction in visual quality, especially in very fast moving scenes because of the predictive nature of the upsampling algorithms.

Features

Render Target Output

  • You can capture the output of the camera to a Render Target for previs, live-streaming or adding to a material.

  • Either add an existing one or go to Create New Asset> Render Target to make a new one.

  • Adding a Render Target will render a separate output from your Unreal Viewport so you will see a decrease in your frame rate.

  • You can pause the capturing if you don’t need the live camera output (see below).

Buffers Visualisation

  • This allows you to output Custom Buffers from the Cinecam of the different layers in the Unreal render pipeline.

  • This can be useful for previz or compositing:

Resolution

  • This let’s you set the Resolution of the output you are writing to the Render Target.

  • By default, the aspect ratio of the camera is inheirited from the Filmback Settings in the Cinecam:

  • You can change the Y values of the Resolution and it will scale the X value automatically depending on this aspect ratio:

  • If you don’t want a fixed aspect ratio, untick Constrain Aspect Ratio in the Camera Options section:

  • You can now set whatever X value for the Resolution you need and the Filmback Settings will update automatically to your selection:

Pause Rendering

  • Pause Rendering is used to stop the Render Target from capturing the camera.

  • When ticked you will see the camera Preview also show a pause sign:

Upscaling and DLSS

NVIDIA Streamline/ Frame Gen doesn’t work with OWL tools and we recommend not to include it in your active Plugins when using OWL.
We recommend to only include these plugins if you want to use DLSS with OWL:

  • Enable Upscaling lets you increase performance by using AI upscaling to render a % of the pixels in your output:

  • This is much more effective at higher resolutions where the total number of pixels to be rendered is much greated.

  • Generally, at around 70% in 4K you will see a significant performance improvement without major artefacts.

  • By default, the AI upscaling method used is Unreal’s TSR (Temporal Super Resolution) but you can also use NVIDIA’s DLSS or other upscaling solutions, which will work automatically when you enable them in the Engine:

  • If you want to use DLSS you need to select these options after installing and activating the plugin in your Plugins section in Unreal. If DLSS is installed it will override TSR/ any other anti-aliasing setting in your Project Settings:

  • You may see a difference in performance between TSR and DLSS (including different visual artefacts).

Path-Tracing

  • Path Tracing previews in your Render Target your scene as it would look in the path-tracer, which can be useful for render previz.

  • If you have a high Resolution, it will take some seconds for the final image to emerge.

  • You can use the path-tracer in combination with the Snapshot function to capture the output to a png:

Snapshot

  • Snapshot will instantly generate a png from the Render Target of what the camera is seeing at that moment in time.

  • You can configure the settings and metadata that go with the Snapshot in the Advanced section:

Stereoscopic Output

  • Stereoscopic allows you to output the Cinecam in 3D for use with VR Headsets or 3D glasses.

  • There are multiple output options as well professional configuration settings for IOD and Focus/ Convergence.

  • You can see the workflow guide for more information:

Alpha Channel

N.B. if you remove an Actor from your scene which has particles or other effects rendering over it, those will also be removed because of how Unreal’s render pipeline works.

  • Alpha Settings lets you show and hide objects from the Cinecam.

  • The Show Only list allows you to select Actors in your scene so only those are rendered (against an alpha channel background).

  • You can also use Invert Alpha channel to create a mask:

  • The Hide Only list removes Actors from your scene (such as the cylinder in the case below):

UMG/ HUD Overlay

  • UMG Settings lets you render a HUD or UMG on top of your Render Target output.

  • You can select any HUD Widget Blueprint from the drop down list including any which you custom make yourself:

Render Flags

  • You can use the Render Flags to switch off different post process effects in the render pipeline.

  • This can be helpful if you want to see how a certain post-process effect is affecting your scene:

OCIO Color Management

  • Use the Color section to add OCIO color configurations to the Render Target.

    full-image
  • Load an OCIO Config in to the Content Browser then set this asset as the Configuration Source.

    • Then choose the Transform Source and Destination from the OCIO Config File as explained here as explained here.

Preview

  • If the Render Target is unpaused, your preview window will automatically show the exact output of the Cinecam, including any modifications you have made with the settings above.

  • You can switch this off if you prefer.

Example Blueprints

Camera Switching

We recommend camera switching by teleporting a single OWL Capture Component between different Unreal Cinecams you have active in your scene, such as in the blueprint below.

Enable Control of a HUD

Toggle Camera Movement

Zooming and X/Y Nudgable Camera

Camera Switching with HUD Fade Transition

Stereoscopic 3D

Overview

Output Types

Trouble-Shooting

Frame Rate Drop when in Background

  • By default, Unreal throttles the CPU when Unreal is in the background vs other software which causes the frame rate to drop.

    • To change this, go to Editor Preferences and untick Use Less CPU when in Background:

Audio not Playing when Editor in Background

  • By default, Unreal will stop audio playing when the Editor is in the background vs other software.

    • To change this, pick the Engine version you need in your File Explorer and go to the file path:

      full-image
    • In Config go to BaseEngine.ini and open the notepad:

      full-image
    • Search for UnfocusedVolumeMultiplier and change the value from 0.0 to 1.0:

      full-image
    • Save the file and close and re-open Unreal. Your audio will now play continuously no matter if Unreal is in the background or minimised.