Live data from Hacker News

Ask HN: Resources for Learning Graphics Programming

news.ycombinator.com

51–57 of 57 posts

Re: Ask HN: Resources for Learning Graphics Programming

#51
Me and a friend build our own Graphics engines based on https://learnopengl.com I can highly recommend this to everyone who gets started with computer graphics. It is a lot of new information but not the most modern Graphics library, but the information will help you understand the field and pickup any other graphics library quicker. Once I had a small project up and running I started looking at https://emscripten.org/ to combine it with some web experiments and more easily share my work with other over the web. I also started looking at https://vulkan-tutorial.com/ and https://webgpufundamentals.org/ to experiment with geometry shaders.

Next to Realtime Graphics you could also dabble into the world of Ray-Tracing. Personally I'm still quite new to this field but my master thesis supervisor also gave lectures at an other university where they recoded a lot of lectures during Covid. Advanced Computer graphics at the UU for example https://ics-websites.science.uu.nl/docs/vakken/magr/2021-202... The course recommends https://raytracing.github.io/ as a resource to students, and I can also recommend this.

As a small note to end with, the website(s) of professors giving computer graphics are a true tressure trove of information: https://jacco.ompf2.com/ https://www.3dgep.com/cpp-fast-track-1-getting-started/

Re: Ask HN: Resources for Learning Graphics Programming

#53
post #7

I think the best place to start is by getting your hands dirty with a real deal API. https://learnopengl.com/ is a great place for that. Oh and the best part is that the book is FREE. You'll need to be comfortable with C++, but even without in-depth knowledge of the language, the tutorial takes you quite far.

https://learnopengl.com/ is a super popular recommendation, but I found it a bit lacking when trying to understand how things work. I tried using a college book instead, Computer Graphics Programming in OpenGL with C++ and found it more approachable.

Hot take: OpenGL is lacking when trying to understand how things work. OpenGL hides a lot of state from the API because it has a lot of cruft from when Graphics cards were ASICs. DirectX 11 and especially 12 and Vulkan are closer to the actual hardware capabilities of the GPU and state is more explicitly passed between stages rather than having a state machine hiding somewhere in the driver

Re: Ask HN: Resources for Learning Graphics Programming

#55
post #40

I see it's still up after 20+ years: NeHe at https://nehe.gamedev.net/ In 2005-ish I followed what is now called "legacy tutorials" and I just learned a lot about how rendering pipeline works in OpenGL + some basic 3d math and physics. The rope tutorial ( https://nehe.gamedev.net/tutorial/rope_physics/17006/ ) was my favorite. Also, my highschool math teacher was in awe when I was so familiar with vector math and mat…

Sorry, no offence, but this is a terrible resource to start learning graphics. First of all good luck downloading those examples (most of the links are broken), then compile them (many examples were made for Visual C++ 6.0 or some niche IDE from 2000s). I loved NeHe around 2005 as well, learned a lot from it, even though later switched to web development and never used that knowledge. But this days better to choose s…

None taken. Yes, it's not as polished as some of the more modern resources but I still see value in learning about the old ways.

Also, in case you missed it, most lessons have contributions for many languages and platforms. Just scroll all the way to the bottom. You can download the Perl variant of the 1st lesson if you want.

Re: Ask HN: Resources for Learning Graphics Programming

#57

These courses always looked fantastic to me: https://pikuma.com/courses/learn-3d-computer-graphics-progra...

That would be my recommendation as well. this was the first resource that made me really grok 3d graphics in an easy and approacheable way. the course is mostly speaking about cpu rendering but the math foundation is all there and it's nice to also be able to code a simple implementation together.

Good one.

Post reply on HN