UE good or bad design choices?

(not trying to offend any UE4 devs here, im amazed by the engine you guys have put together) Ive had one doubt about UE4 with limited map sizes (single player vs. multiplayer) but i just learned i can only use one GPU for UE4. This is a bit surprising and makes me wonder if the UE4 devs are cutting corners to get stuff out the door faster(not that i could do better). I still prefer UE4 but if anyone could address this that would be awesome…

As far as map sizes i understand why moving the world center point for single player is advantageous and a simple solution but it means you still need a entirely different approach for multiplayer. i know there are solutions for this because they exist elsewhere in other products and have for years but they come with overhead. im guessing they likely went with moving the center point because single player games make up the majority of games(?). but at first glance it would seem like having a solution that works for everything even if it has a bit more overhead would have been better then having a solution that only works for single player. In this regard has there been any info hinted at about multiplayer with big maps? it seems silly to find a solution for single player while not bothering with multiplayer.

As far as UE4 only being able to run with 1 GPU because of design choices, this comes across as a bad idea. im sure they have reasons that justify this(maybe the returns on this method outweigh the benefit of any 2-3 GPU pairing solution could offer(?)).

Does this 1 GPU situation also apply to finished games?

Does anyone know of the reason why they went these routes or if there were early tests they talked about that simply favored these choices? Any info beyond my speculation would be awesome.

I’ve only been programming in OpenGL for a few months, so I can only really talk from an OpenGL context, but I imagine DirectX can and does encounter similar issues. Since I don’t work for Epic either, I can only speculate on their reasons for sticking to a single GPU. Feel free to step in and correct me if I’m wrong, anyone :slight_smile:

A multi-GPU paradigm introduces a number of complications due to the pipeline nature of contemporary graphics rendering. It’s a technique that is really “single-track” in nature, so trying to then introduce parallel processing can really mess things up if not done correctly, and there are limitations to what can be achieved. The main root of the problem is that the graphics programmer actually has little direct influence over exploiting the benefits of multiple GPUs, and is instead reliant on the driver (whether it’s SLI or Crossfire) correctly interpreting your intentions and choosing the most effective path. The catch is it’s really easy for the driver to misinterpret it, and you end up with a massive framerate drop. As a result, programming for multiple-GPUs is more about making sure it doesn’t screw things up, rather than exploiting the added power which is done in the driver instead. This is the reason why big game releases are often accompanied by a special driver release from ATI and NVidia, who will actually hand-craft special routines for those games to ensure the driver does the right thing.

Regardless, I understand the upcoming DX12 and OpenGL (“Vulkan”) APIs intend to resolve the many issues by essentially treating a multi-GPU setup as a single pool of resources that can be used for rendering, removing a lot of the complications brought about by having more than one GPU involved. This, combined with the reasons above, is possibly why Epic have stalled on embracing SLI or Crossfire setups.

Ever since I had a read around DX12/Vulkan rumours I’ve been so anxious.
Really want an excuse to go for EVGA Titan X Hydrocoppers in SLI haha.

IMAGINE all the (Nvidia) Flex-ing.
It would be glorious (I hope).