computer science / graphics
Learn Computer Graphics for Free
Learn how pixels become worlds — from the math of rendering to writing your own shaders. These free, hands-on resources are the ones graphics programmers actually recommend.
Computer graphics is where math becomes beautiful — linear algebra turns into lighting, geometry into motion. It powers games, films, visualization, and increasingly machine learning and simulation. It's also one of the most rewarding areas of CS to learn, because progress is visible: there's nothing quite like the moment your own code draws its first triangle on screen. The catch is that it demands a bit of math (vectors and matrices) and rewards a specific order: understand how rendering works conceptually, then get hands-on writing real shaders and OpenGL code. This guide covers the free resources for both halves, how much math you actually need, and the mistakes that stall beginners.
01 · FOUNDATIONS
How rendering works
The concepts and math behind turning 3D scenes into 2D images.
- Scratchapixel ↗A free, from-scratch course on the mathematics and physics of rendering — ray tracing, shading, and more, explained clearly.scratchapixel.com
- MIT 6.837 — Computer Graphics ↗MIT's full graphics course on OpenCourseWare — lectures and assignments covering the classic graphics pipeline. Free.ocw.mit.edu
02 · HANDS-ON
Write real graphics code
The best hands-on tutorials for OpenGL and shaders — build things that render.
- LearnOpenGL ↗The definitive free OpenGL tutorial — from your first triangle to lighting, model loading, and PBR. Immensely popular.learnopengl.com
- The Book of Shaders ↗A gentle, gorgeous, interactive intro to fragment shaders and generative visuals. Free and mesmerizing.thebookofshaders.com
- WebGL Fundamentals ↗Learn graphics right in your browser — clear, free tutorials on WebGL from the ground up.webglfundamentals.org
03 · HOW TO LEARN IT
How to approach graphics
Balance theory and doing, but lean toward doing early — graphics is uniquely motivating because you can see your progress. A good path: skim the rendering concepts (Scratchapixel), then immediately start LearnOpenGL and get a triangle, then a lit cube, on screen. The math (vectors, matrices, dot products, and a little trigonometry) is best learned as you hit it rather than all upfront. If browser-based is easier to start, The Book of Shaders and WebGL Fundamentals need zero setup.
04 · AVOID THIS
The math trap
One misjudgment stalls more aspiring graphics programmers than any other:
05 · FAQ
Frequently asked questions
What math do I need for computer graphics?
You mainly need linear algebra, specifically vectors and matrices, plus some trigonometry and basic calculus for advanced topics. You do not need to master all of it upfront; learning the essentials and picking up more as specific graphics topics require it works well.
What is the best free resource to learn OpenGL?
LearnOpenGL is the most widely recommended free OpenGL tutorial, taking you from your first triangle through lighting, model loading, and physically based rendering. For browser-based graphics, WebGL Fundamentals is an excellent free alternative.
Should I learn OpenGL, WebGL, or a game engine?
Learn OpenGL or WebGL if you want to understand how graphics actually work under the hood, which makes you a stronger developer. Game engines are great for building games quickly, but low-level graphics teaches the fundamentals engines hide.
Is computer graphics hard to learn?
Graphics has a real learning curve because it combines math, programming, and a lot of setup, but it is uniquely motivating since your progress is visible. Starting hands-on and learning the math as you go makes it much more approachable than it first appears.
What can I do with computer graphics skills?
Graphics skills apply to game development, film and visual effects, data visualization, simulation, virtual and augmented reality, and increasingly machine learning. Understanding rendering also makes you a more capable general programmer.