简介
在 WebGL 中,后处理(Post-Processing)是指将整个场景渲染到一个帧缓冲对象(Framebuffer Object,FBO),然后再对这个渲染结果应用图像处理技术(通常是 Fragment Shader),再最终输出到屏幕。
通俗来说
后处理就相当于给场景增加滤镜和“美颜”。
基本流程
- 场景绘制 →
FBO(帧缓冲) FBO作为纹理 → 传入全屏四边形- 在 片元着色器
Fragment Shader中处理每个像素 - 将处理结果绘制到屏幕(
Canvas)
下面就是一个叠加了抗锯齿、太阳射线光、镜头暗角、柔光、色彩校正曲线5个后处理效果的场景比对。原文链接

常见效果
- 模糊(
Blur) - 边缘检测(
Sobel) - 泛光(
Bloom) - 色调映射(
Color Grading) - 灰度、反色等滤镜
- 动态扫描、闪烁、扭曲、抖动等视觉特效
Cesium已经内置了大量的后处理效果,比如抗锯齿、黑白,景深、马赛克等等,具体可见 Cesium官网示例 Post Processing 选项 。
具体应用
在mgis中也大量应用了后处理,如: