• I Cast Fist
    link
    fedilink
    English
    349 months ago

    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

    • @pivot_root
      link
      English
      229 months ago

      Wait, is it seriously a full-blown UE5 application?

        • I Cast Fist
          link
          fedilink
          English
          5
          edit-2
          9 months ago

          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:

          [/Script/Engine.Engine]
          ConsoleClassName=/Script/Engine.Console
          GameViewportClientClassName=/Script/Engine.GameViewportClient
          LocalPlayerClassName=/Script/Engine.LocalPlayer
          WorldSettingsClassName=/Script/Engine.WorldSettings
          NavigationSystemClassName=/Script/NavigationSystem.NavigationSystemV1
          NavigationSystemConfigClassName=/Script/NavigationSystem.NavigationSystemModuleConfig
          AvoidanceManagerClassName=/Script/Engine.AvoidanceManager
          PhysicsCollisionHandlerClassName=/Script/Engine.PhysicsCollisionHandler
          

          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.

        • @pivot_root
          link
          English
          29 months ago

          That is ridiculous. Even Electron would have been better…

    • @[email protected]
      link
      fedilink
      English
      -99 months ago

      Why is it stupid exactly? UE5 scales very well and places very little demand on hardware for simple tasks.

      • I Cast Fist
        link
        fedilink
        English
        99 months ago

        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?

        • @[email protected]
          link
          fedilink
          English
          -69 months ago

          That’s not really a valid response. Please accurately clarify why UE5 is inefficient at running a store. Benchmarks and other evidence is required.

          • @pivot_root
            link
            English
            5
            edit-2
            9 months ago

            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.

            • @[email protected]
              link
              fedilink
              English
              19 months ago

              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?

              • @pivot_root
                link
                English
                1
                edit-2
                9 months ago

                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.

            • @[email protected]
              link
              fedilink
              English
              19 months ago

              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.

              • @pivot_root
                link
                English
                19 months ago

                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.