this post was submitted on 28 Mar 2024
344 points (98.3% liked)
Games
32470 readers
2066 users here now
Welcome to the largest gaming community on Lemmy! Discussion for all kinds of games. Video games, tabletop games, card games etc.
Weekly Threads:
Rules:
-
Submissions have to be related to games
-
No bigotry or harassment, be civil
-
No excessive self-promotion
-
Stay on-topic; no memes, funny videos, giveaways, reposts, or low-effort posts
-
Mark Spoilers and NSFW
-
No linking to piracy
More information about the community rules can be found here.
founded 1 year ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
I really wish they'd start by not making the EGS program a fucking UE5 app. Seriously, using the whole ass engine to render html is stupid beyond belief
Wait, is it seriously a full-blown UE5 application?
I was going to call shenanigans, but then I looked at the details of the application:
https://i.imgur.com/J30SGAr.png
So it seems there is something to it.
If you peruse the folder where it's installed and compared to any UE4 or UE5 game, you'll notice all the other similarities in .dll files, folders and whatnot. Even the CrashReporter.exe is the same you see in unreal games. Or you can check the config files at
Epic Games\Launcher\Engine\Config
which has stuff like BaseEngine.ini which, among other networking configurations, also has this:Meanwhile, in
Epic Games\Launcher\Portal\Config
, the "game" part of the launcher, you have DefaultGame.ini and DefaultEngine.ini, the latter's first 2 lines pointing back to the Engine folder:[Configuration] BasedOn=..\Engine\Config\BaseEngine.ini
So, yeah, it's the actual engine. I was going to complain about disk bloat, but my Steam install is currently sitting at 1.3GB and I'm not entirely sure how much of that is from cached stuff. GOG Galaxy is taking ~980MB, but roughly 650MB are from redist installers (MSVC2005, 2007, dotnet, etc), so a "clean" install would be way lighter than Steam or EGS, the latter at 1.1GB on a clean install.
That is ridiculous. Even Electron would have been better...
Why is it stupid exactly? UE5 scales very well and places very little demand on hardware for simple tasks.
Ever heard the saying "Everything looks like a nail when you have a hammer"? Basically, just because you have a tool, it doesn't mean it's the best tool for every job. UE5 is great for making games, cinematics and loads of other stuff. But why use it to effectively behave as a browser like Chrome or Firefox, but worse, when there are alternatives made specifically for that?
That’s not really a valid response. Please accurately clarify why UE5 is inefficient at running a store. Benchmarks and other evidence is required.
I don't think benchmarks are really needed to explain this. The whole game engine part is an unnecessary step.
To initialize a web browser component within UE5, you first need to initialize UE5 and then the web browser within it. Or, you could initialize a web browser directly, saving the memory and time needed to start up UE5.
They clearly have developers who know how to use CEF or whatever web view framework since they added it to Unreal Engine, so it's not like they don't know how to add it to a standalone application.
You have provided absolutely no proof that using UE5 to run EGS is a waste of resources nor that your idea of using a browser directly would be more performant. Just saying things isn’t proof and the burden sits with you.
I'm not about to install EGS to prove something that can be deduced using common sense and critical thinking.
Abstractions are not free. The more of them you add, the more resources will be consumed by the application. Unreal Engine is an extra layer of abstraction sitting above some web view framework. Ergo, using the same web view framework without the Unreal Engine component abstraction would be cheaper.
Wait, wait. Do you think that “the whole engine” is loaded for every UE5 executable? I can tell you that’s not at all how this works. The point of a scalable engine is that it loads whatever relevant libraries or portions of the engine that would be needed, including swapping for custom code where appropriate. The idea that the storefront is unoptimised purely because it uses a game engine is just as ignorant as saying that you should measure all computers purely by a single metric. Maybe you could also compare EGS to other stores and measure only the executable’s size? By your reasoning there’s no need for benchmarks, so surely the store with the smallest exe wins, right?
When I said "the whole game engine part", I was referring to the usage of the engine at all. The whole engine obviously isn't loaded, but there's further abstractions and initialization code compared to using CEF or the Edge web view directly.
I'm simply saying that it's a waste of resources to require loading or initializing any other part of Unreal Engine (including the component loading code!) when they're only using it as web view.
I'm also not saying any other storefront is better. Steam is a bloated pig that half uses CEF and half uses Valve's own proprietary GUI library, and the various other Electron-based publishers' launchers suffer from different but equally stupid problems.