RetroFed Forum
Your home away from modern life.
Anon hates C++
Post Reply
AuthorMessage
šŸ¹Early to RISA šŸ§‰ sh.itjust.works Early_To_Risa@sh.itjust.works
Joined: 2023-06-25
Quote

496   Original
resipsaloquitur lemmy.cafe resipsaloquitur@lemmy.cafe
Joined: 2026-04-14
#2 · Quote Reply

Go ahead, write your 3D engine in Python. I dare you.

67
red_tomato lemmy.world red_tomato@lemmy.world
Joined: 2025-12-30
#3 · Quote Reply

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.

118
Eggymatrix sh.itjust.works Eggymatrix@sh.itjust.works
Joined: 2023-07-09
#4 · Quote Reply

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

37
Hadriscus jlai.lu Hadriscus@jlai.lu
Joined: 2025-06-10
#5 · Quote Reply

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

What does that mean ?

23
DupaCycki lemmy.world DupaCycki@lemmy.world
Joined: 2025-08-17
#6 · Quote Reply

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.

9
red_tomato lemmy.world red_tomato@lemmy.world
Joined: 2025-12-30
#7 · Quote Reply

What does that mean ?

Overengineered mess

7
hoshikarakitaridia lemmy.world hoshikarakitaridia@lemmy.world
Joined: 2023-07-31
#8 · Quote Reply

Go ahead, write your 3D engine in Python. I dare you.

Never underestimate my self-loathing and my desire to write the most unusable piece of shit.

15
chicken lemmy.dbzer0.com chicken@lemmy.dbzer0.com
Joined: 2023-06-30
#9 · Quote Reply

Go ahead, write your 3D engine in Python. I dare you.

How many games write their own 3D engine anymore

6
zurohki aussie.zone zurohki@aussie.zone
Joined: 2023-06-21
#10 · Quote Reply

Go ahead, write your 3D engine in Python. I dare you.

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

import 3dengine
3dengine.run()
61
whimsy lemmy.zip whimsy@lemmy.zip
Joined: 2025-06-09
#11 · Quote Reply

You'd write the code in something else and then be like import 3dengine 3dengine.run()

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

29
ddplf szmer.info ddplf@szmer.info
Joined: 2024-08-08
#12 · Quote Reply

What does that mean ?

it means rust is cool as fuck

10
Hadriscus jlai.lu Hadriscus@jlai.lu
Joined: 2025-06-10
#13 · Quote Reply

it means rust is cool as fuck

aren't they talking about C++ ?

2
Sonnenblume discuss.tchncs.de e8d79@discuss.tchncs.de
Joined: 2024-04-21
#14 · Quote Reply

What does that mean ?

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.

28
iknewitwhenisawit fedinsfw.app iknewitwhenisawit@fedinsfw.app
Joined: 2026-03-26
#15 · Quote Reply

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

C++ has a lot of terrible language features because it would allow some 8 bit embedded CPU to dynamically change from LSB to MSB ordering in the middle of decoding some input. šŸ™ˆ

6
begrudgedcarfolk sh.itjust.works begrudgedcarfolk@sh.itjust.works
Joined: 2026-09-19
#16 · Quote Reply

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.

88
deathmetal27 lemmy.world deathmetal27@lemmy.world
Joined: 2023-10-04
#17 · Quote Reply

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

23
justlemmyin lemmy.world justlemmyin@lemmy.world
Joined: 2023-08-06
#18 · Quote Reply

Go ahead, write your 3D engine in Python. I dare you.

3D engine in LOLCODE or bust

3
mycodesucks lemmy.world mycodesucks@lemmy.world
Joined: 2024-03-08
#19 · Quote Reply

How many games write their own 3D engine anymore

Not enough. It's why they all need so many fucking resources and why you need to spend $1500 on a video card for a game that could run on a 15 year old GeForce if the developers put any effort into optimizing anything.

15
ddplf szmer.info ddplf@szmer.info
Joined: 2024-08-08
#20 · Quote Reply

aren't they talking about C++ ?

C++ has pretty much no compile-time checks, while Rust's overengineered syntax allows it's compiler to catch vast majority of your everyday errors during compilation.

10
Barbarian sh.itjust.works Barbarian@sh.itjust.works
Joined: 2023-06-08
#21 · Quote Reply

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 starte...

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.

48
warm kbin.earth warm@kbin.earth
Joined: 2024-03-03
#22 · Quote Reply

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 starte...

It comes down to money. Studios dont want to spend the time and money anymore. People will buy whatever garbage they put out anyway. It can be shitty UE5 at 30fps, people have no standards anymore.

10
ą¶žmir lemmy.ml Amir@lemmy.ml
Joined: 2023-06-01
#23 · Quote Reply

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

54
furry toaster lemmy.blahaj.zone protogen420@lemmy.blahaj.zone
Joined: 2025-01-04
#24 · Quote Reply

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

does anyone actually follow whatver the comittee sees as best practices?

2
furry toaster lemmy.blahaj.zone protogen420@lemmy.blahaj.zone
Joined: 2025-01-04
#25 · Quote Reply

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

yeah, zig and rust have the same concepts but much better thought and structed

9
Hadriscus jlai.lu Hadriscus@jlai.lu
Joined: 2025-06-10
#26 · Quote Reply

C++ has pretty much no compile-time checks, while Rust's overengineered syntax allows it's compiler to catch vast majority of your everyday errors during compilation.

ok thanks

3
Hadriscus jlai.lu Hadriscus@jlai.lu
Joined: 2025-06-10
#27 · Quote Reply

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.

thank you !

2
Whelks_chance lemmy.world Whelks_chance@lemmy.world
Joined: 2023-06-23
#28 · Quote Reply

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?

16
xep discuss.online xep@discuss.online
Joined: 2025-08-06
#29 · (edited) Quote Reply

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.

41
timochka lemmy.zip timochka@lemmy.zip
Joined: 2026-05-22
#30 · Quote Reply

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.

Translation: "We've made the preprocessor a first-class language feature!"

(jk, don't kill me)

7
Sonnenblume discuss.tchncs.de e8d79@discuss.tchncs.de
Joined: 2024-04-21
#31 · Quote Reply

does anyone actually follow whatver the comittee sees as best practices?

I think the closest to an actual answer you will find are the cpp core guidelines.

3
asdfasdfasdf lemmy.world asdfasdfasdf@lemmy.world
Joined: 2023-06-25
#32 · (edited) Quote Reply

aren't they talking about C++ ?

Rust is a very modern alternative to C /C++.

3
Err(()).unwrap() lemmy.world rtxn@lemmy.world
Joined: 2023-06-24
#33 · Quote Reply

yeah, zig and rust have the same concepts but much better thought and structed

It's easy to build a well-designed language when you don't have to work around the mistakes of the past that were too difficult to solve then and too deeply entrenched to change now.

11
furry toaster lemmy.blahaj.zone protogen420@lemmy.blahaj.zone
Joined: 2025-01-04
#34 · Quote Reply

It's easy to build a well-designed language when you don't have to work around the mistakes of the past that were too difficult to solve then and too deeply entrenched to change now.

yes, thats why I dont bother finnishing projects

12
sp3ctr4l lemmy.dbzer0.com sp3ctr4l@lemmy.dbzer0.com
Joined: 2025-04-10
#35 · (edited) Quote Reply

Go ahead, write your 3D engine in Python. I dare you.

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.

-4
sp3ctr4l lemmy.dbzer0.com sp3ctr4l@lemmy.dbzer0.com
Joined: 2025-04-10
#36 · (edited) Quote Reply

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 t...

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.

8
tomenzgg midwest.social tomenzgg@midwest.social
Joined: 2025-01-19
#37 · Quote Reply

yes, thats why I dont bother finnishing projects

To be fair, I never fully understood why programming projects have to be native Finlanders, in the end.

12
87Six lemmy.zip 87Six@lemmy.zip
Joined: 2025-09-19
#38 · Quote Reply

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.

I understand C++ better than what C++ coders say online fr

Much love

5
87Six lemmy.zip 87Six@lemmy.zip
Joined: 2025-09-19
#39 · Quote Reply

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

16
klankin piefed.ca klankin@piefed.ca
Joined: 2026-01-12
#40 · Quote Reply

Not enough. It's why they all need so many fucking resources and why you need to spend $1500 on a video card for a game that could run on a 15 year old GeForce if the developers put any effort into optimizing anything.

Expecting even a medium to large team to waste resources on essentially reinventing the wheel would probably result in shittier games, IMO.

And with their new engine no one is stopping them from adding dlss the entire way, so performance never once has to be a consideration (minus on their test rig of 2 5090s, 128GB of ddr5, and the latest threadripper of course).

5
MonkderVierte lemmy.zip MonkderVierte@lemmy.zip
Joined: 2025-05-30
#41 · Quote Reply

The point of C++ is C, but with extra footguns.

26
I Cast Fist programming.dev ICastFist@programming.dev
Joined: 2023-06-22
#42 · Quote Reply

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 starte...

Fun fact, a bunch of proprietary engines were just local alterations based on another licensed engine.

https://en.wikipedia.org/wiki/First-person_shooter_engine

9
ą¶žmir lemmy.ml Amir@lemmy.ml
Joined: 2023-06-01
#43 · Quote Reply

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

I get that the designers wanted to have compile time static replacement but this was not the way to do it.

7
Kairos lemmy.today LodeMike@lemmy.today
Joined: 2023-12-26
#44 · Quote Reply

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.

4
RunjamboJenkin infosec.pub RunjamboJenkin@infosec.pub
Joined: 2025-01-18
#45 · Quote Reply

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 starte...

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

4
Jyek sh.itjust.works Jyek@sh.itjust.works
Joined: 2023-07-01
#46 · Quote Reply

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 starte...

Luckily games that have functions or features that are not present in UE5 or some other publicly accessible engine, still have to add those features to the engine to make use of them. This applies to lots of games and developers. The art of building an engine still is necessary for many developers, even those using UE5 or Unity. So worst case scenario, they have to switch to an inhouse engine development cycle and spend that much more time and money building an engine that makes them nothing in return on the hope that the engine they make, will save them substantial development the across future titles.

1
Sonotsugipaa lemmy.dbzer0.com Sonotsugipaa@lemmy.dbzer0.com
Joined: 2023-06-16
#47 · Quote Reply

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 t...

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

9
Doc_Crankenstein slrpnk.net Doc_Crankenstein@slrpnk.net
Joined: 2025-01-08
#48 · Quote Reply

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

I'd say the same for the RE Engine but unfortunately they have confirmed they want to turn it into an AI-Generation Engine, so that one is sunk.

4
begrudgedcarfolk sh.itjust.works begrudgedcarfolk@sh.itjust.works
Joined: 2026-09-19
#49 · Quote Reply

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

Unpopular opinion: fuck remedy and their draconian EULA on single player games.

1
chunes lemmy.world chunes@lemmy.world
Joined: 2025-04-08
#50 · Quote Reply

Has anyone ever invented actual good modern language yet?

Yes, it's called Odin.

3
Wirlocke lemmy.blahaj.zone Wirlocke@lemmy.blahaj.zone
Joined: 2023-07-01
#51 · (edited) Quote Reply

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.

41
Post Reply Page 1 of 2   Goto page 1, 2 Last »
Back to top