RenderStream Layer
The RenderStream Layer is used to control third party render engines running externally to Designer.
Layer properties
There are six main sections within the RenderStream layer, and several subsections:
- Options
- Media Thumbnail
- Config
- Framerate fraction
- Workload
- Cluster Workload
- Configure
- Channel mappings
- Texture parameters
- Bandwidth estimate
- Control
- Machine
- Actions
- Receive health
- Default
- Blend mode
- Brightness
- Mode
- Properties
- Scene
Additionally, as parameters in the Render Engine scene are exposed, those properties will also appear listed in the RenderStream layer.
1. Options section
These options include:
- Lock
- Copy UID
- All fields
- Bake fields
- Bake expressions
- Clear expressions
- Opened fields
- Bake fields
- Bake expressions
- Clear expressions
2. Media Thumbnail section
This area will display an image of the active stream being received. When there is no stream, it will show [Inactive]
.
Note that in a multi-channel environment, this will only show the Camera in UE that has the RS component attached to it.
Media Thumbnail
3. Config section
This section of the is where you will configure properties such as Asset and Cluster Pool, as well as monitor workload and engine health in real time.
-
Framerate fraction
The framerate of each stream is determined by the global refresh rate set within d3. The Framerate Fraction setting indicates the fraction of the framerate this layer renders at.
The options are 1, 1/2, 1/3, and 1/4.
Framerate fraction
4. Workload section
-
Cluster Workload
The Cluster Workload window contains the elements required for configuring a Cluster.
It contains the following sections:
- Configure
The Configure section contains these elements of a Cluster:
Asset
- RenderStreamAsset
- Cluster pool
- Cluster pool - New ClusterPool, Search
- Render machines, RenderStream understudies
Default
- Splitting strategy
- Splitting overlap (pixels)
- Padding (pixels)
- Maximum tile size (pixels)
- Effective tile size (pixels)
- Transport format
- Alpha
- Scale factor
- Proxy streams
- Preferred Network
Channel mappings
- Channel
- Mapping
- Assigner
- Load weight
- Pool usage
Texture parameters
- Scene
- Group
- Field
- Assigner
- Channel
- Controller
Bandwidth Estimate
- Machine
- Rendered fragments
- Outgoing bandwidth
- Incoming bandwidth
Asset
This Asset is the Render Engine project or Notch block that will be controlled by the layer. In order for the asset to be visible here, it must be present in the RenderStream projects folder.
Right-click on the asset name listed in RenderStreamAsset to open the Asset properties editor:
Properties include:
- Asset Discovery Name: Name of UE folder/project.
- Target Engine: Name of the Render Engine.
- Engine Settings: Engine version.
- Colour shift: Apply colour correction to entire asset.
- Content Source Machine: The render node that is running the render engine project. This is the machine that the project will be synced from.
- Available: Status indicator displaying if the Asset is available. Not a tick box.
- Channels: displays active channels defined by the CameraActors in your UE project.
Cluster Pool
The Cluster Pool will automatically detect all available machines on the same network. Once detected, you can assign as many machines to the Cluster Pool as needed and inspect each machine in the pool to see network status, IP address, current Streams and available Assets.
Cluster Pool
Properties include:
- Render Machines: The list of render nodes that the content will be distributed across.
- Understudies: Backup nodes in case of failover.
Right-click on the name of a machine in the Cluster Pool to edit additional properties related to that machine:
Cluster Pool Machine
Properties include:
- Load Factor: Relative load weight this machine can handle. Weight is relative to other nodes in pool. The workload can be spread evenly across the cluster by the user using a load factor. This allows you to take into account each machine’s spec and assign loads accordingly.
- Online status
- Preferred Synchronisation Adaptor: This setting allows you to pick a subnet to use for Renderstream asset synchronization. You should pick something fast - preferably capable of 100Gbps or more. It is also used by nDisplay inter-machine communication when using Unreal Engine.
-
Network Adaptors and settings: Non-editable list of network adaptors available on the node. To configure the system for Cluster Rendering, all machines within a Cluster Pool must be on the same subnet. If a machine is reporting an unexpected IP address (e.g. loopback address), make sure to select the specific network adaptor within the ‘Network’ tab of d3manager.
-
Streams: non-editable list of RS output from the node.
-
Assets: non-editable list of assets resident on the node.
Default Assigner
The Default Assigner, also known as Cluster Assigner, is where we control the settings for the distribution of the content across all the machines in the Cluster Pool.
Cluster Assigners are used to create definitions as to how channels are delivered from the nodes. You can create as many Cluster Assigners as needed.
Cluster Assigner
Properties include:
- Splitting Strategies
- These are used to generate the sub-regions needed for distributing content across a set of render nodes.
- There are 3 types of splitting strategies:
- Tiles - lets Designer split up the content as it sees fit to the mapped channels. Note: this splitting strategy DOES NOT work with Mesh Policy.
- Full frame - Sends the entire stream to the mapped channel.
- Manual - splits each Viewport according to user specified instructions. When using the ‘Manual’ splitting strategy, the options for specifying how to split frames can be found within the Advanced workload settings.
In Advanced workflow settings, note that region pos. has a range between 0 and 1. The screenshot shows both regions (pos) set to 0.5. Other property values in this editor also range from 0 to 1.
- Splitting Overlap: The Splitting Overlap option can be used to define a blend region at each split that hides imperfections at the seams.
- Padding (Pixels):The Padding option enlarges the rendered area at each split, but does not stream the padded area, cutting off edge artifacts.
- Load Weight: Load Weight allows you to set a priority for the Cluster Assigner. The higher the weight of the assigner, the more machines will be assigned to render the content and thus more splits will be made.
- Transport format:The options to pick between ‘Compressed’ and ‘Uncompressed’ , ‘RGB 4:4:4’, ‘YUV 4:2:2’, and ‘YUV 4:2:0’, and 8-bit, 10-bit and 12-bit transport bit-depths are available.
- Alpha: The option to enable or disable the Alpha channel on the content is available.
- Scale factor: Scale factor for the resolution.
- Proxy Streams: A compressed stream at a lower quality or resolution used for providing a preview on ma chines where receivingthe full-quality stream is undesirable or impossible.
- Preferred network: Select the adaptor to use for video transport on any channel the assigner is associated with.
- Control
Once the cluster has been configured, the stream’s playback is managed via the Cluster Workload controls.
The options for managing the workload are:
- Instances: there can be only one workload instance running at a time in the same cluster pool. When started, the Instances table will be populated with the machines that have been sent the start signal.
- Start: sends signal to all machines in the pool to launch the Asset according to config settings
- Stop: Sends signal to cease outputting a stream and quit the process sending it. The workload log can be opened by left clicking on the status within the Instances table
- Sync: begins the process of content sync. Content is synced from the source machine to all other machines available within the cluster pool; copies only the necessary directories and files needed.
- Advanced: right-click to open the workload’s advanced options:
Receive Health
Status of entire cluster receiving streams, dynamically reported while stream is running.
Right-click on Receive health to open machine specific window:
4. Default section
In the Default section of the RenderStream Layer, there are four Common Layer Properties:
-
Blend Mode: Premult-Alpha is needed for content that contains alpha data.
-
Brightness: Layer intensity.
-
Mode: This is used to determine the timeline’s playback behavior as the layer is playing.
5. Properties section
The last section of the RenderStream layer is asset specific and will display all exposed parameters from the asset as well as their keyframe editors
Workflow overview
Set up your environment including installation of the Render Engine and required plugin.
Use the RenderStream Layer to control the third party render engine.
- Notch
- Plugin - included in Designer.
- Documentation
- Touch Designer
- Unity
- Unreal Engine