Gamma Correction

    [DirectX 11] Gamma Correction

    [DirectX 11] Gamma Correction

    Gamma Correction - 일반적으로 Texture 데이터는 GammaEncode 되어서 저장되어 있으므로 Gamma Correction을 통해 Light 연산을 할 때에는 Linear Space로 변환을 하여 연산을 해주어야 GammaDecode 상태로 색상이 출력 될 수 있다. Gamma Encode 하는 이유 - 인간의 눈은 어두운 곳의 변화에 민감하고, 밝은 곳의 변화에는 둔감한 특징이 있다. 따라서 어두운 곳의 해상도를 높이고자 비선형 함수를 사용하여 데이터를 저장한다. Gamma Correction 방법 - 결과적으로 Gamma Encode된 Texture 데이터를 Linear Space로 변환. (pow(x, 2.2f)) - Linear Space에서 조명 연산과 Texture 혼합 ..