渲染的法则

渲染的法则

渲染的本质其实就两点,理解了这两点,其他花里胡哨的技巧都是耍小聪明。

第一是:渲染的第一步是为了求解渲染方程的近似解。

第二是:渲染的第二步是如何将采样的误差尽量小。

如果算上优化的话,可以加第三点。

第三是:尽量节省性能。

Approximate 近似解

BRDFs

  • ggx
  • normalized blinn phong
  • kajiya-kay
  • etc…

Area Lighting

  • ltc

Env Lighting

  • precompute irradience env map

Ambient Occlusion

  • ssao
  • hbao
  • dfao

Global Illumination

  • low frequency
    • irrdience map
    • prt
      • sh
      • spherial gaussion
    • vpl
      • pbgi
  • high frequency
    • planar reflection
    • ssr/sspr
    • env map [re]projection
  • vxgi

BS[T]DFs

  • warp lighting
  • dipole
  • diffusion profile
  • precompute scattering lut

Volume Rendering

  • mie/rayligh/hg scattering function
  • precompute atomosphere scattering
  • powder distribution

Shadow

  • shadow map
    • csm
    • pcf/pcss
  • shadow volume
  • df soft shadow

Discretization 离散化

Anti Aliasing

  • ssaa
  • msaa
  • mlaa
  • taa
  • nnaa
  • specular aa

Color Grading

  • aces/tonemapping
  • other post process

Optimization 优化

Cullings

  • frustum culling
  • occulusion culling
    • pvs
    • hiz

Pipeline

  • forward/forward plus
  • light prepass
  • deferred lighting/shading
  • gpu driven
  • tiled base [deferred] rendering

Math Method

  • precompute serials
    • color grading/skin/env brdf lut
    • gbuffer
    • bent normal
  • compress algorithm serials
    • etc/astc/bc serials
    • fft/sh/sg compress
    • texture/gbuffer channel combine
  • math method
    • fourier transform serials
    • convolutions
    • cube map / dual paraboloid
  • accelerating structure
    • sdf
    • voxel
    • octree/bsp/bvh
  • probability theory
    • pcf/pcss
    • volume marching jittering
    • possion distribution
    • multi importent sampling/monte carlo
    • white/blue noise jittering
    • markov chain

Spaces Method

  • screen space serials
    • sssm
    • sssss
    • ssr
    • ssao
  • tangent space
    • normal