Live data from Hacker News

What to learn to be a graphics programmer

blog.demofox.org

91–100 of 251 posts

Re: What to learn to be a graphics programmer

#91
post #70

Today, 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…

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/

Re: What to learn to be a graphics programmer

#92

Earlier quoted context omitted.

there is absolutely no sense in which the SVD/PCA decomposition is just a rotation matrix. you should probably review your linear algebra textbook (hint: scaling is extremely important).

PCA is an orthogonal transformation of the covariance matrix, so like all orthogonal transformations, it’s _literally a rotation_ in N-dimensional space. SVD is more complex but ultimately it’s just another useful decomposition of a matrix. I’m not sure why you’re both negative and dismissive. Transformation matrices in graphics are a good and approachable way to get used to linear transformations, which turn out to…

> PCA is an orthogonal transformation of the covariance matrix

Yes you're now the second person the literally repeat the same thing I've already stated extremely clearly and succinctly: PCA is not just rotation (hint: you also need to understand covariance).

> I’m not sure why you’re both negative and dismissive. Transformation matrices in graphics are a good and approachable way to get used to linear transformations, which turn out to be useful pretty much everywhere.

I've already literally drawn the analogy/metaphor that I've drawn: if you think 2d/3d rotation matrices as they are used in graphics is any kind of introduction to the matrices in ML (modeling linear transformations or otherwise) then you're probably the type of person that believes that cash registers any kind of introduction to finance.

My point is not that hard to understand. Graphics in no way, way, shape, or form prepares you for ML. I don't understand why this is so controversial.

Re: What to learn to be a graphics programmer

#93
I’m not a graphics programmer but had alot of fun building a raycaster in C. Fun math and actually really simple relatively.

I’m going to revisit raycasting with a browser based raycaster from scratch.

I’m just finishing up a webgl + canvas game engine and game for a 2D top down grid strategy game first

Re: What to learn to be a graphics programmer

#94

Today, 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…

[deleted]

Re: What to learn to be a graphics programmer

#95

Earlier quoted context omitted.

PCA is an orthogonal transformation of the covariance matrix, so like all orthogonal transformations, it’s _literally a rotation_ in N-dimensional space. SVD is more complex but ultimately it’s just another useful decomposition of a matrix. I’m not sure why you’re both negative and dismissive. Transformation matrices in graphics are a good and approachable way to get used to linear transformations, which turn out to…

> PCA is an orthogonal transformation of the covariance matrix Yes you're now the second person the literally repeat the same thing I've already stated extremely clearly and succinctly: PCA is not just rotation (hint: you also need to understand covariance). > I’m not sure why you’re both negative and dismissive. Transformation matrices in graphics are a good and approachable way to get used to linear transformations…

> My point is not that hard to understand.

Have you done any serious graphics programming? Even at the OpenGL 1.x level? What you’re saying just doesn’t make sense.

Just because you’re rotating and translating things in 3-space doesn’t negate that you have a stack of transforms that relate a point in world space to one on screen space and you want to be able to project from one to the other.

Nor does it make it any easier when you need to think about how to stack transforms to achieve effects like rendering a mirror.

I honed a lot of useful practical skill with linear algebra trying to get graphics to do what I wanted. And I say this as someone who’s spent the bulk of my career using linear algebra in the context of quantum mechanics, physical simulation, and ML-adjacent areas.

Re: What to learn to be a graphics programmer

#96

Earlier quoted context omitted.

Ridiculous justification. "Where is todays Jon Carmack?" Where is the "John Carmack" of ML? Where is the John Carmack of physics? This hero worship crap needs to be left in the past. There isn't a singular active researcher you can point to and say "this person has made the field what it is today". There are very influential papers, but they all have multiple contributors. Is that really a valid reason to not engage…

Physics is a weird one to bring up, because even compared to other fields, it's one where breakthroughs are frequently the result of relatively singular genius. Newton, Faraday, Planck, Einstein, their discoveries were generally not incremental progress along existing lines of inquiry like most physics research is, they made pretty radical changes to our understanding of the world writ large. In comparison, Carmack i…

No, that is exactly the reason I am bringing up physics. There used to be a time when a singular person could make an outsized impact. In the recent past though, this has not been the case: significant breakthroughs are usually the result of coordinated effort of many individuals. Is that really a valid reason to not do physics?

Re: What to learn to be a graphics programmer

#97

Today, 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…

Boooooooo

Keep learning yung ones

Re: What to learn to be a graphics programmer

#98
post #59

Earlier quoted context omitted.

Out of curiosity, which fields would you say are the best to just be mediocre in?

Nepo baby. Joking (sort of). I can't say I know of any in the fields I'm familiar with. I've watched tech get increasingly top-heavy since the covid hiring boom and bust, although it was already trending that way. There are a lot of fields dominated by boomers on the verge of retirement that are the safest bet for people who want to be good and make a good living but don't care to be extraordinary. I've heard that fr…

Has tech really gotten more top heavy?

I feel more like people kept flooding into the middle and bottom, and companies that used to focus on top talent got watered down with those middle and bottom types.

A lot of the people getting laid off from Google and Meta would not have been hired at all in those places 15 years ago, for example.

Re: What to learn to be a graphics programmer

#99

Earlier quoted context omitted.

What if I just want to program some rendering engine for a game that looks like DOOM 3 and its predecessors? I think that’s still quite doable?

Old 3D engine guy here. I highly encourage folks to make a 3D engine for fun and learning. Shipping a game with it would be a cherry on top. Come join us in r/graphicsprograming, r/gameenginedevs and the graphics programming discord.

Thanks. I have 3 days of vacation ahead so will use the time to sort out the math first. Code shouldn’t be too hard for a very simple 3d demo.

I tried my hand on hand a while ago and found out I couldn’t make out how many pixels to draw, say, a line in the 3d world. It involves a transformation to the world and another transformation to the camera, so I couldn’t make it out without any study.

This is probably very trivial so hopefully 3 days is good enough.

Re: What to learn to be a graphics programmer

#100
post #52

Earlier quoted context omitted.

> Don’t be like me! I wasted my entire life That's not the argument being made here. The field is changing. I had a good career in graphics, my life wasn't wasted at all. That doesn't mean a college student would have the same experience starting today.

Well, of course not, unless you are claiming that a future career in graphics is a bad idea, and there is no way you could say that with any reasonable certainty, I do not get the argument at all. The field is always changing. You could find people in the 80s saying ‘I had a good career in graphics, a college student would not have the same experience starting today’

100% this. My dad told me not to get into it because of the web (he was a C guy) and instead I went head first into it AND did graphics programming (using C#, ewwww) just for the fun of it. Never discourage from someone wanting to learn, discourage the ego that thinks we need another John Carmack.
Post reply on HN