• I love C++ as a god defying monument of backward compatibility. You can go through the versions like an archeologist looking through layers of rock to see what the trends of that time were. There’s not only one way to do the thing you want, but several, too many ways, and no one can stop you from frankensteining pieces together that were never meant to be.

    If C is meant to be a basic toolbox, C++ is your dad’s disorganized tool cabinet he keeps in the garage. Overflowing with barely used, highly specific, and redundant tools.

  • I got paid good money to write C++ for several years.

    It is a shit language, and people love it for the same reason that they love being in a fraternity with hazing rituals.

    • Would be a bit weird expecting all those C++ people to use a language that will be invented 27 years after the language they chose to learn?

  • It’s kind of sad that so many big studios have abandoned their proprietary engines to adopt unreal engine 5. What’s going to happen when Epic starts to turn the screws because they feel like they aren’t making enough money? All these big studios won’t have any staff left that knows how to build graphical engines. Honestly, at least it would make sense if they have up on their engines and started using Godot. At least they wouldn’t be bound to Epic’s bullshit.

    • At a conceptual level, it makes 100% sense that companies are moving away from bespoke engines and towards a standardized engine. This is something you see in many different industries. Spending a whole bunch of money and effort when 95% of your requirements are the same as everyone else is a bit silly.

      However, you’re completely right that there’s the same danger as in other industries where the ‘boring software infrastructure’ gets standardized and outsourced: a niche monopoly able to exploit their position. What tends to happen in the long run is an open source project for that infrastructure run by an NGO with the industry members (in this case AAA game companies) on the board of directors.

      • Even disregarding the long-term problems, I fear for the days when every single game looks the same because their developers decide that UE5 knows best and that there’s no way photorealism gets in the way of artistic direction

        … hell, even in stylized UE5 games, I don’t know how or why but I can feel the UE5ness

      • What tends to happen in the long run is an open source project for that infrastructure run by an NGO with the industry members (in this case AAA game companies) on the board of directors.

        So, O3D, basically. Formerly basically Lumberyard, one of the branches of CryEngine, that Amazon bought, then gave up on actually making work, then open sourced it, but still basically runs the NGO/NonProfit that technically runs it.

        As opposed to the other branch that StarCitizen/RSI is… “developing”… or just the main branch that CryTek still owns and does liscense out.

        But yeah we still currently have Godot that is opensource and run by an NGO/NonProfit that at least currently doesnt seem to be totally dominated by corpo spending/influence.

        And it only makes conceptual sense to adopt a 3rd party AAA engine as an industry standard if youre financially fucked as a publisher/game studio. Its basically the same thing as a company being bought out by private equity; the only thing that can happen from that point is squeezing the last bit of juice out of whatever is left.

        Because when there’s a monopolistic game engine, well it just colludes with monopolistic hardware.

        Then nobody in the bottom 90% can afford the ‘AAA’ experience, because prices are too high, because the engine doesn’t need to be optimized, because that would decrease monopolistic rents on the hardware, which also doesn’t need to be optimized.

        So that market and production model cannibalizes itself.

    • That’s why we always stan on studios like Remedy. They use their own engine, and pretty much everything they produce is stellar IMO.

  • 2 days

    The point of C++ isn’t optimization, rather it is that one only pays for what one uses. Experience in C++ leads to using only the features of C++ that are appropriate and conscientiously eschewing the rest.

    • Unless you call an stdlib function and suddenly 10,000 call instructions.

  • The whole point of C++ is to graft Object Oriented Programming into C like some Frankenstein’s monster because OOP was the big hype.

    C++ being performant is mostly a side effect of it being based on a language created when programs were still punched into paper cards.

    • That was the point 20 years ago. These days it is pivoting to compile time functional programming

        • If you have a constant expression like 1 + 2 in your code you can evaluate it at compile time once and avoid computing it at runtime. You can do that with control flow and much more complex language constructs in C++. If you want to know more about that look into C++ template meta programming, constexpr, and constval.

          • Or don’t look into those things if you wish to remain sane

            • Templates are cool as fuck tho… For like 5 minutes until you go insane

  • Anon is my C language programming college professor. He was also a linux evangelist, and got me to start daily driving/dualbooting linux.

    • 3 days

      You’d write the code in something else and then be like

      import 3dengine
      3dengine.run()
      
      • 3 days

        Aah yes, the entire numerical python stack being carried on Fortran and C’s shoulders

        • The tutorials and walkthrough guides for all of that stuff are infuriating.

          What do you mean I just import and run “unbelievably_specific_tool” and run it? How am I supposed to do anything other than process this example data with that?

          • 2 days

            Exactly, coming from Java it was such a big difference. Previously I could click on any class or method and view the implementation, with Python, suddenly everything was a convoluted jungle of methods popping into existence during runtime or being loaded from some opaque binary.

    • You know the majority of LLM stacks are in python, right?

      We already live in that world, basically.

      Python LLM training produces models that are then refined into things that 3D engines plug into to do AI upscaling and framegen, and then different python trained LLM models use more python to interface with MCPs to write more slop extensions and frameworks in/for game engines, and other programs.

      Still different python derived LLMs do image/facial/3d object recognition, get plugged into moar python, and then produce models… often for game engines.

      Its nearly literally an ouroboros.

      • It’s funny that you think Python is anything else than a wrapper for real languages that get shit done.

        • Let me know how many LLMs you can run locally without multiple entire suites of python libraries.

          Muchless train an LLM.

          Yeah, load bearing ‘wrappers’.

  • You’d be surprised how few game devs actually touch any code. It’s not just artists or designers. Even the ‘programmers’ increasingly rely on visual tools instead of coding.

  • By that logic, if your English language essay gets an F it’s the English language’s fault?

      • Hey! Native speaker here. If we:

        • reformed the spelling

        • stopped the locals from coming out with any deranged shite that they liked the sound of and made them follow some rules instead

        …then it would be a perfectly usable language, thank you.