GraphicAlgorithm
GraphicAlgorithm copied to clipboard
FSR中计算HitMin*、HitMax*似乎存在错误
https://github.com/AngelMonica126/GraphicAlgorithm/blob/58877e6a8dba75ab171b0d89260defaffa22d047/027_FidelityFX%20Super%20Resolution/RCASPass_CS.glsl#L58C2-L60C51
在您的代码中,是使用Min4R和Max4R来计算HitMinR / HitMaxR的
float HitMinR = Min4R * (1.0f / (4.0f * Max4R));
float HitMinG = Min4G * (1.0f / (4.0f * Max4G));
float HitMinB = Min4B * (1.0f / (4.0f * Max4B));
float HitMaxR = (PeakC.x - Max4R) * (1.0f / (4.0f * Min4R + PeakC.y));
float HitMaxG = (PeakC.x - Max4G) * (1.0f / (4.0f * Min4G + PeakC.y));
float HitMaxB = (PeakC.x - Max4B) * (1.0f / (4.0f * Min4B + PeakC.y));
但是FSR的源码中,是
缺少了再次和中心点e计算min和max的步骤,正确应该是
float HitMinR = min(Min4R, e.r) * (1.0f / (4.0f * Max4R));
//...
float HitMaxR = (PeakC.x - max(Max4R, e.r)) * (1.0f / (4.0f * Min4R + PeakC.y));
//...