Just write your own graphics api from scratch in C every time you want to render a fucking black square...

>just write your own graphics api from scratch in C every time you want to render a fucking black square, bro *glugs almond milk*

Attached: almond_boy.jpg (646x387, 45K)

Other urls found in this thread:

youtube.com/watch?v=pW-SOdj4Kkk
twitter.com/NSFWRedditVideo

Why do you care what some hasbeen thinks?

that's all fine bit I am more amused with his autistic tools

>im one of the few true remaining programmers, bro, just me & Johnny Blow
>takes 5 years to make a mediocre platformer

>you can live in oop lalaland or you can write like a professional
>wastes half his time wrestling emacs keybindings and yelling at the camera

Who is this faggot?

>oop is shit, it's a terrible paradigm, vtable lookups are inefficient
>writes psuedo-oop with structs anyway

>I'm a true programmer.
>thinks programming is about making gaymes.

Attached: 1555216104384.png (800x949, 356K)

Handmade Hero, a professional burnout who spends his days insulting modern programming languages with no coverage.

op just leave, have casey or john banged your sister so u mad?

Casey something or another from Handmade Hero, a dude writing his own game engine and then came from scratch in "C with classes" C++ like a true boomer.

He's a complete asshat.

I have nothing against Blow, I think he's a great programmer. Casey is a dumbfuck, though. Caustic manchild

I remember that one episode where he chose aggressive struct (de)compression instead of one single vtable lookup. He supposedly worked in R&D his entire life but couldn't instead yell at compiler engineers for in-register vtables for instant lookups.

I notice that shit all the time. It's almost like features such as dynamic dispatch on generic functions were incorporated in languages since they were a frequent, recurring problem.
But I guess people truly love reinventing the wheel all the time.

You do realize that he's friends and ex-coworker with one of the most prominent middle-ware companies in the industry right?
A group that consistently favors a similar C style because of the requirements on their libraries.

Arguing that he's taking forever on a teaching project where he actively pretends to not know what he's doing for teaching purposes when he's working 10% work weeks (40hrs assumed) on and off, explaining what he's doing to newbies while trying to verbalize his every thought. That's also very silly.

He's also the conceptual inventor of immediate mode gui which is growing rapidly in use within games. And he's very clearly one of the few people who actually gives as shit about effective code reuse.

Do you really think he'd get so many senior developers on board for his very small conference if they didn't think the general idea was good?

And with regards to language bashing he's hardly ever doing that. It's just what some people who cut out pre-stream portions find entertaining. He's constantly faced with that kind of question though.

>Casey is writing C with classes
Absurd. It doesn't take any time to figure out that's just not the case.

Regardless of how applicable you think any of that is to whatever nightmare you work in you should recognize that there's no question that there's a sphere where that kind of thinking helps.
You probably didn't watch that at all. It's an experiment and it's not for performance reasons he did that. Sure some aspects of it are arguably performance oriented on some axis but just about every choice has something like that.

This entire thread is just baseless mockery.

the entirety of Jow Forums is baseless mockery ya sperg lmao

how does casey's almond milk cum taste?

Man, nice timing, you were just waiting for a legit reply.
Is this all samefaggery?

>You probably didn't watch that at all.
I painstakingly watched the entire episode and his idiotic explanations. Do current game engines employ that? No, they use C++. Then what this industry outsider says is irrelevant.

>do current game engines employ a system he made up right then and there?
No of course not. He would have described it as someone else's if anyone knew of it. And what part of experiment do you not understand? I don't know the full game design. Nobody does but Casey it seems. But it has been described as a massive combinatorics game. That everything interacts with everything in some way.
I don't know why he felt that preferable but there may be a reason. Even if there wasn't any reason there's value in not just copying what everyone else is doing. That's the point of the show. It's not to make a tutorial on how to recreate unity/UE4 from scratch.
I don't believe you've watched that if you had to be told this. I wouldn't be surprised if he's very explicit about the nature of that experiment in the very first video.
>no they use C++
Not even relevant. You could do the same thing using C++ features. It's not a replacement for any of that.

Even normal entity systems aren't that heavy on C++ features. ECS is by far the most common.

>the entirety of Jow Forums is baseless mockery
No that sounds like lolcow or something (I don't recall these things).
Maybe if you're only associating with the trashiest of thrash places here that's the case.

Is this the guy that's been creaming his pants from some chromosome overlord engineer finding out about Minkowski sum?
I remember coworker showing me couple of his breakdowns. Funny guy.

Attached: 30264928_611320389209962_8331799628485671354_n.png (671x407, 188K)

It's really obvious that Casey only writes middleware and has never written an actual game
and intermediate mode GUI is only good for quick hackjobs

That's why it ships everywhere in dev tools now I guess? Microsoft recently joined the ranks. Not that I'd count that as a point of pride for the library.
>Casey only writes middleware
Certainly the most important aspect with regards to game engine development. Which that project is all about right now.

It's pretty absurd that the people you talk to in here just straight up drop any topic that's replied to. It's almost like you don't know anything.
That almost never happens on this board. Not to me anyway.

>it ships
Dear imgui obviously. It's he most popular library of this mode.

>if anyone knew of it
It's nothing groundbreaking or original. Nobody has employed it because it's ugly trash code.
>there's value
Copy what million dollar companies are doing and you can't go wrong.
>using C++ features
Then that would not be dogmatic C++ but a hack.

>That's why it ships everywhere in dev tools now I guess?
what, imgui or caseys middleware?
Most games use incredibly inefficient shit like Scaleform for GUIs. Imgui is basically a meme, all the libraries that do it just hide state behind the scenes anyway, so what's the point?
The middleware he worked on is great, Granny animation specifically, and Casey is actually a good programmer - for middleware. Writing games or even game engines plays by a different set of rules and autistically stamping your feet and saying "dont use OOP vtables too slow" for that makes absolutely no sense

To be fair, the way inheritance (especially multiple) is implemented in C++ is indeed inefficient and inevitably leads to need for restricting initialization to constructors, which in std lib tripled the API of everything. There is spacial inefficiency and - with multiple inheritance - overhead unnecessary several instructions for every virtual call in comparison to other possible implementations; with benefit of using single primitive for inheritance, embedding and interfaces.

>a two instruction table lookup is inefficient
got a better implementation?

It's two instructions for single inheritance. This is on par with other implementations. This doesn't keep up for multiple inheritance.
You can't use single inheritance is sane way for how would you use interfaces.

>vtables too slow
That's his general disapproval of double dispatch maybe?
With regards to vtables I recall he's upset that they're so underpowered in C++. Or that virtual functions and dynamic polymorphism are nerfed by the C++ standards committee because they're giving the programmers no control over implementation.
>imgui or caseys middleware
Casey's middleware is obviously shipping everywhere. No of course that's not what I'm pointing out. Imgui is just a very prevalent UI in game engines now. Unity has their own imgui built in and it's even in a lot of their modern examples now. I was talking specifically about dear imgui though. It's unique look nobody bothers to change makes it easy to spot.
>all the libraries just hide state behind the scenes anyway what's the point?
The point is the interface. That's the entire idea. That's all imgui is. Expecting more is asking for more than you can reasonably expect. It was never the goal to surface UI state. The goal in that aspect is very clearly to not make redundant state a programmer burden.
Why do you pretend to know anything about this user?
In the limited space of C++ there is none to be had. The standard limits you so hard even the most expert compiler developer probably could never beat that with the space they have to move in.
Maybe that's not quite true but I'm confident the C++ compiler devs do a good job in that aspect.

Not a software problem. The design is sound and follows specs. Compilers should put tables in registers.

You should be using Motif for drawing widgets and X11 for rendering shit on the screen. Both are well tested and well documented industry standards. Motif applications are also portable to non-Unix environments.

*glugs Smirnoff*

Attached: 1559933884146.jpg (810x991, 148K)

>compilers should put tables in registers
But they can't because they do other things than calling functions.

>Imgui is just a very prevalent UI in game engines now
According to whom? I've never fucking seen it, and it's definitely not the best solution for anyone dealing with a non-trivial UI, like I said everyone uses gigantic bloatware like Scaleform
Casey just hates OOP because he hates OOP. There's no reason behind it, and it's fine if he doesn't like it, it's not the best solution for many problems, but to act like you shouldn't use it or it isn't a great solution to many of the problems you face in game development is just stupid and objectively wrong

are you serious or not knowing how C++ is designed?

I'm serious, you can reduce vtable lookups to register cheks.

>just put vtables into registers
>just put x into registers
Yes, that's the solution to all problems. We need MOAR REGISTERS!!! Thanks for solving computing

I mean, yes? Faster memory closer to the CPU is how we make things run faster. Registers and cache are your friend.

vtables arent slow

This but unironically. Modern computers are made for high bandwidth, which is something workstations and servers need. Desktops rarely see 100% CPU usage so fewer transistors and more (bigger) registers would provide a low latency environment. Intel and AMD engineers know it's easier to make one-design-fits-all CPUs.

Of course you haven't seen it you dummy. You don't work in videogames.
>everyone uses bloatware like scaleform
You're talking about two completely different areas here. Again, you don't work in or with videogames.
Patch gcc&clang. Don't tell MS.
Then I'll believe you.
This is such DK it's unbelievable. Yes, you've got this theoretical improvement to CPUs. Why do you think amd and Intel aren't doing more of what you're telling them to do.
So we're making vtable-machines now?

Just fuck this thread. Nobody aside from this 1 other guy is honest here.

>fewer transistors and more (bigger) registers
LARPer spotted. Registers ARE transistors, massive groupings of them actually. stick to software Gurpreet.

>can't write his own graphics api

Attached: 1543060304330.png (990x682, 580K)

>You don't work in videogames.
I do you fucking retard
I'm not talking about different areas
Scaleform (and other middleware like it) is what most people in games use for their UIs

Did you read that off wikipedia? You understand what I'm saying.

>expert makes an exhaustive tutorial series which you can watch for free
>jealous brainlets try to nitpick the way he does things despite the project being more focused on education than real production code
Genuinely pathetic and embarrassing thread. I don't even care for his videos that much(because books are better than youtube videos), but let's not act like he isn't a better programmer than the vast majority of Jow Forums

why are you angry at people for knowing more than you and not using the only language you happen to "know"?

You don't think hardware manufacturers would've figured out by now to maybe add more registers? It must (((them)) making us buy CPUs with low register counts then. Why hasn't Alex Jones warned me about this?

C++ never gives you ptr to vtable into register, you always have to dereference pointer to instance to load ptr to vtable into register.
idk what are you talking about.

Yes, I think so. Why put any thought into design when you can tell the A.I. wafer maker to just fit more cores per die?

modern CPUs have hundreds of them, they obviously figured out

For every class there is one vtable. Put that vtable in registers.

thats alot of registers

I wish to know this as well. Maybe if people hustled as hard as they hate they'd be in the same place as their proposed target.

Attached: Fox Sour Grapes.jpg (600x357, 49K)

It's 2019.

>For every class there is one vtable
One vtable entry for every class containing a virtual function (thank god). Sometimes they overlap. Compiler devs are smart like that.
So it's not as bad as you say. It'd still be fucking awful to try to force them to always be in registers in time for dynamic dispatch.

what if we just used registers instead of ram?

People are justifibly mad at him saying things aren't correct, most of the criticism in this thread is actually valid

We should. Instead we pay hundreds of dollars for the performance of a $100 overclocked second hand xeon.

writing game engines is probably one of the harder fields in programming

It is, isn't it?

Pretty sure you're talking about different areas within gamedev. You're talking user/consumer facing UI. They're talking developer facing.
I don't believe you're a game dev either if you've never heard of imgui on the dev side. Maybe you're like Casey and never use others shit. Maybe you should say that you're like that.

>I act like an idiot here
>therefore the entirety of the site acts like idiots
Hasty generalizations should be criminal.

hackernews is the site for larping pseudo intellectuals fren

>simulating a 3D universe as fast as physically possible so as to trick apes into enjoyment
>not true programming

that's what normal people do
that's not how C++ does that

Maybe if you keep pigeonholing, people will listen to you.

Of course I have heard of imgui. I am saying nobody really uses it. Acting like there's a significant difference between user/dev facing UI shows your lack of expertise if anything. If you're writing seperate tools that don't use the game engine usually you just use the standard windows UI. If they're in-engine tools then you use your engines UI system

>more cores is just copy paste
Yeah that's why they change things all the time.

>damn bro look how smart & mature i am on a literal polynesian basketweaving forum

You're assuming the point. Maybe projecting some insecurity, I don't know what you're on about.

The underlying meta here is that computer science has been stagnant for at least the last 20 years, and the effects of the slowdown are becoming apparent as the failures of large software projects become harder and harder to sweep under the rug.
It's started to seriously impact even the games industry, which historically had a much higher standard of basic quality than enterprise level software. The entire concept of zero-day patches is fucked in the head, and should be even more fucked considering the sheer volume of space-age software tools which are theoretically at our disposal. But the cruft of the last 30 years of bad decisions has turned the software landscape into a swamp which is now sinking industries.
We have in-fucking-credible hardware compared to 30 years ago, but our software is collectively going backwards at an alarmingly increasing rate. Apps are shit. Phones are shit. Web pages are shit. Guis are shit. Games have just stopped trying.
Jonathan Blow compares this to a collapse of civilization, and I can't help but feel he's right. It feels like games are the canary in the coal mine here. As goes the games industry, so will the rest of software. youtube.com/watch?v=pW-SOdj4Kkk

We're still tacking mud onto the ball instead of taking the tougher path of simplification. The failure to multi-thread game code is a big symptom of a wider failure to move software ahead. Even as hardware advances.
And we should talk about games. It's one of the last refuges of demanding, high-performance, low-margin for error code, or at least it should be. Anything web related is already lost, and Enterprise code will never, ever produce innovation on its own.

Attached: scared-dag.jpg (640x480, 73K)

What's wrong with almond milk?

>Do current game engines employ that? No, they use C++.
They use C++ because that is the language which was in vogue in ~1995-2005 when most of these engines were first written.

Putting aside permoframnce or bloat or any of that stuff, game developers use C++ or C# solely because it's faster and easier then using lower level languages, and at the end of the day they really only care about being able to throw out x amount of lines of code per day or whatever other time unit.

The way he drinks it is to obnoxious. He fucking whips his head back at mach speed with the bottle in his stupid little carpel tunnel cast hand and loudly glugs it into the microphone, as if drinking almond milk is a part of his personality.

And the least lucrative.

>Imgui is basically a meme
I fell for the ImGui meme. I am now indeed writing my own framework wrapping Dear ImGui, because it breaks down as soon as you want internationalization, undo/redo, etc.

That being said it's still a good piece of technology. You can hack something very quickly.

It's a bit depressing that a decent programmer like him is just wasting his life entertaining (man-) children on youtube.

Wait a second... Is this guy seriously micro-optimizing a game that looks like it could have been made in Flash in 2002?

>Jonathan Blow compares this to a collapse of civilization, and I can't help but feel he's right.

That's because we ARE in a collapse of civilization.
t. your friendly Jow Forumsack