编程与软件工程github.com
面向初学者的 3D 游戏着色器
3D Game Shaders for Beginners
2019 — 2021,它一次次回到首页
黑点是上首页(≥ 50 分)的那次投稿,空心点是没冲上去的投稿,点越大分数越高。
导读
这是一个开源的 3D 游戏着色器入门教程,系统讲解光照、阴影、后处理等各类着色器技术,配有可运行的示例。它曾于 2019 和 2021 两次登上 Hacker News 首页,被许多读者视为学习图形编程的优质起点。
为什么经久不衰:它把通常晦涩的着色器技术拆解成新手友好的免费教程,且内容随图形学基础而长青,今天仍是入门的可靠路径。
HN 评论精选
教程内容实用,且现代引擎已将这些技术开箱即用
这是对各种着色器技术(尤其是后处理效果)非常棒的入门介绍。更妙的是,现代引擎如 Unity 和 Unreal 已经内置了这些功能,勾选几个复选框就能启用——背后凝聚了大量的人力投入。
60654查看英文原文
That's a very cool intro to a variety of shader techniques, especially post-processing effects. What's even more wild, is that modern engines include all of this stuff out of the box, you just have to tick a few check boxes to enable them in your game. :) For example, check out these postprocessing filters built into Unity and Unreal - a ton of person-hours went into these: https://docs.unity3d.com/Manual/PostProcessingOverview.html https://docs.unrealengine.com/en-us/Engine/Rendering/PostProcessEffects
推荐 Shadertoy 等在线工具作为练手平台
一个不用启动编辑器、不用编译就能把玩着色器的好方法是 Shadertoy 和 Shadron。
Scene_Cast2查看英文原文
A great way to play around with shaders (without booting up your editor, compiling, etc) is https://www.shadertoy.com and Shadron (http://www.arteryengine.com/shadron/)
读者亲测有效,可与 LearnOpenGL 搭配学习
非常推荐这个教程。配合 learnopengl.com,我学到了大部分图形学知识。
sneeuwpopsneeuw查看英文原文
I can recommend this very much. Together with https://learnopengl.com/ I learned most I know about graphics. The same thread in 2019: https://news.ycombinator.com/item?id=19895218
补充推荐一本免费的理论入门书
如果想温和地了解这些技术背后的理论,可以看看我的书《Computer Graphics from Scratch》,在线免费阅读。
ggambetta查看英文原文
For a gentle introduction to the theory behind all this, you might want to check out my book Computer Graphics from Scratch (https://gabrielgambetta.com/computer-graphics-from-scratch). Freely available online!
历次讨论
同类还值得读
开源应用架构
The Architecture of Open Source Applications
《开源软件架构》(AOSA)是一本在线免费书,邀请知名开源项目的作者亲自剖析其内部设计,涵盖 SQLAlchemy、LLVM、Audacity、Apache、Bash 等系统。
编程与软件工程上首页 9 次 · 2011–2024aosabook.org编辑精选编程语言简史:简短、不完整且多半错误
A Brief, Incomplete, and Mostly Wrong History of Programming Languages
一篇以戏谑、故意不准确的方式回顾编程语言史的博客文章,用夸张轶事和讽刺定义串起 Lisp、C、C++、Java、JavaScript、PHP 等语言。
编程与软件工程上首页 8 次 · 2009–2021james-iry.blogspot.comSQLite 是如何测试的
How SQLite is tested
SQLite 官方文档页,系统介绍 SQLite 的测试体系:多种测试方法(TCL 测试、模糊测试、回归测试、静态分析等)和海量测试用例,展示了这个小型开源项目如何靠极致测试获得…
编程与软件工程上首页 8 次 · 2009–2025sqlite.org编辑精选高级编程语言(2009)
Advanced programming languages (2009)
Matt Might 的经典文章,按用途推荐“高级编程语言”:如果追求就业就选主流语言,如果追求表达力、学术研究或创业,则推荐 Haskell、OCaml、Scala 等函数式语…
编程与软件工程上首页 8 次 · 2009–2022matt.might.net我的 Forth 与栈机器经历
Yosefk - My history with Forth & stack machines
作者以亲身经历回顾了使用 Forth 语言和栈式机器的历程:既赞叹其简洁优雅、代码量小、可自举的优点,也坦率指出栈操作在实际编程中的痛苦,以及 Forth 社区文化中的问题。
编程与软件工程上首页 8 次 · 2010–2024yosefk.com编辑精选