What to learn to be a graphics programmer
211–220 of 251 posts
Re: What to learn to be a graphics programmer
#212Do you want to make games, or do 3D engine programming? If you want to make games, use an existing engine. Unreal Engine, Unity, Godot, and Bevy are good choices. You'll learn the higher level issues of graphics, not how to push pixels around. The real problem is making it fun. If you want to do 3D engine programming, be aware that there are too many bad game engines. In Rust land, where I am, there are three failed…
> Building a game engine takes about two years to get to the My First Renderer point.
I wonder what starting point and success criteria do you assume for that 2 year timeline. About a year ago I wrote a deferred renderer with dynamic lights, and shadow mapping, and few post effects in about a month of free time (Less than a week of full time work).
> This is why most indy games now are 2D. That's do-able. Often in HTML/JavaScript.
I don't think that should count against them. Most serious works is done on 2D interfaces. And both WebGL and plain old 2d canvas are very capable nowadays. And quite a few hit indies are 2D.
> If you want a job, be aware that the game industry sucks
Sure but basically everything uses the GPU nowadays. Writing and debugging ML workloads, data visualizations, HUDs and just user interfaces in general requires some understanding more often than not.
Re: What to learn to be a graphics programmer
#213Today, I would not recommend anybody to go into graphics programming: I started in 2001, when NVidias first Geforce 1 ("the Gigatexl shadercard") was first announced: The field developed since then with so much speed and innovations, it blows my mind of. Compared to what we could do 25years ago, the tech today is just fu*ing impressive. Though, with this impressiveness comes a big "but": The space is developing at a…
I really dislike people that got into a thing and then try to discourage others. “Don’t be like me! I wasted my entire life” which is bullshit from a jaded person that lost passion. Telling people to stay away from graphics programming is not how to entice tomorrow’s John Carmack. So here’s another perspective. If all you have done is web apps and Kubernetes, for example, do get into graphics programming. The feedbac…
Ah yes:
"The ability to play chess is the sign of a gentleman. The ability to play chess well is the sign of a wasted life" [1].
I'm not a graphics programmer so I'm not in a position to gatekeep but I fully agree with the sentiment in the OP (I mean KellyCriterion's post). Do you really want to dedicate your life to an industry that will chew you up and spit you out just to release a borken AAA game that will go down in review flames for ripping its players off?
Side projects, sure. But, professionally? There's gotta be better ways to pay the bacon and bring home the bills.
____________
[1] https://www.chess.com/forum/view/general/favorite-chess-quot...
Re: What to learn to be a graphics programmer
#214Today, I would not recommend anybody to go into graphics programming: I started in 2001, when NVidias first Geforce 1 ("the Gigatexl shadercard") was first announced: The field developed since then with so much speed and innovations, it blows my mind of. Compared to what we could do 25years ago, the tech today is just fu*ing impressive. Though, with this impressiveness comes a big "but": The space is developing at a…
I really dislike people that got into a thing and then try to discourage others. “Don’t be like me! I wasted my entire life” which is bullshit from a jaded person that lost passion. Telling people to stay away from graphics programming is not how to entice tomorrow’s John Carmack. So here’s another perspective. If all you have done is web apps and Kubernetes, for example, do get into graphics programming. The feedbac…
I said the technology is accelerating at such a scary-high speed, that it is no more fun and very hard to earn any merits today, which was quite possible over the last decades.
(and for me personally: Yes, Im happy to be no more involved, though I profit from this experience very often, even if Im in a completely different sector today)
Re: What to learn to be a graphics programmer
#215Earlier quoted context omitted.
I really dislike people that got into a thing and then try to discourage others. “Don’t be like me! I wasted my entire life” which is bullshit from a jaded person that lost passion. Telling people to stay away from graphics programming is not how to entice tomorrow’s John Carmack. So here’s another perspective. If all you have done is web apps and Kubernetes, for example, do get into graphics programming. The feedbac…
What was that quote about chess... ? Ah yes: "The ability to play chess is the sign of a gentleman. The ability to play chess well is the sign of a wasted life" [1]. I'm not a graphics programmer so I'm not in a position to gatekeep but I fully agree with the sentiment in the OP (I mean KellyCriterion's post). Do you really want to dedicate your life to an industry that will chew you up and spit you out just to relea…
Re: What to learn to be a graphics programmer
#216Earlier quoted context omitted.
What was that quote about chess... ? Ah yes: "The ability to play chess is the sign of a gentleman. The ability to play chess well is the sign of a wasted life" [1]. I'm not a graphics programmer so I'm not in a position to gatekeep but I fully agree with the sentiment in the OP (I mean KellyCriterion's post). Do you really want to dedicate your life to an industry that will chew you up and spit you out just to relea…
Dont forget funny "perks" like "crunch-time" and "pre-crunch-time" :-D
Sad though. The most fun you can have with programming is maybe the least fun programming job of all.
Re: What to learn to be a graphics programmer
#217Do you want to make games, or do 3D engine programming? If you want to make games, use an existing engine. Unreal Engine, Unity, Godot, and Bevy are good choices. You'll learn the higher level issues of graphics, not how to push pixels around. The real problem is making it fun. If you want to do 3D engine programming, be aware that there are too many bad game engines. In Rust land, where I am, there are three failed…
If I wanted to program a 3D game, I would choose UE5. I'm not, however: I made my own engine (`graphics` crate) and own vector/quatrnion lib (`lin-alg` crate), used by no one other than myself, to view chemistry and molecular bio visuals, with convenience controls etc. And it's suitable as a general purpose engine for rendering simple, non realistic scenes. I'm surprised I had to do this, but didn't find any suitable existing solutions.
Re: What to learn to be a graphics programmer
#218Earlier quoted context omitted.
This is like saying being a cashier prepares you for a job in high-finance because both involve arithmetic on dollars and cents. I've been in ML for ~5 years in multiple FAANGs and I have never seen a rotation matrix .
TBF, I bet any graphics programmer would be a boon for a ML shop for their GPU/performance optimization knowledge alone.
Re: What to learn to be a graphics programmer
#219Earlier quoted context omitted.
Couldn't disagree more. I've only recently started digging into graphics programming and I've found it incredibly rewarding. It's the _one_ area of expertise that I don't yet have that has been preventing me from solo-developing a 3D game engine. It takes five minutes of trawling through the videos on the GDC Vault to see all of the clever and interesting ways modern graphics engineers are eking every bit of performa…
Well, then: "merry Christmas" so to say: https://flipcode.com/archives/
It was THE ressource back then! :-)
Re: What to learn to be a graphics programmer
#220Earlier quoted context omitted.
Sadly, Vulkan is really painful way of learning graphics programming. Doing almost anything requires large amounts of boilerplate. Almost everything you need to do, for example to make shadows, requires just 10x more code than the technique fundamentally requires. For learning graphics programming, in my opinion, writing software renderers is much more enjoyable path. Code is less, the code you write touches fundamen…
Not necessarily, some folks advocate that with modern compute APIs we are better doing "software" rendering, but on the GPU. By the way, this is what renders like OTOY Octane do.
And even with GPU compute, you benefit from HW acceleration with the HW texture unit.