全部工程
实时图形实验 · Windows 版已发布

LearnOpenGL

业余自学底层渲染的边学边做成果,让材质与光照的变化直接可见。

查看最新版本Windows · 最新正式版
查看源码
技术方向
图形渲染 / GPU 编程
设计主张
让公式、参数与眼前的画面互相印证。
关键能力
  • 视差与自阴影
  • 离屏后处理
  • 同屏参数调试

视差贴图木盒在天空盒环境中的实际 OpenGL 渲染。

边学渲染,边看结果

利用空余时间自学底层图形渲染时,边学边做积累的工程。从窗口、几何和 Shader 走向光照、阴影与材质,再把参数放到画面旁边,直接观察法线、视差和后处理带来的变化。

技术构成

C++ / OpenGL 4.5
管理 GPU 资源、绘制与帧缓冲。
GLSL / UBO
共享相机与光源参数,计算光照、阴影和后处理。
GLAD / GLFW / GLM
加载 OpenGL 函数,提供窗口输入与向量矩阵运算。
Assimp / stb
读取模型、纹理并导出实际帧。
ImGui
同屏调整材质参数与调试显示。

设计与实现

法线、Parallax Occlusion 和自阴影开关与渲染画面同屏。 放大查看
法线、Parallax Occlusion 和自阴影开关与渲染画面同屏。

拆开一帧画面

材质效果对照

同一木盒切换法线、视差遮蔽与自阴影,观察采样和光照怎样共同表达表面深度。

多光源与阴影

平行光与聚光灯使用深度图,点光源使用六面深度立方体;PCF 采样柔化阴影边缘。

离屏与后处理

场景先进入 framebuffer,再应用灰度、卷积等效果;调试面板保持独立绘制。

让数据可见

法线与深度显示辅助检查,固定预设配合真实 GPU 帧导出,便于同视角比较。

画面与演示说明

截图来自原程序实际 GPU 渲染;Windows 包已在本机 Windows 11 / NVIDIA OpenGL 4.5 验证默认场景、菜单及全部 15 个预设。

快速开始

直接运行 Windows 版

下载完整 ZIP,全部解压后双击 LearnOpengl.exe。默认进入材质实验,资源和运行库已随包提供;显卡需支持 OpenGL 4.5。

探索渲染实验

在 ImGui 面板切换材质、光照与后处理;使用 WASD / QE 移动相机,Inspector 的返回按钮可打开原实验菜单。

powershell
./LearnOpengl.exe --preset cube --with-ui
./LearnOpengl.exe --menu

构建工程

Windows 准备现代 Visual Studio、Windows SDK 与 C++ 桌面工作负载,初始化子模块后运行构建脚本。

powershell
git submodule update --init --recursive
powershell -ExecutionPolicy Bypass -File scripts/build.ps1
全部工程