Postprocessing

1. Color
----------------------------------------

Cay ekran zostaje zamalowany w sposb pprzezroczysty na podany kolor. Dziki
temu mona obraz rozjani (kolor biay), ciemni (kolor czarny), wyblakn
(kolor szary), zaczerwieni (kolor czerwony lub dowolny inny) itd.
Intensywnoci ewektu steruje skadowa Alfa koloru.

2. Texture
----------------------------------------

Cay ekran zostaje zamalowany tekstur pomnoon przez kolor. Wsprzdne
tekstury to pierwotnie x=0..1, y=0..1, x w prawo i y w d, ale s mnoone przez
podan macierz, co pozwala uzyska dowolny efekt - losowe albo te jakie
zmienne w czasie translacj, rotacj, skalowanie itd. Dziki skalowaniu tekstura
moe by rozoona wiele razy. Moliwe efekty to np. nieenie.

Oglne
----------------------------------------

Nie wszystkie efekty post-processingu piknie ze sob wsppracuj.

- Obraz rysowany addytywnie przez Bloom nie przechodzi przez filtr Function. To
  jest OK dopki robimy jasno, kontrast itp., ale przy Grayscale wyglda ju
  niedobrze.

(Tu by mona wicej napisa ale mi si nie chce...)


Shader preprocessingu - PpShader
================================================================================

MAKRA
----------------------------------------

- Efekt Function
  - GRAYSCALE = 0, 1, 2
    0 = brak uwzgldniania odcieni szaroci
    1 = cao zastpowana odcieniami szaroci
    2 = liniowa interpolacja od koloru do odcieni szaroci wg GrayscaleFactor
    Hash: bit 0-1
  - FUNCTION = 0, 1
    Czy uwzgldnia funkcj liniow wg AFactor i BFactor?
    Hash: bit 2
- Efekt Tone Mapping
  - TONE_MAPPING = 0, 1
    Hash: bit 3
- Efekt Heat Haze
  - HEAT_HAZE = 0, 1
    Hash: bit 4

PARAMETRY
----------------------------------------

- Efekt Function
  - float GrayscaleFactor
    (GRAYSCALE==2)
    Stopie interpolacji odcieni szaroci.
  - float4 AFactor
    float4 BFactor
    (FUNCTION==1)
    Wspczynniki rwnania liniowego.
- Efekt Tone Mapping
  - float LuminanceFactor
    (TONE_MAPPING==1)
- Efekt Heat Haze
  - texture PerturbationMap
    (HEAT_HAZE==1)
  - Wsprzdne tekstury nr 1 i 2 typu float2

