Please keep that in mind, the example you are going to proceed with is based on our R&D studio. Various aspects might differ from your setup. If you have any further questions, do not hesitate to contact our Support Department.
Prepare your scene, launch it via Reality Hub Launcher module.
Drag & drop the UE5
processing node into Nodegraph canvas.
Create two Reality Cameras. See Actor Spawning.
Add AJAIn
and AJAOut
nodes, select your devices and outputs based on your setup.
Create your Track node. (In our example it will be the Xync
Node)
Add Curve XR
node to the canvas.
Change the following properties based on your measurements: Pitch Angle, Cell Width, Cell Height, Columns Count, Rows Count, Left Tilt/Roll and Right Tilt/Roll, Height Offset, Left Point and Right Point, Cell Resolution, Canvas Resolution.
Duplicate the modified Curve XR
node.
Connect the RealityCamera0.Scene
output of the UE5
node to Inner Frustum View
of the Curve XR
node.
Connect the RealityCamera1.Scene
output of the UE5
node to Outer Frustum View
of the Curve XR
node.
Create Add Track
node.
Connect the Track
output of Xync
node to the X
input of the Add Track
node.
To address a delay in the Inner Frustum at certain zoom levels, which causes a collision with the outer frustum, we must provide additional FOV input for tracking. Our example requires an additional 10-degree field of view (FOV).
This delay is inherent to the tracking process and rendering of the inner frustum.
Expand the Y
property and change the FOV
property to 10.
Connect the Z
output of the Add Track
node into Inner Frustum Track
input pin of the Curve XR
node.
Pan, tilt, and roll can now be performed independent of zoom level without causing collisions.
Create a Break
node.
Connect the Track
output of Xync
node into Break
node’s Input
pin. Now we have access to Track data. For more details, see Dynamic Nodes.
Create a Make Track
node.
Connect every Break Track
node’s output to the matching inputs of the Make Track
node, except for Rotation
and fov
pins.
Inner Frustum rendered based on where the camera is looking and what is its resolution. On the other hand, the Outer Frustum render continues even if the camera is looking towards a different direction than the LED Screen, because the main purpose of it is to illuminate the scene and talent.
No matter what zoom level you are in, Outer Frustum must always encompass the LED screen, therefore Outer Frustum’s FOV must be fixed.
In the following steps, you need to get the Rotation and FOV data from your Track while framing the LED screen with your studio camera and keeping the zoom level zero, but the driver still will be the Inner Frustum, the first Track Node we added.
Now:
Frame the LED screen with your studio camera and keep the zoom level at zero, as illustrated above.
Create an Add f32
node.
Connect the fov
output of the Break
node into the X
input of the Add f32
node.
Connect the Z
output of the Add f32
node to the fov
input of the Make Track
node.
Now we have the FOV value in the full zoom out while our camera is framing the LED screen. On the other hand, the driver still will be the Inner Frustum. Therefore, we need to disconnect the X
output of the Add f32
node from the fov
.
Disconnect the fov
output of the Break
node from the X
input of the Add f32
node.
As the above image suggests, Outer Frustum is rendering with 97 FOV. We need to increase the FOV X
and Y
by 30 degrees to compensate. With this change, Outer Frustum will project the image onto LED screen with 127 degrees to encompass the LED screen.
Create an Add vec3
node and connect its Z
output to Rotation
input of the Make Track
node.
Connect the rotation
output pin of the Break Track
to X
input of the Break
node.
Disconnect the Z
output of the Add vec3
node to the fov
input of the Make Track
node.
Connect the Canvas
output of the Curve XR
node to AJAOut
, as illustrated above.
Our scene is successfully projected on the Curved LED.