{"slug": "opengl", "name": "OpenGL", "category": "media", "category_name": "Media and creative", "description": "", "recommenders": 4, "commenters": 6, "warners": 1, "score": 3.089, "rising": -1.31, "first": "2026-07-01", "latest": "2026-10-23", "why": "go with OpenGL, it's cross-platform, old (which is good and bad at the same time) and is the easiest of them all.", "why_is_quote": true, "has_verdict": false, "sentiment": {"recommend": 4, "neutral": 1, "compare": 0, "warn": 1}, "spark": [0, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0], "listed": true, "loved": [], "caveat": "", "short_quote": "go with OpenGL, it's cross-platform, old (which is good and bad at the same time) and is the easiest of them all.", "icon": true, "domain": null, "github_repo": null, "official_url": "https://www.opengl.org", "pricing": "", "aliases": ["OpenGL"], "verdict": null, "praise": [{"label": "", "summary": "", "quotes": [{"id": 784395664, "item_id": 49024729, "url": "https://news.ycombinator.com/item?id=49024729", "by": "corysama", "date": "2026-07-23", "stance": "recommend", "quote": "I still think that OpenGL is a better place to start learning 3D", "excerpt": "I still think that OpenGL is a better place to start learning 3D because there is so much less bookkeeping to do regarding memory and concurrency vs. Vulkan. I'm working on a \"Post-Modern OpenGL\" tutorial that exclusively teaches the most \"modern\" (merely a decade old) APIs and practices of GL 4.6. But, writing is slow going... If you are going to use Vulkan, check out https://howtovulkan.com/ Vulkan started with a l", "context": "writing an OpenGL tutorial", "use_case": "learning 3D graphics", "switched_from": "", "story": "Learn OpenGL, extensive tutorial resource for learning Modern OpenGL"}, {"id": 784394547, "item_id": 49024659, "url": "https://news.ycombinator.com/item?id=49024659", "by": "cyber_kinetist", "date": "2026-07-23", "stance": "recommend", "quote": "It doesn't matter one bit that it uses a slightly outdated API called OpenGL", "excerpt": "The one and only Holy Bible of Graphics Programming. If you're starting to learn computer graphics, just study through the entire site and do the examples one by one. It doesn't matter one bit that it uses a slightly outdated API called OpenGL - you're supposed to learn how to render things first, not about some weird obscure hardware / driver details! After you've learned it, you can start learning CUDA if you want ", "context": "", "use_case": "learning graphics", "switched_from": "", "story": "Learn OpenGL, extensive tutorial resource for learning Modern OpenGL"}, {"id": 780154611, "item_id": 48759663, "url": "https://news.ycombinator.com/item?id=48759663", "by": "Mierenik", "date": "2026-07-02", "stance": "recommend", "quote": "go with OpenGL, it's cross-platform, old (which is good and bad at the same time) and is the easiest of them all.", "excerpt": "Depends on what you want to do. If you just want to make a game, use a game engine like Unity, Godot or Unreal. If you want to do graphics, like making engines, simulations, renderers then you should learn a low-level language and a graphics API. For the language I recommend C++, you can also use C or Rust but C might be a bit too difficult and you don't want to fight the language since graphics APIs are already hard", "context": "", "use_case": "learning graphics programming", "switched_from": "", "story": "What to Learn to Be a Graphics Programmer"}, {"id": 780030752, "item_id": 48751922, "url": "https://news.ycombinator.com/item?id=48751922", "by": "jplusequalt", "date": "2026-07-01", "stance": "recommend", "quote": "I recommend you learn OpenGL", "excerpt": "I'm a graphics programmer. The most useful resources I've found for graphics are scratchapixel, UC Davis' graphics lectures, songho's articles, and Essential Math for Games and Interactive Applications. I highly recommend you read this last resource front to back. Seriously, its the best freaking math reference for graphics out there. But knowing theory is not sufficient. You also need to get your hands dirty by writ", "context": "graphics programmer", "use_case": "learning graphics programming", "switched_from": "", "story": "What to Learn to Be a Graphics Programmer"}]}], "caveats": [{"label": "", "summary": "", "quotes": [{"id": 784383730, "item_id": 49023983, "url": "https://news.ycombinator.com/item?id=49023983", "by": "reactordev", "date": "2026-07-23", "stance": "warn", "quote": "OpenGL is deprecated on a number of platforms and down right removed from others. Please don't learn this now.", "excerpt": "Sadly, the OP is right, OpenGL is deprecated on a number of platforms and down right removed from others. Please don't learn this now. Vulkan has the shape of every modern graphics api out there, DX included. Learn this or at the very least WebGPU.", "context": "", "use_case": "learning graphics programming", "switched_from": "", "story": "Learn OpenGL, extensive tutorial resource for learning Modern OpenGL"}]}], "who": [{"by": "corysama", "context": "writing an OpenGL tutorial", "url": "https://news.ycombinator.com/item?id=49024729", "date": "2026-07-23"}, {"by": "jplusequalt", "context": "graphics programmer", "url": "https://news.ycombinator.com/item?id=48751922", "date": "2026-07-01"}], "tags": [], "use_cases": ["learning graphics programming", "graphics", "learning 3d graphics", "learning graphics"], "compared": [{"slug": "vulkan", "name": "Vulkan", "co": 7, "switched_from": 0, "switched_to": 0}, {"slug": "wails", "name": "Wails", "co": 1, "switched_from": 0, "switched_to": 1}, {"slug": "metal", "name": "Metal", "co": 2, "switched_from": 0, "switched_to": 0}, {"slug": "webgpu", "name": "WebGPU", "co": 2, "switched_from": 0, "switched_to": 0}, {"slug": "cuda", "name": "CUDA", "co": 2, "switched_from": 0, "switched_to": 0}], "makers": [], "threads": [{"url": "https://news.ycombinator.com/item?id=49022634", "title": "Learn OpenGL, extensive tutorial resource for learning Modern OpenGL", "mentions": 3}, {"url": "https://news.ycombinator.com/item?id=48750710", "title": "What to Learn to Be a Graphics Programmer", "mentions": 2}, {"url": "https://news.ycombinator.com/item?id=50205569", "title": "LiveCoding in CommonLisp [video]", "mentions": 1}], "sentiment_by_month": {"2025-11": {}, "2025-12": {}, "2026-01": {}, "2026-02": {}, "2026-03": {}, "2026-04": {}, "2026-05": {}, "2026-06": {}, "2026-07": {"recommend": 4, "warn": 1}, "2026-08": {}, "2026-09": {}, "2026-10": {"neutral": 1}}, "quotes": [{"id": 803289122, "item_id": 50205570, "url": "https://news.ycombinator.com/item?id=50205570", "by": "so-cal-schemer", "date": "2026-10-23", "stance": "neutral", "quote": "Cocoa, OpenGL for graphics", "excerpt": "I used SuperCollider and Logic(piano) for sound, Cocoa, OpenGL for graphics. Sungmin Park https://www.youtube.com/@SungminPark", "context": "", "use_case": "graphics", "switched_from": "", "story": "LiveCoding in CommonLisp [video]"}, {"id": 784395664, "item_id": 49024729, "url": "https://news.ycombinator.com/item?id=49024729", "by": "corysama", "date": "2026-07-23", "stance": "recommend", "quote": "I still think that OpenGL is a better place to start learning 3D", "excerpt": "I still think that OpenGL is a better place to start learning 3D because there is so much less bookkeeping to do regarding memory and concurrency vs. Vulkan. I'm working on a \"Post-Modern OpenGL\" tutorial that exclusively teaches the most \"modern\" (merely a decade old) APIs and practices of GL 4.6. But, writing is slow going... If you are going to use Vulkan, check out https://howtovulkan.com/ Vulkan started with a l", "context": "writing an OpenGL tutorial", "use_case": "learning 3D graphics", "switched_from": "", "story": "Learn OpenGL, extensive tutorial resource for learning Modern OpenGL"}, {"id": 784394547, "item_id": 49024659, "url": "https://news.ycombinator.com/item?id=49024659", "by": "cyber_kinetist", "date": "2026-07-23", "stance": "recommend", "quote": "It doesn't matter one bit that it uses a slightly outdated API called OpenGL", "excerpt": "The one and only Holy Bible of Graphics Programming. If you're starting to learn computer graphics, just study through the entire site and do the examples one by one. It doesn't matter one bit that it uses a slightly outdated API called OpenGL - you're supposed to learn how to render things first, not about some weird obscure hardware / driver details! After you've learned it, you can start learning CUDA if you want ", "context": "", "use_case": "learning graphics", "switched_from": "", "story": "Learn OpenGL, extensive tutorial resource for learning Modern OpenGL"}, {"id": 784383730, "item_id": 49023983, "url": "https://news.ycombinator.com/item?id=49023983", "by": "reactordev", "date": "2026-07-23", "stance": "warn", "quote": "OpenGL is deprecated on a number of platforms and down right removed from others. Please don't learn this now.", "excerpt": "Sadly, the OP is right, OpenGL is deprecated on a number of platforms and down right removed from others. Please don't learn this now. Vulkan has the shape of every modern graphics api out there, DX included. Learn this or at the very least WebGPU.", "context": "", "use_case": "learning graphics programming", "switched_from": "", "story": "Learn OpenGL, extensive tutorial resource for learning Modern OpenGL"}, {"id": 780154611, "item_id": 48759663, "url": "https://news.ycombinator.com/item?id=48759663", "by": "Mierenik", "date": "2026-07-02", "stance": "recommend", "quote": "go with OpenGL, it's cross-platform, old (which is good and bad at the same time) and is the easiest of them all.", "excerpt": "Depends on what you want to do. If you just want to make a game, use a game engine like Unity, Godot or Unreal. If you want to do graphics, like making engines, simulations, renderers then you should learn a low-level language and a graphics API. For the language I recommend C++, you can also use C or Rust but C might be a bit too difficult and you don't want to fight the language since graphics APIs are already hard", "context": "", "use_case": "learning graphics programming", "switched_from": "", "story": "What to Learn to Be a Graphics Programmer"}, {"id": 780030752, "item_id": 48751922, "url": "https://news.ycombinator.com/item?id=48751922", "by": "jplusequalt", "date": "2026-07-01", "stance": "recommend", "quote": "I recommend you learn OpenGL", "excerpt": "I'm a graphics programmer. The most useful resources I've found for graphics are scratchapixel, UC Davis' graphics lectures, songho's articles, and Essential Math for Games and Interactive Applications. I highly recommend you read this last resource front to back. Seriously, its the best freaking math reference for graphics out there. But knowing theory is not sufficient. You also need to get your hands dirty by writ", "context": "graphics programmer", "use_case": "learning graphics programming", "switched_from": "", "story": "What to Learn to Be a Graphics Programmer"}]}