OpenGL 教程目录(从概念 → 窗口 → 三角形 → 逐步深入)¶
按顺序学即可:每篇都以“先看到结果”为优先级,然后再解释背后的关键概念与工程化组织方式。
本教程的最终落地目标是:用 Visual Studio + CMake + vcpkg 搭出一个可迭代的小型渲染器(能画、可调试、可扩展)。
学习路线¶
- 01-概念:GPU、驱动、上下文、渲染管线
- 02-搭工程:CMake + 窗口 + OpenGL Loader + 调试输出
- 03-第一个三角形:VAO/VBO/EBO + 最小 Shader
- 04-坐标与变换:NDC、矩阵、MVP、右手系
- 05-顶点属性与插值:颜色、varying、Gamma 的直觉
- 06-纹理:采样、wrap/filter、mipmap、sRGB
- 07-相机:LookAt、轨道相机、第一人称相机
- 08-深度与裁剪:depth test、face culling、clip space(含透明混合/Stencil)
- 09-模型与网格:OBJ/GLTF(简化版)加载、法线、切线
- 10-光照基础:Lambert/Phong/Blinn-Phong 与能量直觉
- 11-阴影入门:Shadow Map 的最小实现与常见伪影
- 12-离屏渲染:FBO、后处理、HDR/曝光(含 MSAA/AA 路线)
- 13-性能与工程:状态切换、批处理、调试与 Profiling(含 UBO/Instancing/RenderDoc)
- 14-PBR 入门:BRDF 的直觉与实现骨架(含 Cubemap/IBL 最小链路)
参考阅读(Inigo Quilez)¶
这些是 iquilezles.org/articles 的文章索引(外部链接),后续章节会逐步吸收其中的思路与技巧:
- 颜色与基础工具
- Procedural Color Palette:https://iquilezles.org/articles/palettes/
- Fast Signed Float Random(sfrand):https://iquilezles.org/articles/sfrand/
- 噪声与分形
- Fractional Brownian Motion(fBM):https://iquilezles.org/articles/fbm/
- Value Noise Derivatives(morenoise):https://iquilezles.org/articles/morenoise/
- Gradient Noise Derivatives:https://iquilezles.org/articles/gradientnoise/
- SDF / Raymarching(建模、光照、抗锯齿)
- Raymarching SDFs:https://iquilezles.org/articles/raymarchingdf/
- SDF Functions (3D):https://iquilezles.org/articles/distfunctions/
- SDF Functions (2D):https://iquilezles.org/articles/distfunctions2d/
- Smooth Minimum / Smooth Union(smin):https://iquilezles.org/articles/smin/
- Normals in SDF(normalsSDF):https://iquilezles.org/articles/normalsSDF/
- Soft Shadows in Raymarching(rmshadows):https://iquilezles.org/articles/rmshadows/
- Filtering in Raymarching(ray differentials / mip artifacts):https://iquilezles.org/articles/filteringrm/
- Terrain Raymarching:https://iquilezles.org/articles/terrainmarching/
- Binary Search Raycasting for SDF:https://iquilezles.org/articles/binarysearchsdf/
- Distance Fields(distance):https://iquilezles.org/articles/distance/
- 几何与实现小技巧
- Polygon Normals and Areas:https://iquilezles.org/articles/areas/
01 从这里开始¶
- 下一篇:见 01-概念:GPU、驱动、上下文、渲染管线