7 ms·
Ask HN: Learn Graphics Programming, Recommendations?
Essentially the title. I wanted to explore something different to what I’m doing on a daily basis.
Can you recommend good resources? Books work best for me but I’m open to anything. The more practical the better.
- abhi9u 3y agoRay Tracing in One Weekend: https://raytracing.github.io/ https://raytracing.github.io/
- sn9 3y agoAnd for perhaps longer than a weekend: The Ray Tracer Challenge A Test-Driven Guide to Your First 3D Renderer [0] [0] https://pragprog.com/titles/jbtracer/the-ray-tracer-challenge/ https://pragprog.com/titles/jbtracer/the-ray-tracer-challeng...
- wizzerking 3y agoGPU Gems https://github.com/yyc-git/MyData/blob/master/3d/GPU%20Gems/GPU%20Gems%203.pdf https://github.com/yyc-git/MyData/blob/master/3d/GPU%20Gems/... https://www.nvidia.com/en-us/drivers/gpu-gems-home/ https://www.nvidia.com/en-us/drivers/gpu-gems-home/ Free Computer Books https://freecomputerbooks.com/ https://freecomputerbooks.com/ Other free book sites https://freecomputerbooks.com/otherBooks.html https://freecomputerbooks.com/otherBooks.html Some computer & Machine Learning Free Books Creative Commons License Graphics Gems Series Use ayour favorite search engine https://www.intechopen.com/ https://www.intechopen.com/
- beardyw 3y agoI made earth globe for something I was building on the web. You can get good map points and you can (should) use three.js Very satisfying to see it spin and tilt. Fun.
- doubloon 3y agoi think these days one of the quickest ways to ramp up is to subscribe to Chat GPT 4 and ask it "please help me write a graphics program to draw a cube", or some other simple example, then ask it to explain each piece of code and what it is doing.
- vagrantJin 3y agoThis would work wonders for me as I like to see and read code. then ask more questions until I can understand. in conjuction with the links and books - I think learning will be changed forever.
- karmakaze 3y agoI was just thinking along these same lines and found myself considering using raylib (building on SDL2) for a small/fun side project. It has bindings for Zig so that might be a good combo, having used neither :-) The list of language bindings is impressive[0]. [0] https://github.com/raysan5/raylib/blob/master/BINDINGS.md https://github.com/raysan5/raylib/blob/master/BINDINGS.md
- agarren 3y agoThere was a similar post a week or two back, and many of the responses mentioned scratchapixel [0]. It seems like a solid recommendation, and I got lost in a couple of the links. [0] https://www.scratchapixel.com/ https://www.scratchapixel.com/
- brudgers 3y agoProcessing.org
- beeburrt 3y agoHere's a free book: https://www.gabrielgambetta.com/computer-graphics-from-scratch/ https://www.gabrielgambetta.com/computer-graphics-from-scrat...
- ttoinou 3y ago1000% Shadertoy.com The book of shaders or youtube tutorials about shadertoy
- barrysteve 3y agoLearnOpenGl.com Possibly a smidge outdated. Goes from blank window to rendering 3d meshes with advanced lighting techniques (HDR, SSAO and more). Heped me understand shader pipeline, so I recommend it. https://learnopengl.com https://learnopengl.com
- RossBencina 3y agoGoing more in the computational geometry direction, in addition to some interesting algorithms in the Graphics Gems series: O'Rourke, "Computational Geometry in C 2e". Deals with the basics in a principled way. Start here for fundamentals like a good algorithm for intersection of two lines, or inside/outside polygon tests (don't depend on garbage blog posts for well studied fundamentals like this). The book's webpage is https://www.science.smith.edu/~jorourke/books/compgeom.html https://www.science.smith.edu/~jorourke/books/compgeom.html Ericson, "Real-Time Collision Detection". Deep dive into practical collision detection algorithms. And for Shaders, check out Inigo Quilez and ShaderToy: - https://www.youtube.com/@InigoQuilez https://www.youtube.com/@InigoQuilez - https://iquilezles.org/ https://iquilezles.org/ - https://www.shadertoy.com/ https://www.shadertoy.com/ You should be able to get your hands dirty pretty quickly implementing cool things on ShaderToy.
- z303 3y agoTiny Code Christmas just started today. That is geared towards beginners in the demoscene and everyone is very friendly https://tcc.lovebyte.party/ https://tcc.lovebyte.party/
- vineyardlabs 3y agoPersonally I've recently discovered the YouTube channel Acerola [1], who works as a graphics programmer at Intel I believe and posts highly technical but also entertaining videos on real world rendering/shader techniques that are actually in use in games. There's also pbr, which I understand is a legit professional level physically based rendering engine that is fully open source and documented in the form of this text[2]. [1] https://www.youtube.com/@Acerola_t https://www.youtube.com/@Acerola_t [2] https://pbr-book.org https://pbr-book.org
- deleted 3y ago[deleted]