Digital EXT with multi machines in LED Wall environments.

 

Hi.


I have two machines and two Broadcast DE licenses.

My question is,

Is there any way to use digital EXT with multi machines for reducing the GPU load in LED wall environments?

Actually, I have knowledge how to use digital EXT with multi output in one machine.

Thank you for your working!


   Basictech

 
Profile Image
Eifert@Aximmetry
  -  

Hi,

Using the Digital EXT doesn't increase the load on your GPU by much. What the Digital EXT uses for the virtual world's picture is already rendered by the Frustum.
By default, with the multi-machine setup, you can reduce the load of the Fill render, by setting different LED Walls to be rendered by different machines.
But the Frustum has to be rendered on all machines, as by default it is turned on all LED Walls:

If you have LED Walls that you know the camera won't look at, then you could turn off Frustum in those LED Walls and make them rendered by one machine. And so that machine wouldn't render Frustum, only Fill. This could reduce the load on that machine by a lot, especially if your project is done in 4k Frustum:

NOTE: Actually, the camera can look at these LED Walls that have Frustum turned off, but you will see the Digital EXT there instead of the live camera input (live camera input with the talents in front of the LED Wall).
Also, this only works in multi-machine on remote machines, as the control machine will have to render the Frustum for the Digital EXT.

Warmest regards,

 
Profile Image
Basictech
  -  

Thank you for your answer.

Unreal Contents Rendering has been successful using Multi-Machine.

(We divided them into LED Wall1 and LED Wall2 and Rendered them respectively.)

Although each server shares the unreal contents of the shared folder, it seemed to be Rendering separately for each machine. 

This is because the particle did not cross the boundary between LED Wall1 and LED Wall2.


I wonder what the problem is.

 
Profile Image
Eifert@Aximmetry
  -  

Hi,

You need to enable Determinism settings in the particle system. Otherwise, each time a particle uses a random value (seed) it will be different compared to the random numbers on the other computers.
Even then, in my experience, some parts of the Unreal particle system might not be fully deterministic.

Also, the particle system shouldn't start emitting right from the start of your scene, but after you trigger it. Since it could be that the Unreal starts at different times on your machines.
And it can also be a delay issue for example between your computers and the LED wall processors, you could check this by animating a movement of any object in your scene and see if that looks the same across the LED walls. If it is not the same, you can add a delay when starting the animation per computer like this:

Warmest regards,

 
Profile Image
Basictech
  -  

Thank you for your answer.



Unreal Engine used Triggers to start Particles at the same time.
However, as shown in the attached picture, it will be randomly played in a different location.
I think we share the project files on the same Root, but each machine renders the content separately.

Thank you for your working!



 
Profile Image
Quanjingwang
  -  

GEn lock

 
Profile Image
Eifert@Aximmetry
  -  

Hi Basictech,

From the screenshots, it looks like that the particle system is not deterministic. Instead, it is randomized.

In the case of the Niagara Particle system, you need to turn on Determinism in each node in the particle system:

You can read more about the Determinism setting here: https://docs.unrealengine.com/5.2/en-US/emitter-settings-reference-for-niagara-effects-in-unreal-engine/

Warmest regards,

 
Profile Image
Basictech
  -  

I understand what you're saying and thank you for responding. I don't think it's a matter of crystallinity, but here's why.


Even though they share the same Unreal Engine Content located in the shared folder, if different particles occur, it does not seem to split rendering one content on each server, but it seems to run two content separately.


According to the answer, it seems that multi-machine implementation does not work smoothly when using random particles. Do you mean that in order to implement multi-machine rendering, only the same fixed particles should be used?


For your information, Multi-machine rendering, which I know, appears to be the same particle because it splits one content, even if it uses random particles.

 
Profile Image
Eifert@Aximmetry
  -  

Hi,

When using multi-machine rendering, only deterministic particles should be used, like in the screenshots in my previous comment.

For the particles to appear the same you have to use the Determinism setting. Unreal is a game engine, these particle systems were designed to appear in games and be randomized so you wouldn't see repeating patterns.
If you don't have Determinism turned on, then the particle system will be different each time you run it, even on the same computer.

In the multi-machine rendering, individual Unreal instances are running on each computer, the instances don't have direct communication between each other. The instances are started from the same folder, but they have their own internal state. They don't have split rendering either, each Unreal instance has its own camera or render texture, however, they are synced to a degree by Aximmetry.

If you don't turn on Determinism, each Unreal instance will generate random values for the particle system based on your computer's internal temperature (or by using similar tricks). If you turn on Determinism, then Unreal will generate the random values by using an algorithm. In this case, the random values will be the same each time you restart the algorithm (when you start Unreal). This way Determinism ensures that you get the same-looking particle system each time you run an Unreal Scene. For example, this also ensures that you can render the same footage for a video each time you start Unreal. It also ensures that you see the same-looking particle system in Aximmetry multi-machine as long as on the different computers the running Unreal scene instances are not different and the particle systems have similar internal states.

Warmest regards,

 
Profile Image
Basictech
  -  

Thank you for your answer.

Is the reason for using multi-machine rendering to use ar and led together? Or I wonder if using multi-machine rendering gives you an advantage in terms of performance. Because we didn't feel any difference in performance when we tested it.

 
Profile Image
Eifert@Aximmetry
  -  

Hi,

Multi-machine can be used with green screen productions too, where it works very differently than in LED wall productions.

In the case of the LED wall, you can distribute the performance load of the Fill with multi-machine.
The Frustum has to be rendered by all computers, as it can appear on any LED Wall, so the Frustum's performance load can not distributed in multi-machine. So it could be that you don't experience performance difference because you render much more pixels for Frustum than for the Fills. Note, that you can even reduce the Fill's resolution in the LED Wall panels.

Other than the performance load benefit for Fill, multi-machine in LED Walls enables you to run lots of LED Walls with lots of pixels, more than one computer's hardware would be able to output.
And if you use the control machine to only render Frustrum like it is explained in the Multi-Machine paragraph of the LED wall documentation, then the Digital Extension will be rendered without the picture delay, so the digital extension and the image on the LED wall will be better synchronized than otherwise.

In the case of AR and LED, using multiple computers will enable you to render AR with a separate computer, removing the AR performance load altogether from the LED Wall rendering computer. We don't actually refer to this as multi-machine, as the AR computer will run a different compound than the LED Wall computer and because of that you have to control these computers independently.

Warmest regards,