0%

之前我们实现过一个光线追踪器,从这一节开始我们要实现一个运行在 CPU 上的简单的光栅化渲染器,并在实现过程中进一步理解渲染管线的流程和各种细节。首先从配置环境和熟悉 OpenGL 开始。

阅读全文 »

本篇对《Real-Time Rendering》一书中的渲染加速技术进行概括总结和扩展。主要内容包括:

  • 空间管理(BVH、BSP 树、八叉树、场景图)
  • 裁剪技术(背面裁剪、视锥裁剪、遮挡剔除、层次视锥裁剪、入口裁剪、细节裁剪)
  • 层次细节技术(LOD)
  • 点渲染

阅读全文 »

本篇对《Real-Time Rendering》一书中基于图像的渲染技术进行概括总结和扩展。以综述形式为主,许多内容已经实现过或学习过,其他概念只需了解即可,主要内容包括:

  • 谱渲染 The Rendering Spectrum
  • 固定视角的渲染 Fixed-View Rendering
  • 天空盒 Skyboxes
  • 光场渲染 Light Field Rendering
  • 精灵与层 Sprites and Layers
  • 公告板 Billboarding
  • 粒子系统 Particle System
  • 颜色校正 Color Correction
  • 色调映射 Tone Mapping
  • 镜头眩光和泛光 Lens Flare and Bloom
  • 景深 Depth of Field
  • 运动模糊 Motion Blur
  • 体渲染 Volume Rendering

阅读全文 »

本篇对《Real-Time Rendering》一书中延迟渲染相关知识进行概括总结和扩展。主要内容包括:

  • 延迟渲染的概念、G-buffer、延迟渲染的过程
  • 延迟渲染 vs 正向渲染、延迟渲染 vs Z-Prepass
  • 延迟渲染的优缺点、延迟渲染透明物体、延迟渲染与 MSAA
  • 延迟渲染的改进:延迟光照(Light Pre-Pass / Deferred Lighting)、分块延迟渲染(Tile-Based Deferred Rendering)
  • 延迟渲染 vs 延迟光照

阅读全文 »

本篇对《Real-Time Rendering》一书中 BRDF 相关知识进行概括总结和扩展。主要内容包括:

  • BRDF 前置知识:数学、辐射度量学
  • BRDF 的定义、理解和性质
  • BRDF 模型分类
  • 基于物理的 BRDF
  • BRDF 引申

阅读全文 »

上一篇提到过,程序纹理基本上都是通过噪声纹理来实现的,不同的噪声纹理适合制作不同的效果,如云雾、水波、大理石、能量波等。这一节对常见的程序噪声算法进行总结,主要包括:

  • Value Noise
  • Gradient Noise(Perlin Noise、Simplex Noise)
  • Voronoi Noise 和 Worley Noise
  • Fractal Brownian Motion
  • Curl Noise
  • White Noise

阅读全文 »

本篇对《Real-Time Rendering》一书中纹理相关知识进行概括总结。主要内容包括:

  • 纹理管线(Texture Pipeline)

  • 纹理缓存(Texture Caching)

  • 纹理压缩(Texture Compression)

  • 体纹理(Volume Texture)

  • 立方体贴图(Cube Map)

  • 程序纹理(Procedural Texturing)

  • 凹凸贴图(Bump Mapping)及其改进

阅读全文 »