Live data from Hacker News

How do I become a graphics programmer?

gpuopen.com

171–180 of 207 posts

Re: How do I become a graphics programmer?

#171

I have the horrible feeling that, if you start to become a graphics programmer now, by the time you're done, AI will be doing it. If you want to make games, learn a game engine. The big 3D ones are Unity (not too hard), Unreal Engine (hard, used for AAA titles), and Bevy (in Rust, open source.) There are a ton of 2D engines, mostly used to do retro stuff.

I expect AI will consume game design jobs long before low level graphics programming. > The big 3D ones are Unity (not too hard), Unreal Engine (hard, used for AAA titles), and Bevy (in Rust, open source.) Bevy is pretty much unheard of outside the rust community and also quite new (= hasn't yet proven itself). Godot would be the engine most likely to win the third spot. I would recommend against investing time learn…

Agree about Godot. Bevy is moving up but not there yet.

Also, the suggested developer machine for UE5 with everything turned on is expensive. 64GB of RAM and a graphics card with a price over $1000 are needed to build and run the Matrix Awakens demo. And it will take hours to build. The result is a playable game that looks like a Hollywood-grade movie. You have the sources and can mod it.

Unity's change to their business model has annoyed everybody in the industry.

Re: How do I become a graphics programmer?

#173

Earlier quoted context omitted.

Well, as someone looking to get into this field, I kind of disagree. A lot (if not all) job postings about graphics programming require you to know C++ beforehand. Sure, you can have another role, like gameplay programmer, and slowly work your way in graphics, and it's probably easier to do so, but in fine, for the graphics programmer role, C++ is required. What you are describing is more about someone who wants to b…

People shouldn't be disillusioned though when they find out that there's not such a big need for the traditional role of graphics programmer who wrestles directly with lighting models in shader code and shadow rendering implementations. 95% (or so) of game industry jobs is plumbing engine-provided components together, writing some very high level gameplay code and maybe a bit of inhouse tools development. The hard re…

But how does one become one of those engine developers?

Re: How do I become a graphics programmer?

#174
post #173

Earlier quoted context omitted.

People shouldn't be disillusioned though when they find out that there's not such a big need for the traditional role of graphics programmer who wrestles directly with lighting models in shader code and shadow rendering implementations. 95% (or so) of game industry jobs is plumbing engine-provided components together, writing some very high level gameplay code and maybe a bit of inhouse tools development. The hard re…

But how does one become one of those engine developers?

https://engine-programming.github.io/

Re: How do I become a graphics programmer?

#175

Earlier quoted context omitted.

What do you think wgpu is if not a graphics API?

You can use it in a browser without compiling anything. Have you ever taught someone from scratch? You don't invent nonsense rabbit holes and barriers to entry to make things harder.

Did your try using it?

Why? Some people prefer typed languages.

Re: How do I become a graphics programmer?

#176
post #168

Earlier quoted context omitted.

Okay, you could… and if you’re honest enough to accept answers like "it’s over 20 years old" I guess any expert could answer that. My main point remains though: if even Stroustrup or Stutter can’t answer 95%+ questions of this kind, it would show beyond a doubt that C++’s complexity got completely out of hand. Even Stroustrup’s humble bragging about being a "7" at C++ looks real bad. If I’m not a 10 at a language I c…

My example question was actually in regards to Go, made public in 2009, with 14 years of history. The bonus round of the same question would be, "name one feature that was removed before 1.0". We could make this question even more fun, if taking into account gccgo specific extensions, or runtime changes as well. To put it bluntly, if someone shows up calling themselves an expert, I expect World Cup skills towards the…

While it may not be strictly correct semantically, I'd expect most people to understand "Go expert" as "expert Go programmer", not as some sort of Go historian.

Re: How do I become a graphics programmer?

#177

Earlier quoted context omitted.

You can use it in a browser without compiling anything. Have you ever taught someone from scratch? You don't invent nonsense rabbit holes and barriers to entry to make things harder.

Did your try using it? Why? Some people prefer typed languages.

Go teach an inexperienced person rust, graphics, rust compilation and webgpu all at the same time and let me know how that goes. It's pretty obvious you haven't actually done what you are saying here.

Re: How do I become a graphics programmer?

#178

I'd recommend the Pikuma course Graphics From Scratch[0]. The first thing you do is write a set_pixel function utilizing SDL and the rest of the course is all your code, every matrix operation, every vertex transformation, every triangle rasterization. You calculate what every individual pixel should be colored. [0]: https://pikuma.com/courses/learn-3d-computer-graphics-progra...

My website/book/course does the same thing, and it's freeeeeee! https://www.gabrielgambetta.com/computer-graphics-from-scrat...

I have your book. It's a great read but I would not say it's "the same thing." :)

People pay for a specific teaching style and that's absolutely fine.

Re: How do I become a graphics programmer?

#179

Earlier quoted context omitted.

Did your try using it? Why? Some people prefer typed languages.

Go teach an inexperienced person rust, graphics, rust compilation and webgpu all at the same time and let me know how that goes. It's pretty obvious you haven't actually done what you are saying here.

I will.

Re: How do I become a graphics programmer?

#180

Earlier quoted context omitted.

Well, as someone looking to get into this field, I kind of disagree. A lot (if not all) job postings about graphics programming require you to know C++ beforehand. Sure, you can have another role, like gameplay programmer, and slowly work your way in graphics, and it's probably easier to do so, but in fine, for the graphics programmer role, C++ is required. What you are describing is more about someone who wants to b…

There’s two or three strands of graphics programming though: Plumbing - Delivering data efficiently from the game engine to the GPU often in a platform agnostic way with efficient implementations underneath. Art Pipeline - Delivering data efficiently from the artist tools to the game engine. GPU Programming - Creating visual effects, shaders, compute shaders and tools around these to empower artists. All of these use…

Yeah, thats the part they don't tell you in school. Or hell, it wasn't even a thing when I was in school. 2012 was right around that time where PBR became popular and Graphics programming started to diverge. Right before Mantle was a thing and industry would start making everything more explicit. I guess I was just in a very important crux.

The more unfortunate news is that job applications also don't tell you this. Had plenty an interview as someone looking for "plumbing" graphics roles that clearly wanted a "GPU programming" role instead. Or heck, the role was more for a Tech Artist.

Of course, the actual interview is a complete crapshoot as well. And that's where the "but I need to know C++ and low level concepts" probably rears its ugly head. But then again, what software engineering interview these days isn't?

Post reply on HN