diff --git a/.gitmodules b/.gitmodules index 90c1dd2..bd620c4 100644 --- a/.gitmodules +++ b/.gitmodules @@ -2,7 +2,7 @@ path = Shaders/FidelityFX-CAS url = ../FidelityFX-CAS branch = master -[submodule "Shaders/FidelityFX-FSR"] - path = Shaders/FidelityFX-FSR - url = ../FidelityFX-FSR - branch = development +[submodule "Shaders/FidelityFX-FSR"] + path = Shaders/FidelityFX-FSR + url = ../FidelityFX-FSR + branch = master diff --git a/FidelityFX_CLI.cpp b/FidelityFX_CLI.cpp index 9c77a5e..12704d1 100644 --- a/FidelityFX_CLI.cpp +++ b/FidelityFX_CLI.cpp @@ -59,7 +59,7 @@ namespace RCAS_Linear1 static const wchar_t* const APP_NAME = L"FidelityFX-CLI"; static const wchar_t* const EXE_NAME = L"FidelityFX_CLI"; -static const wchar_t* const APP_VERSION = L"1.0.0"; +static const wchar_t* const APP_VERSION = L"1.0.1"; enum class InterpolationMode { @@ -354,7 +354,9 @@ void LaunchParameters::ParseCommandLine(int argCount, const wchar_t* const* args } if(this->sharpness == FLT_MAX) { - this->sharpness = 0.f; + this->sharpness = this->interpolationMode == InterpolationMode::RCAS + ? 0.2f // Default sharpness for RCAS + : 0.0f; // Default sharpness for CAS } else { @@ -562,13 +564,13 @@ void Application::PrintColorSpaceInformation() const switch(m_Params.interpolationMode) { case InterpolationMode::CAS: - case InterpolationMode::RCAS: if(m_Params.linear) wprintf(L"Treating input/output images as linear space, processing as linear.\n"); else wprintf(L"Treating input/output images as sRGB space, converting to linear for processing.\n"); break; case InterpolationMode::EASU: + case InterpolationMode::RCAS: if(m_Params.linear) wprintf(L"Treating input/output images as linear space, converting to sRGB for processing.\n"); else diff --git a/README.md b/README.md index 8f9289e..fe9b033 100644 --- a/README.md +++ b/README.md @@ -22,7 +22,7 @@ THE SOFTWARE. Simple command line tool that processes image files using the FidelityFX Super Resolution (FSR) or Contrast Adaptive Sharpening (CAS) shader systems. ``` -FidelityFX-CLI 1.0.0 +FidelityFX-CLI 1.0.1 Command line syntax: FidelityFX_CLI.exe [Options] ... diff --git a/Shaders/CompiledShader_RCAS_Linear=0.h b/Shaders/CompiledShader_RCAS_Linear=0.h index 4adb623..02d78a1 100644 --- a/Shaders/CompiledShader_RCAS_Linear=0.h +++ b/Shaders/CompiledShader_RCAS_Linear=0.h @@ -51,20 +51,16 @@ imad r1.xy, vThreadGroupID.xyxx, l(8, 8, 0, 0), r1.xyxx iadd r2.xyzw, r1.xyxy, l(0, -1, -1, 0) mov r0.xy, r2.zwzz ld_indexable(texture2d)(float,float,float,float) r0.xyz, r0.xyzw, t0.xyzw -mul r0.xyz, r0.xyzx, r0.xyzx iadd r3.xyzw, r1.xyxy, l(0, 1, 1, 0) mov r4.xy, r3.zwzz mov r4.zw, l(0,0,0,0) ld_indexable(texture2d)(float,float,float,float) r4.xyz, r4.xyzw, t0.xyzw -mul r4.xyz, r4.xyzx, r4.xyzx min r5.xyz, r0.xyzx, r4.xyzx mov r2.zw, l(0,0,0,0) ld_indexable(texture2d)(float,float,float,float) r2.xyz, r2.xyzw, t0.xyzw -mul r2.xyz, r2.xyzx, r2.xyzx min r5.xyz, r5.xyzx, r2.xyzx mov r3.zw, l(0,0,0,0) ld_indexable(texture2d)(float,float,float,float) r3.xyz, r3.xyzw, t0.xyzw -mul r3.xyz, r3.xyzx, r3.xyzx min r5.xyz, r3.xyzx, r5.xyzx mad r6.xyz, r5.xyzx, l(4.000000, 4.000000, 4.000000, 0.000000), l(-4.000000, -4.000000, -4.000000, 0.000000) rcp r6.xyz, r6.xyzx @@ -89,29 +85,28 @@ mad r0.xyz, r0.wwww, r4.xyzx, r0.xyzx mad r0.w, r0.w, l(4.000000), l(1.000000) mov r1.zw, l(0,0,0,0) ld_indexable(texture2d)(float,float,float,float) r2.xyz, r1.xyzw, t0.xyzw -mad r0.xyz, r2.xyzx, r2.xyzx, r0.xyzx +add r0.xyz, r0.xyzx, r2.xyzx iadd r1.z, -r0.w, l(0x7ef19fff) mad r0.w, -r1.z, r0.w, l(2.000000) mul r0.w, r0.w, r1.z mul r0.xyz, r0.wwww, r0.xyzx -sqrt r0.xyz, r0.xyzx mov r0.w, l(1.000000) store_uav_typed u0.xyzw, r1.xyyy, r0.xyzw ret -// Approximately 55 instruction slots used +// Approximately 50 instruction slots used #endif const BYTE g_mainCS[] = { - 68, 88, 66, 67, 191, 213, - 137, 44, 174, 100, 100, 178, - 92, 207, 190, 211, 114, 84, - 28, 34, 1, 0, 0, 0, - 100, 9, 0, 0, 5, 0, + 68, 88, 66, 67, 45, 67, + 247, 117, 11, 98, 201, 183, + 191, 243, 86, 252, 146, 47, + 113, 204, 1, 0, 0, 0, + 216, 8, 0, 0, 5, 0, 0, 0, 52, 0, 0, 0, 148, 1, 0, 0, 164, 1, 0, 0, 180, 1, 0, 0, - 200, 8, 0, 0, 82, 68, + 60, 8, 0, 0, 82, 68, 69, 70, 88, 1, 0, 0, 1, 0, 0, 0, 188, 0, 0, 0, 3, 0, 0, 0, @@ -176,8 +171,8 @@ const BYTE g_mainCS[] = 79, 83, 71, 78, 8, 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0, 83, 72, - 69, 88, 12, 7, 0, 0, - 80, 0, 5, 0, 195, 1, + 69, 88, 128, 6, 0, 0, + 80, 0, 5, 0, 160, 1, 0, 0, 106, 8, 0, 1, 89, 0, 0, 4, 70, 142, 32, 0, 0, 0, 0, 0, @@ -238,58 +233,44 @@ const BYTE g_mainCS[] = 0, 0, 0, 0, 70, 14, 16, 0, 0, 0, 0, 0, 70, 126, 16, 0, 0, 0, - 0, 0, 56, 0, 0, 7, - 114, 0, 16, 0, 0, 0, - 0, 0, 70, 2, 16, 0, - 0, 0, 0, 0, 70, 2, - 16, 0, 0, 0, 0, 0, - 30, 0, 0, 10, 242, 0, - 16, 0, 3, 0, 0, 0, - 70, 4, 16, 0, 1, 0, - 0, 0, 2, 64, 0, 0, - 0, 0, 0, 0, 1, 0, - 0, 0, 1, 0, 0, 0, - 0, 0, 0, 0, 54, 0, - 0, 5, 50, 0, 16, 0, - 4, 0, 0, 0, 230, 10, - 16, 0, 3, 0, 0, 0, - 54, 0, 0, 8, 194, 0, - 16, 0, 4, 0, 0, 0, - 2, 64, 0, 0, 0, 0, + 0, 0, 30, 0, 0, 10, + 242, 0, 16, 0, 3, 0, + 0, 0, 70, 4, 16, 0, + 1, 0, 0, 0, 2, 64, 0, 0, 0, 0, 0, 0, + 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 45, 0, 0, 137, - 194, 0, 0, 128, 67, 85, - 21, 0, 114, 0, 16, 0, - 4, 0, 0, 0, 70, 14, - 16, 0, 4, 0, 0, 0, - 70, 126, 16, 0, 0, 0, - 0, 0, 56, 0, 0, 7, - 114, 0, 16, 0, 4, 0, - 0, 0, 70, 2, 16, 0, - 4, 0, 0, 0, 70, 2, + 54, 0, 0, 5, 50, 0, 16, 0, 4, 0, 0, 0, - 51, 0, 0, 7, 114, 0, - 16, 0, 5, 0, 0, 0, - 70, 2, 16, 0, 0, 0, - 0, 0, 70, 2, 16, 0, - 4, 0, 0, 0, 54, 0, - 0, 8, 194, 0, 16, 0, - 2, 0, 0, 0, 2, 64, - 0, 0, 0, 0, 0, 0, + 230, 10, 16, 0, 3, 0, + 0, 0, 54, 0, 0, 8, + 194, 0, 16, 0, 4, 0, + 0, 0, 2, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 45, 0, 0, 137, 194, 0, - 0, 128, 67, 85, 21, 0, - 114, 0, 16, 0, 2, 0, - 0, 0, 70, 14, 16, 0, - 2, 0, 0, 0, 70, 126, + 0, 0, 0, 0, 45, 0, + 0, 137, 194, 0, 0, 128, + 67, 85, 21, 0, 114, 0, + 16, 0, 4, 0, 0, 0, + 70, 14, 16, 0, 4, 0, + 0, 0, 70, 126, 16, 0, + 0, 0, 0, 0, 51, 0, + 0, 7, 114, 0, 16, 0, + 5, 0, 0, 0, 70, 2, 16, 0, 0, 0, 0, 0, - 56, 0, 0, 7, 114, 0, + 70, 2, 16, 0, 4, 0, + 0, 0, 54, 0, 0, 8, + 194, 0, 16, 0, 2, 0, + 0, 0, 2, 64, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 45, 0, + 0, 137, 194, 0, 0, 128, + 67, 85, 21, 0, 114, 0, 16, 0, 2, 0, 0, 0, - 70, 2, 16, 0, 2, 0, - 0, 0, 70, 2, 16, 0, - 2, 0, 0, 0, 51, 0, + 70, 14, 16, 0, 2, 0, + 0, 0, 70, 126, 16, 0, + 0, 0, 0, 0, 51, 0, 0, 7, 114, 0, 16, 0, 5, 0, 0, 0, 70, 2, 16, 0, 5, 0, 0, 0, @@ -305,145 +286,139 @@ const BYTE g_mainCS[] = 16, 0, 3, 0, 0, 0, 70, 14, 16, 0, 3, 0, 0, 0, 70, 126, 16, 0, - 0, 0, 0, 0, 56, 0, + 0, 0, 0, 0, 51, 0, 0, 7, 114, 0, 16, 0, - 3, 0, 0, 0, 70, 2, + 5, 0, 0, 0, 70, 2, 16, 0, 3, 0, 0, 0, - 70, 2, 16, 0, 3, 0, - 0, 0, 51, 0, 0, 7, - 114, 0, 16, 0, 5, 0, - 0, 0, 70, 2, 16, 0, - 3, 0, 0, 0, 70, 2, - 16, 0, 5, 0, 0, 0, - 50, 0, 0, 15, 114, 0, - 16, 0, 6, 0, 0, 0, 70, 2, 16, 0, 5, 0, - 0, 0, 2, 64, 0, 0, + 0, 0, 50, 0, 0, 15, + 114, 0, 16, 0, 6, 0, + 0, 0, 70, 2, 16, 0, + 5, 0, 0, 0, 2, 64, + 0, 0, 0, 0, 128, 64, 0, 0, 128, 64, 0, 0, - 128, 64, 0, 0, 128, 64, - 0, 0, 0, 0, 2, 64, - 0, 0, 0, 0, 128, 192, + 128, 64, 0, 0, 0, 0, + 2, 64, 0, 0, 0, 0, + 128, 192, 0, 0, 128, 192, 0, 0, 128, 192, 0, 0, - 128, 192, 0, 0, 0, 0, - 129, 0, 0, 5, 114, 0, - 16, 0, 6, 0, 0, 0, - 70, 2, 16, 0, 6, 0, + 0, 0, 129, 0, 0, 5, + 114, 0, 16, 0, 6, 0, + 0, 0, 70, 2, 16, 0, + 6, 0, 0, 0, 52, 0, + 0, 7, 114, 0, 16, 0, + 7, 0, 0, 0, 70, 2, + 16, 0, 0, 0, 0, 0, + 70, 2, 16, 0, 4, 0, 0, 0, 52, 0, 0, 7, 114, 0, 16, 0, 7, 0, 0, 0, 70, 2, 16, 0, - 0, 0, 0, 0, 70, 2, - 16, 0, 4, 0, 0, 0, + 2, 0, 0, 0, 70, 2, + 16, 0, 7, 0, 0, 0, 52, 0, 0, 7, 114, 0, 16, 0, 7, 0, 0, 0, - 70, 2, 16, 0, 2, 0, + 70, 2, 16, 0, 3, 0, 0, 0, 70, 2, 16, 0, - 7, 0, 0, 0, 52, 0, - 0, 7, 114, 0, 16, 0, - 7, 0, 0, 0, 70, 2, - 16, 0, 3, 0, 0, 0, + 7, 0, 0, 0, 0, 0, + 0, 11, 114, 0, 16, 0, + 8, 0, 0, 0, 70, 2, + 16, 128, 65, 0, 0, 0, + 7, 0, 0, 0, 2, 64, + 0, 0, 0, 0, 128, 63, + 0, 0, 128, 63, 0, 0, + 128, 63, 0, 0, 0, 0, + 56, 0, 0, 10, 114, 0, + 16, 0, 7, 0, 0, 0, 70, 2, 16, 0, 7, 0, - 0, 0, 0, 0, 0, 11, - 114, 0, 16, 0, 8, 0, - 0, 0, 70, 2, 16, 128, - 65, 0, 0, 0, 7, 0, 0, 0, 2, 64, 0, 0, - 0, 0, 128, 63, 0, 0, - 128, 63, 0, 0, 128, 63, - 0, 0, 0, 0, 56, 0, - 0, 10, 114, 0, 16, 0, + 0, 0, 128, 64, 0, 0, + 128, 64, 0, 0, 128, 64, + 0, 0, 0, 0, 129, 0, + 0, 5, 114, 0, 16, 0, 7, 0, 0, 0, 70, 2, 16, 0, 7, 0, 0, 0, - 2, 64, 0, 0, 0, 0, - 128, 64, 0, 0, 128, 64, - 0, 0, 128, 64, 0, 0, - 0, 0, 129, 0, 0, 5, - 114, 0, 16, 0, 7, 0, + 56, 0, 0, 7, 114, 0, + 16, 0, 5, 0, 0, 0, + 70, 2, 16, 0, 5, 0, 0, 0, 70, 2, 16, 0, 7, 0, 0, 0, 56, 0, 0, 7, 114, 0, 16, 0, - 5, 0, 0, 0, 70, 2, - 16, 0, 5, 0, 0, 0, - 70, 2, 16, 0, 7, 0, - 0, 0, 56, 0, 0, 7, - 114, 0, 16, 0, 6, 0, - 0, 0, 70, 2, 16, 0, 6, 0, 0, 0, 70, 2, - 16, 0, 8, 0, 0, 0, - 52, 0, 0, 8, 114, 0, + 16, 0, 6, 0, 0, 0, + 70, 2, 16, 0, 8, 0, + 0, 0, 52, 0, 0, 8, + 114, 0, 16, 0, 5, 0, + 0, 0, 70, 2, 16, 128, + 65, 0, 0, 0, 5, 0, + 0, 0, 70, 2, 16, 0, + 6, 0, 0, 0, 52, 0, + 0, 7, 130, 0, 16, 0, + 0, 0, 0, 0, 42, 0, 16, 0, 5, 0, 0, 0, - 70, 2, 16, 128, 65, 0, - 0, 0, 5, 0, 0, 0, - 70, 2, 16, 0, 6, 0, + 26, 0, 16, 0, 5, 0, 0, 0, 52, 0, 0, 7, 130, 0, 16, 0, 0, 0, - 0, 0, 42, 0, 16, 0, - 5, 0, 0, 0, 26, 0, + 0, 0, 58, 0, 16, 0, + 0, 0, 0, 0, 10, 0, 16, 0, 5, 0, 0, 0, - 52, 0, 0, 7, 130, 0, + 51, 0, 0, 7, 130, 0, 16, 0, 0, 0, 0, 0, 58, 0, 16, 0, 0, 0, - 0, 0, 10, 0, 16, 0, - 5, 0, 0, 0, 51, 0, + 0, 0, 1, 64, 0, 0, + 0, 0, 0, 0, 52, 0, 0, 7, 130, 0, 16, 0, 0, 0, 0, 0, 58, 0, 16, 0, 0, 0, 0, 0, 1, 64, 0, 0, 0, 0, - 0, 0, 52, 0, 0, 7, + 64, 190, 56, 0, 0, 8, 130, 0, 16, 0, 0, 0, 0, 0, 58, 0, 16, 0, - 0, 0, 0, 0, 1, 64, - 0, 0, 0, 0, 64, 190, - 56, 0, 0, 8, 130, 0, - 16, 0, 0, 0, 0, 0, - 58, 0, 16, 0, 0, 0, - 0, 0, 10, 128, 32, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 56, 0, 0, 7, - 114, 0, 16, 0, 0, 0, - 0, 0, 70, 2, 16, 0, - 0, 0, 0, 0, 246, 15, - 16, 0, 0, 0, 0, 0, - 50, 0, 0, 9, 114, 0, - 16, 0, 0, 0, 0, 0, - 246, 15, 16, 0, 0, 0, - 0, 0, 70, 2, 16, 0, - 2, 0, 0, 0, 70, 2, - 16, 0, 0, 0, 0, 0, - 50, 0, 0, 9, 114, 0, - 16, 0, 0, 0, 0, 0, - 246, 15, 16, 0, 0, 0, - 0, 0, 70, 2, 16, 0, - 3, 0, 0, 0, 70, 2, - 16, 0, 0, 0, 0, 0, - 50, 0, 0, 9, 114, 0, + 0, 0, 0, 0, 10, 128, + 32, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 56, 0, + 0, 7, 114, 0, 16, 0, + 0, 0, 0, 0, 70, 2, 16, 0, 0, 0, 0, 0, 246, 15, 16, 0, 0, 0, - 0, 0, 70, 2, 16, 0, - 4, 0, 0, 0, 70, 2, - 16, 0, 0, 0, 0, 0, - 50, 0, 0, 9, 130, 0, - 16, 0, 0, 0, 0, 0, - 58, 0, 16, 0, 0, 0, - 0, 0, 1, 64, 0, 0, - 0, 0, 128, 64, 1, 64, - 0, 0, 0, 0, 128, 63, - 54, 0, 0, 8, 194, 0, - 16, 0, 1, 0, 0, 0, - 2, 64, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 45, 0, 0, 137, - 194, 0, 0, 128, 67, 85, - 21, 0, 114, 0, 16, 0, - 2, 0, 0, 0, 70, 14, - 16, 0, 1, 0, 0, 0, - 70, 126, 16, 0, 0, 0, 0, 0, 50, 0, 0, 9, 114, 0, 16, 0, 0, 0, - 0, 0, 70, 2, 16, 0, - 2, 0, 0, 0, 70, 2, + 0, 0, 246, 15, 16, 0, + 0, 0, 0, 0, 70, 2, 16, 0, 2, 0, 0, 0, 70, 2, 16, 0, 0, 0, + 0, 0, 50, 0, 0, 9, + 114, 0, 16, 0, 0, 0, + 0, 0, 246, 15, 16, 0, + 0, 0, 0, 0, 70, 2, + 16, 0, 3, 0, 0, 0, + 70, 2, 16, 0, 0, 0, + 0, 0, 50, 0, 0, 9, + 114, 0, 16, 0, 0, 0, + 0, 0, 246, 15, 16, 0, + 0, 0, 0, 0, 70, 2, + 16, 0, 4, 0, 0, 0, + 70, 2, 16, 0, 0, 0, + 0, 0, 50, 0, 0, 9, + 130, 0, 16, 0, 0, 0, + 0, 0, 58, 0, 16, 0, + 0, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 128, 64, + 1, 64, 0, 0, 0, 0, + 128, 63, 54, 0, 0, 8, + 194, 0, 16, 0, 1, 0, + 0, 0, 2, 64, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 45, 0, + 0, 137, 194, 0, 0, 128, + 67, 85, 21, 0, 114, 0, + 16, 0, 2, 0, 0, 0, + 70, 14, 16, 0, 1, 0, + 0, 0, 70, 126, 16, 0, + 0, 0, 0, 0, 0, 0, + 0, 7, 114, 0, 16, 0, + 0, 0, 0, 0, 70, 2, + 16, 0, 0, 0, 0, 0, + 70, 2, 16, 0, 2, 0, 0, 0, 30, 0, 0, 8, 66, 0, 16, 0, 1, 0, 0, 0, 58, 0, 16, 128, @@ -465,34 +440,30 @@ const BYTE g_mainCS[] = 16, 0, 0, 0, 0, 0, 246, 15, 16, 0, 0, 0, 0, 0, 70, 2, 16, 0, - 0, 0, 0, 0, 75, 0, - 0, 5, 114, 0, 16, 0, - 0, 0, 0, 0, 70, 2, - 16, 0, 0, 0, 0, 0, - 54, 0, 0, 5, 130, 0, - 16, 0, 0, 0, 0, 0, - 1, 64, 0, 0, 0, 0, - 128, 63, 164, 0, 0, 7, - 242, 224, 17, 0, 0, 0, - 0, 0, 70, 5, 16, 0, - 1, 0, 0, 0, 70, 14, - 16, 0, 0, 0, 0, 0, - 62, 0, 0, 1, 83, 84, - 65, 84, 148, 0, 0, 0, - 55, 0, 0, 0, 9, 0, - 0, 0, 0, 0, 0, 0, - 2, 0, 0, 0, 31, 0, - 0, 0, 4, 0, 0, 0, - 1, 0, 0, 0, 1, 0, - 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 54, 0, + 0, 5, 130, 0, 16, 0, + 0, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 128, 63, + 164, 0, 0, 7, 242, 224, + 17, 0, 0, 0, 0, 0, + 70, 5, 16, 0, 1, 0, + 0, 0, 70, 14, 16, 0, + 0, 0, 0, 0, 62, 0, + 0, 1, 83, 84, 65, 84, + 148, 0, 0, 0, 50, 0, + 0, 0, 9, 0, 0, 0, + 0, 0, 0, 0, 2, 0, + 0, 0, 26, 0, 0, 0, + 4, 0, 0, 0, 1, 0, + 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 5, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, @@ -503,5 +474,6 @@ const BYTE g_mainCS[] = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 1, 0, 0, 0 + 0, 0, 0, 0, 1, 0, + 0, 0 }; diff --git a/Shaders/CompiledShader_RCAS_Linear=1.h b/Shaders/CompiledShader_RCAS_Linear=1.h index 02d78a1..7d33d7e 100644 --- a/Shaders/CompiledShader_RCAS_Linear=1.h +++ b/Shaders/CompiledShader_RCAS_Linear=1.h @@ -51,16 +51,44 @@ imad r1.xy, vThreadGroupID.xyxx, l(8, 8, 0, 0), r1.xyxx iadd r2.xyzw, r1.xyxy, l(0, -1, -1, 0) mov r0.xy, r2.zwzz ld_indexable(texture2d)(float,float,float,float) r0.xyz, r0.xyzw, t0.xyzw +log r3.xyz, r0.xyzx +mul r0.xyz, r0.xyzx, l(12.920000, 12.920000, 12.920000, 0.000000) +max r0.xyz, r0.xyzx, l(0.040450, 0.040450, 0.040450, 0.000000) +mul r3.xyz, r3.xyzx, l(0.416667, 0.416667, 0.416667, 0.000000) +exp r3.xyz, r3.xyzx +mad r3.xyz, r3.xyzx, l(1.055000, 1.055000, 1.055000, 0.000000), l(-0.055000, -0.055000, -0.055000, 0.000000) +min r0.xyz, r0.xyzx, r3.xyzx iadd r3.xyzw, r1.xyxy, l(0, 1, 1, 0) mov r4.xy, r3.zwzz mov r4.zw, l(0,0,0,0) ld_indexable(texture2d)(float,float,float,float) r4.xyz, r4.xyzw, t0.xyzw +log r5.xyz, r4.xyzx +mul r4.xyz, r4.xyzx, l(12.920000, 12.920000, 12.920000, 0.000000) +max r4.xyz, r4.xyzx, l(0.040450, 0.040450, 0.040450, 0.000000) +mul r5.xyz, r5.xyzx, l(0.416667, 0.416667, 0.416667, 0.000000) +exp r5.xyz, r5.xyzx +mad r5.xyz, r5.xyzx, l(1.055000, 1.055000, 1.055000, 0.000000), l(-0.055000, -0.055000, -0.055000, 0.000000) +min r4.xyz, r4.xyzx, r5.xyzx min r5.xyz, r0.xyzx, r4.xyzx mov r2.zw, l(0,0,0,0) ld_indexable(texture2d)(float,float,float,float) r2.xyz, r2.xyzw, t0.xyzw +log r6.xyz, r2.xyzx +mul r2.xyz, r2.xyzx, l(12.920000, 12.920000, 12.920000, 0.000000) +max r2.xyz, r2.xyzx, l(0.040450, 0.040450, 0.040450, 0.000000) +mul r6.xyz, r6.xyzx, l(0.416667, 0.416667, 0.416667, 0.000000) +exp r6.xyz, r6.xyzx +mad r6.xyz, r6.xyzx, l(1.055000, 1.055000, 1.055000, 0.000000), l(-0.055000, -0.055000, -0.055000, 0.000000) +min r2.xyz, r2.xyzx, r6.xyzx min r5.xyz, r5.xyzx, r2.xyzx mov r3.zw, l(0,0,0,0) ld_indexable(texture2d)(float,float,float,float) r3.xyz, r3.xyzw, t0.xyzw +log r6.xyz, r3.xyzx +mul r3.xyz, r3.xyzx, l(12.920000, 12.920000, 12.920000, 0.000000) +max r3.xyz, r3.xyzx, l(0.040450, 0.040450, 0.040450, 0.000000) +mul r6.xyz, r6.xyzx, l(0.416667, 0.416667, 0.416667, 0.000000) +exp r6.xyz, r6.xyzx +mad r6.xyz, r6.xyzx, l(1.055000, 1.055000, 1.055000, 0.000000), l(-0.055000, -0.055000, -0.055000, 0.000000) +min r3.xyz, r3.xyzx, r6.xyzx min r5.xyz, r3.xyzx, r5.xyzx mad r6.xyz, r5.xyzx, l(4.000000, 4.000000, 4.000000, 0.000000), l(-4.000000, -4.000000, -4.000000, 0.000000) rcp r6.xyz, r6.xyzx @@ -85,28 +113,44 @@ mad r0.xyz, r0.wwww, r4.xyzx, r0.xyzx mad r0.w, r0.w, l(4.000000), l(1.000000) mov r1.zw, l(0,0,0,0) ld_indexable(texture2d)(float,float,float,float) r2.xyz, r1.xyzw, t0.xyzw +log r3.xyz, r2.xyzx +mul r2.xyz, r2.xyzx, l(12.920000, 12.920000, 12.920000, 0.000000) +max r2.xyz, r2.xyzx, l(0.040450, 0.040450, 0.040450, 0.000000) +mul r3.xyz, r3.xyzx, l(0.416667, 0.416667, 0.416667, 0.000000) +exp r3.xyz, r3.xyzx +mad r3.xyz, r3.xyzx, l(1.055000, 1.055000, 1.055000, 0.000000), l(-0.055000, -0.055000, -0.055000, 0.000000) +min r2.xyz, r2.xyzx, r3.xyzx add r0.xyz, r0.xyzx, r2.xyzx iadd r1.z, -r0.w, l(0x7ef19fff) mad r0.w, -r1.z, r0.w, l(2.000000) mul r0.w, r0.w, r1.z -mul r0.xyz, r0.wwww, r0.xyzx +mul r2.xyz, r0.wwww, r0.xyzx +mad r0.xyz, r0.xyzx, r0.wwww, l(-0.003131, -0.003131, -0.003131, 0.000000) +mul_sat r0.xyz, r0.xyzx, l(-1.#INF00, -1.#INF00, -1.#INF00, 0.000000) +mad r3.xyz, r2.xyzx, l(0.947867, 0.947867, 0.947867, 0.000000), l(0.052133, 0.052133, 0.052133, 0.000000) +mul r2.xyz, r0.xyzx, r2.xyzx +log r3.xyz, r3.xyzx +mul r3.xyz, r3.xyzx, l(2.400000, 2.400000, 2.400000, 0.000000) +exp r3.xyz, r3.xyzx +mad r0.xyz, -r0.xyzx, r3.xyzx, r3.xyzx +mad r0.xyz, r2.xyzx, l(0.077399, 0.077399, 0.077399, 0.000000), r0.xyzx mov r0.w, l(1.000000) store_uav_typed u0.xyzw, r1.xyyy, r0.xyzw ret -// Approximately 50 instruction slots used +// Approximately 94 instruction slots used #endif const BYTE g_mainCS[] = { - 68, 88, 66, 67, 45, 67, - 247, 117, 11, 98, 201, 183, - 191, 243, 86, 252, 146, 47, - 113, 204, 1, 0, 0, 0, - 216, 8, 0, 0, 5, 0, + 68, 88, 66, 67, 61, 228, + 183, 114, 169, 43, 8, 102, + 214, 132, 181, 91, 10, 230, + 199, 70, 1, 0, 0, 0, + 8, 15, 0, 0, 5, 0, 0, 0, 52, 0, 0, 0, 148, 1, 0, 0, 164, 1, 0, 0, 180, 1, 0, 0, - 60, 8, 0, 0, 82, 68, + 108, 14, 0, 0, 82, 68, 69, 70, 88, 1, 0, 0, 1, 0, 0, 0, 188, 0, 0, 0, 3, 0, 0, 0, @@ -171,8 +215,8 @@ const BYTE g_mainCS[] = 79, 83, 71, 78, 8, 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0, 83, 72, - 69, 88, 128, 6, 0, 0, - 80, 0, 5, 0, 160, 1, + 69, 88, 176, 12, 0, 0, + 80, 0, 5, 0, 44, 3, 0, 0, 106, 8, 0, 1, 89, 0, 0, 4, 70, 142, 32, 0, 0, 0, 0, 0, @@ -233,44 +277,168 @@ const BYTE g_mainCS[] = 0, 0, 0, 0, 70, 14, 16, 0, 0, 0, 0, 0, 70, 126, 16, 0, 0, 0, - 0, 0, 30, 0, 0, 10, - 242, 0, 16, 0, 3, 0, - 0, 0, 70, 4, 16, 0, - 1, 0, 0, 0, 2, 64, - 0, 0, 0, 0, 0, 0, - 1, 0, 0, 0, 1, 0, - 0, 0, 0, 0, 0, 0, - 54, 0, 0, 5, 50, 0, - 16, 0, 4, 0, 0, 0, - 230, 10, 16, 0, 3, 0, - 0, 0, 54, 0, 0, 8, - 194, 0, 16, 0, 4, 0, + 0, 0, 47, 0, 0, 5, + 114, 0, 16, 0, 3, 0, + 0, 0, 70, 2, 16, 0, + 0, 0, 0, 0, 56, 0, + 0, 10, 114, 0, 16, 0, + 0, 0, 0, 0, 70, 2, + 16, 0, 0, 0, 0, 0, + 2, 64, 0, 0, 82, 184, + 78, 65, 82, 184, 78, 65, + 82, 184, 78, 65, 0, 0, + 0, 0, 52, 0, 0, 10, + 114, 0, 16, 0, 0, 0, + 0, 0, 70, 2, 16, 0, + 0, 0, 0, 0, 2, 64, + 0, 0, 213, 174, 37, 61, + 213, 174, 37, 61, 213, 174, + 37, 61, 0, 0, 0, 0, + 56, 0, 0, 10, 114, 0, + 16, 0, 3, 0, 0, 0, + 70, 2, 16, 0, 3, 0, 0, 0, 2, 64, 0, 0, + 85, 85, 213, 62, 85, 85, + 213, 62, 85, 85, 213, 62, + 0, 0, 0, 0, 25, 0, + 0, 5, 114, 0, 16, 0, + 3, 0, 0, 0, 70, 2, + 16, 0, 3, 0, 0, 0, + 50, 0, 0, 15, 114, 0, + 16, 0, 3, 0, 0, 0, + 70, 2, 16, 0, 3, 0, + 0, 0, 2, 64, 0, 0, + 61, 10, 135, 63, 61, 10, + 135, 63, 61, 10, 135, 63, + 0, 0, 0, 0, 2, 64, + 0, 0, 174, 71, 97, 189, + 174, 71, 97, 189, 174, 71, + 97, 189, 0, 0, 0, 0, + 51, 0, 0, 7, 114, 0, + 16, 0, 0, 0, 0, 0, + 70, 2, 16, 0, 0, 0, + 0, 0, 70, 2, 16, 0, + 3, 0, 0, 0, 30, 0, + 0, 10, 242, 0, 16, 0, + 3, 0, 0, 0, 70, 4, + 16, 0, 1, 0, 0, 0, + 2, 64, 0, 0, 0, 0, + 0, 0, 1, 0, 0, 0, + 1, 0, 0, 0, 0, 0, + 0, 0, 54, 0, 0, 5, + 50, 0, 16, 0, 4, 0, + 0, 0, 230, 10, 16, 0, + 3, 0, 0, 0, 54, 0, + 0, 8, 194, 0, 16, 0, + 4, 0, 0, 0, 2, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 45, 0, - 0, 137, 194, 0, 0, 128, - 67, 85, 21, 0, 114, 0, - 16, 0, 4, 0, 0, 0, - 70, 14, 16, 0, 4, 0, - 0, 0, 70, 126, 16, 0, - 0, 0, 0, 0, 51, 0, - 0, 7, 114, 0, 16, 0, - 5, 0, 0, 0, 70, 2, + 0, 0, 0, 0, 0, 0, + 45, 0, 0, 137, 194, 0, + 0, 128, 67, 85, 21, 0, + 114, 0, 16, 0, 4, 0, + 0, 0, 70, 14, 16, 0, + 4, 0, 0, 0, 70, 126, 16, 0, 0, 0, 0, 0, + 47, 0, 0, 5, 114, 0, + 16, 0, 5, 0, 0, 0, + 70, 2, 16, 0, 4, 0, + 0, 0, 56, 0, 0, 10, + 114, 0, 16, 0, 4, 0, + 0, 0, 70, 2, 16, 0, + 4, 0, 0, 0, 2, 64, + 0, 0, 82, 184, 78, 65, + 82, 184, 78, 65, 82, 184, + 78, 65, 0, 0, 0, 0, + 52, 0, 0, 10, 114, 0, + 16, 0, 4, 0, 0, 0, 70, 2, 16, 0, 4, 0, - 0, 0, 54, 0, 0, 8, - 194, 0, 16, 0, 2, 0, 0, 0, 2, 64, 0, 0, + 213, 174, 37, 61, 213, 174, + 37, 61, 213, 174, 37, 61, + 0, 0, 0, 0, 56, 0, + 0, 10, 114, 0, 16, 0, + 5, 0, 0, 0, 70, 2, + 16, 0, 5, 0, 0, 0, + 2, 64, 0, 0, 85, 85, + 213, 62, 85, 85, 213, 62, + 85, 85, 213, 62, 0, 0, + 0, 0, 25, 0, 0, 5, + 114, 0, 16, 0, 5, 0, + 0, 0, 70, 2, 16, 0, + 5, 0, 0, 0, 50, 0, + 0, 15, 114, 0, 16, 0, + 5, 0, 0, 0, 70, 2, + 16, 0, 5, 0, 0, 0, + 2, 64, 0, 0, 61, 10, + 135, 63, 61, 10, 135, 63, + 61, 10, 135, 63, 0, 0, + 0, 0, 2, 64, 0, 0, + 174, 71, 97, 189, 174, 71, + 97, 189, 174, 71, 97, 189, + 0, 0, 0, 0, 51, 0, + 0, 7, 114, 0, 16, 0, + 4, 0, 0, 0, 70, 2, + 16, 0, 4, 0, 0, 0, + 70, 2, 16, 0, 5, 0, + 0, 0, 51, 0, 0, 7, + 114, 0, 16, 0, 5, 0, + 0, 0, 70, 2, 16, 0, + 0, 0, 0, 0, 70, 2, + 16, 0, 4, 0, 0, 0, + 54, 0, 0, 8, 194, 0, + 16, 0, 2, 0, 0, 0, + 2, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 45, 0, - 0, 137, 194, 0, 0, 128, - 67, 85, 21, 0, 114, 0, + 0, 0, 45, 0, 0, 137, + 194, 0, 0, 128, 67, 85, + 21, 0, 114, 0, 16, 0, + 2, 0, 0, 0, 70, 14, 16, 0, 2, 0, 0, 0, - 70, 14, 16, 0, 2, 0, - 0, 0, 70, 126, 16, 0, - 0, 0, 0, 0, 51, 0, + 70, 126, 16, 0, 0, 0, + 0, 0, 47, 0, 0, 5, + 114, 0, 16, 0, 6, 0, + 0, 0, 70, 2, 16, 0, + 2, 0, 0, 0, 56, 0, + 0, 10, 114, 0, 16, 0, + 2, 0, 0, 0, 70, 2, + 16, 0, 2, 0, 0, 0, + 2, 64, 0, 0, 82, 184, + 78, 65, 82, 184, 78, 65, + 82, 184, 78, 65, 0, 0, + 0, 0, 52, 0, 0, 10, + 114, 0, 16, 0, 2, 0, + 0, 0, 70, 2, 16, 0, + 2, 0, 0, 0, 2, 64, + 0, 0, 213, 174, 37, 61, + 213, 174, 37, 61, 213, 174, + 37, 61, 0, 0, 0, 0, + 56, 0, 0, 10, 114, 0, + 16, 0, 6, 0, 0, 0, + 70, 2, 16, 0, 6, 0, + 0, 0, 2, 64, 0, 0, + 85, 85, 213, 62, 85, 85, + 213, 62, 85, 85, 213, 62, + 0, 0, 0, 0, 25, 0, + 0, 5, 114, 0, 16, 0, + 6, 0, 0, 0, 70, 2, + 16, 0, 6, 0, 0, 0, + 50, 0, 0, 15, 114, 0, + 16, 0, 6, 0, 0, 0, + 70, 2, 16, 0, 6, 0, + 0, 0, 2, 64, 0, 0, + 61, 10, 135, 63, 61, 10, + 135, 63, 61, 10, 135, 63, + 0, 0, 0, 0, 2, 64, + 0, 0, 174, 71, 97, 189, + 174, 71, 97, 189, 174, 71, + 97, 189, 0, 0, 0, 0, + 51, 0, 0, 7, 114, 0, + 16, 0, 2, 0, 0, 0, + 70, 2, 16, 0, 2, 0, + 0, 0, 70, 2, 16, 0, + 6, 0, 0, 0, 51, 0, 0, 7, 114, 0, 16, 0, 5, 0, 0, 0, 70, 2, 16, 0, 5, 0, 0, 0, @@ -286,159 +454,299 @@ const BYTE g_mainCS[] = 16, 0, 3, 0, 0, 0, 70, 14, 16, 0, 3, 0, 0, 0, 70, 126, 16, 0, - 0, 0, 0, 0, 51, 0, - 0, 7, 114, 0, 16, 0, - 5, 0, 0, 0, 70, 2, + 0, 0, 0, 0, 47, 0, + 0, 5, 114, 0, 16, 0, + 6, 0, 0, 0, 70, 2, 16, 0, 3, 0, 0, 0, - 70, 2, 16, 0, 5, 0, + 56, 0, 0, 10, 114, 0, + 16, 0, 3, 0, 0, 0, + 70, 2, 16, 0, 3, 0, + 0, 0, 2, 64, 0, 0, + 82, 184, 78, 65, 82, 184, + 78, 65, 82, 184, 78, 65, + 0, 0, 0, 0, 52, 0, + 0, 10, 114, 0, 16, 0, + 3, 0, 0, 0, 70, 2, + 16, 0, 3, 0, 0, 0, + 2, 64, 0, 0, 213, 174, + 37, 61, 213, 174, 37, 61, + 213, 174, 37, 61, 0, 0, + 0, 0, 56, 0, 0, 10, + 114, 0, 16, 0, 6, 0, + 0, 0, 70, 2, 16, 0, + 6, 0, 0, 0, 2, 64, + 0, 0, 85, 85, 213, 62, + 85, 85, 213, 62, 85, 85, + 213, 62, 0, 0, 0, 0, + 25, 0, 0, 5, 114, 0, + 16, 0, 6, 0, 0, 0, + 70, 2, 16, 0, 6, 0, 0, 0, 50, 0, 0, 15, 114, 0, 16, 0, 6, 0, 0, 0, 70, 2, 16, 0, - 5, 0, 0, 0, 2, 64, - 0, 0, 0, 0, 128, 64, - 0, 0, 128, 64, 0, 0, - 128, 64, 0, 0, 0, 0, + 6, 0, 0, 0, 2, 64, + 0, 0, 61, 10, 135, 63, + 61, 10, 135, 63, 61, 10, + 135, 63, 0, 0, 0, 0, + 2, 64, 0, 0, 174, 71, + 97, 189, 174, 71, 97, 189, + 174, 71, 97, 189, 0, 0, + 0, 0, 51, 0, 0, 7, + 114, 0, 16, 0, 3, 0, + 0, 0, 70, 2, 16, 0, + 3, 0, 0, 0, 70, 2, + 16, 0, 6, 0, 0, 0, + 51, 0, 0, 7, 114, 0, + 16, 0, 5, 0, 0, 0, + 70, 2, 16, 0, 3, 0, + 0, 0, 70, 2, 16, 0, + 5, 0, 0, 0, 50, 0, + 0, 15, 114, 0, 16, 0, + 6, 0, 0, 0, 70, 2, + 16, 0, 5, 0, 0, 0, 2, 64, 0, 0, 0, 0, - 128, 192, 0, 0, 128, 192, + 128, 64, 0, 0, 128, 64, + 0, 0, 128, 64, 0, 0, + 0, 0, 2, 64, 0, 0, 0, 0, 128, 192, 0, 0, - 0, 0, 129, 0, 0, 5, - 114, 0, 16, 0, 6, 0, + 128, 192, 0, 0, 128, 192, + 0, 0, 0, 0, 129, 0, + 0, 5, 114, 0, 16, 0, + 6, 0, 0, 0, 70, 2, + 16, 0, 6, 0, 0, 0, + 52, 0, 0, 7, 114, 0, + 16, 0, 7, 0, 0, 0, + 70, 2, 16, 0, 0, 0, 0, 0, 70, 2, 16, 0, - 6, 0, 0, 0, 52, 0, + 4, 0, 0, 0, 52, 0, 0, 7, 114, 0, 16, 0, 7, 0, 0, 0, 70, 2, - 16, 0, 0, 0, 0, 0, - 70, 2, 16, 0, 4, 0, + 16, 0, 2, 0, 0, 0, + 70, 2, 16, 0, 7, 0, 0, 0, 52, 0, 0, 7, 114, 0, 16, 0, 7, 0, 0, 0, 70, 2, 16, 0, - 2, 0, 0, 0, 70, 2, - 16, 0, 7, 0, 0, 0, - 52, 0, 0, 7, 114, 0, + 3, 0, 0, 0, 70, 2, 16, 0, 7, 0, 0, 0, - 70, 2, 16, 0, 3, 0, + 0, 0, 0, 11, 114, 0, + 16, 0, 8, 0, 0, 0, + 70, 2, 16, 128, 65, 0, + 0, 0, 7, 0, 0, 0, + 2, 64, 0, 0, 0, 0, + 128, 63, 0, 0, 128, 63, + 0, 0, 128, 63, 0, 0, + 0, 0, 56, 0, 0, 10, + 114, 0, 16, 0, 7, 0, 0, 0, 70, 2, 16, 0, - 7, 0, 0, 0, 0, 0, - 0, 11, 114, 0, 16, 0, - 8, 0, 0, 0, 70, 2, - 16, 128, 65, 0, 0, 0, 7, 0, 0, 0, 2, 64, - 0, 0, 0, 0, 128, 63, - 0, 0, 128, 63, 0, 0, - 128, 63, 0, 0, 0, 0, - 56, 0, 0, 10, 114, 0, + 0, 0, 0, 0, 128, 64, + 0, 0, 128, 64, 0, 0, + 128, 64, 0, 0, 0, 0, + 129, 0, 0, 5, 114, 0, 16, 0, 7, 0, 0, 0, 70, 2, 16, 0, 7, 0, - 0, 0, 2, 64, 0, 0, - 0, 0, 128, 64, 0, 0, - 128, 64, 0, 0, 128, 64, - 0, 0, 0, 0, 129, 0, - 0, 5, 114, 0, 16, 0, - 7, 0, 0, 0, 70, 2, + 0, 0, 56, 0, 0, 7, + 114, 0, 16, 0, 5, 0, + 0, 0, 70, 2, 16, 0, + 5, 0, 0, 0, 70, 2, 16, 0, 7, 0, 0, 0, 56, 0, 0, 7, 114, 0, - 16, 0, 5, 0, 0, 0, - 70, 2, 16, 0, 5, 0, - 0, 0, 70, 2, 16, 0, - 7, 0, 0, 0, 56, 0, - 0, 7, 114, 0, 16, 0, - 6, 0, 0, 0, 70, 2, 16, 0, 6, 0, 0, 0, - 70, 2, 16, 0, 8, 0, - 0, 0, 52, 0, 0, 8, - 114, 0, 16, 0, 5, 0, - 0, 0, 70, 2, 16, 128, - 65, 0, 0, 0, 5, 0, + 70, 2, 16, 0, 6, 0, 0, 0, 70, 2, 16, 0, - 6, 0, 0, 0, 52, 0, + 8, 0, 0, 0, 52, 0, + 0, 8, 114, 0, 16, 0, + 5, 0, 0, 0, 70, 2, + 16, 128, 65, 0, 0, 0, + 5, 0, 0, 0, 70, 2, + 16, 0, 6, 0, 0, 0, + 52, 0, 0, 7, 130, 0, + 16, 0, 0, 0, 0, 0, + 42, 0, 16, 0, 5, 0, + 0, 0, 26, 0, 16, 0, + 5, 0, 0, 0, 52, 0, 0, 7, 130, 0, 16, 0, - 0, 0, 0, 0, 42, 0, - 16, 0, 5, 0, 0, 0, - 26, 0, 16, 0, 5, 0, - 0, 0, 52, 0, 0, 7, + 0, 0, 0, 0, 58, 0, + 16, 0, 0, 0, 0, 0, + 10, 0, 16, 0, 5, 0, + 0, 0, 51, 0, 0, 7, 130, 0, 16, 0, 0, 0, 0, 0, 58, 0, 16, 0, - 0, 0, 0, 0, 10, 0, - 16, 0, 5, 0, 0, 0, - 51, 0, 0, 7, 130, 0, + 0, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 0, + 52, 0, 0, 7, 130, 0, 16, 0, 0, 0, 0, 0, 58, 0, 16, 0, 0, 0, 0, 0, 1, 64, 0, 0, - 0, 0, 0, 0, 52, 0, - 0, 7, 130, 0, 16, 0, + 0, 0, 64, 190, 56, 0, + 0, 8, 130, 0, 16, 0, 0, 0, 0, 0, 58, 0, 16, 0, 0, 0, 0, 0, - 1, 64, 0, 0, 0, 0, - 64, 190, 56, 0, 0, 8, - 130, 0, 16, 0, 0, 0, - 0, 0, 58, 0, 16, 0, - 0, 0, 0, 0, 10, 128, - 32, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 56, 0, - 0, 7, 114, 0, 16, 0, - 0, 0, 0, 0, 70, 2, + 10, 128, 32, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 56, 0, 0, 7, 114, 0, 16, 0, 0, 0, 0, 0, - 246, 15, 16, 0, 0, 0, - 0, 0, 50, 0, 0, 9, - 114, 0, 16, 0, 0, 0, - 0, 0, 246, 15, 16, 0, - 0, 0, 0, 0, 70, 2, - 16, 0, 2, 0, 0, 0, 70, 2, 16, 0, 0, 0, - 0, 0, 50, 0, 0, 9, - 114, 0, 16, 0, 0, 0, 0, 0, 246, 15, 16, 0, - 0, 0, 0, 0, 70, 2, + 0, 0, 0, 0, 50, 0, + 0, 9, 114, 0, 16, 0, + 0, 0, 0, 0, 246, 15, + 16, 0, 0, 0, 0, 0, + 70, 2, 16, 0, 2, 0, + 0, 0, 70, 2, 16, 0, + 0, 0, 0, 0, 50, 0, + 0, 9, 114, 0, 16, 0, + 0, 0, 0, 0, 246, 15, + 16, 0, 0, 0, 0, 0, + 70, 2, 16, 0, 3, 0, + 0, 0, 70, 2, 16, 0, + 0, 0, 0, 0, 50, 0, + 0, 9, 114, 0, 16, 0, + 0, 0, 0, 0, 246, 15, + 16, 0, 0, 0, 0, 0, + 70, 2, 16, 0, 4, 0, + 0, 0, 70, 2, 16, 0, + 0, 0, 0, 0, 50, 0, + 0, 9, 130, 0, 16, 0, + 0, 0, 0, 0, 58, 0, + 16, 0, 0, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 128, 64, 1, 64, 0, 0, + 0, 0, 128, 63, 54, 0, + 0, 8, 194, 0, 16, 0, + 1, 0, 0, 0, 2, 64, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 45, 0, 0, 137, 194, 0, + 0, 128, 67, 85, 21, 0, + 114, 0, 16, 0, 2, 0, + 0, 0, 70, 14, 16, 0, + 1, 0, 0, 0, 70, 126, + 16, 0, 0, 0, 0, 0, + 47, 0, 0, 5, 114, 0, 16, 0, 3, 0, 0, 0, - 70, 2, 16, 0, 0, 0, - 0, 0, 50, 0, 0, 9, + 70, 2, 16, 0, 2, 0, + 0, 0, 56, 0, 0, 10, + 114, 0, 16, 0, 2, 0, + 0, 0, 70, 2, 16, 0, + 2, 0, 0, 0, 2, 64, + 0, 0, 82, 184, 78, 65, + 82, 184, 78, 65, 82, 184, + 78, 65, 0, 0, 0, 0, + 52, 0, 0, 10, 114, 0, + 16, 0, 2, 0, 0, 0, + 70, 2, 16, 0, 2, 0, + 0, 0, 2, 64, 0, 0, + 213, 174, 37, 61, 213, 174, + 37, 61, 213, 174, 37, 61, + 0, 0, 0, 0, 56, 0, + 0, 10, 114, 0, 16, 0, + 3, 0, 0, 0, 70, 2, + 16, 0, 3, 0, 0, 0, + 2, 64, 0, 0, 85, 85, + 213, 62, 85, 85, 213, 62, + 85, 85, 213, 62, 0, 0, + 0, 0, 25, 0, 0, 5, + 114, 0, 16, 0, 3, 0, + 0, 0, 70, 2, 16, 0, + 3, 0, 0, 0, 50, 0, + 0, 15, 114, 0, 16, 0, + 3, 0, 0, 0, 70, 2, + 16, 0, 3, 0, 0, 0, + 2, 64, 0, 0, 61, 10, + 135, 63, 61, 10, 135, 63, + 61, 10, 135, 63, 0, 0, + 0, 0, 2, 64, 0, 0, + 174, 71, 97, 189, 174, 71, + 97, 189, 174, 71, 97, 189, + 0, 0, 0, 0, 51, 0, + 0, 7, 114, 0, 16, 0, + 2, 0, 0, 0, 70, 2, + 16, 0, 2, 0, 0, 0, + 70, 2, 16, 0, 3, 0, + 0, 0, 0, 0, 0, 7, 114, 0, 16, 0, 0, 0, - 0, 0, 246, 15, 16, 0, + 0, 0, 70, 2, 16, 0, 0, 0, 0, 0, 70, 2, - 16, 0, 4, 0, 0, 0, - 70, 2, 16, 0, 0, 0, - 0, 0, 50, 0, 0, 9, + 16, 0, 2, 0, 0, 0, + 30, 0, 0, 8, 66, 0, + 16, 0, 1, 0, 0, 0, + 58, 0, 16, 128, 65, 0, + 0, 0, 0, 0, 0, 0, + 1, 64, 0, 0, 255, 159, + 241, 126, 50, 0, 0, 10, 130, 0, 16, 0, 0, 0, + 0, 0, 42, 0, 16, 128, + 65, 0, 0, 0, 1, 0, 0, 0, 58, 0, 16, 0, 0, 0, 0, 0, 1, 64, - 0, 0, 0, 0, 128, 64, - 1, 64, 0, 0, 0, 0, - 128, 63, 54, 0, 0, 8, - 194, 0, 16, 0, 1, 0, - 0, 0, 2, 64, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 45, 0, - 0, 137, 194, 0, 0, 128, - 67, 85, 21, 0, 114, 0, - 16, 0, 2, 0, 0, 0, - 70, 14, 16, 0, 1, 0, - 0, 0, 70, 126, 16, 0, - 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 64, + 56, 0, 0, 7, 130, 0, + 16, 0, 0, 0, 0, 0, + 58, 0, 16, 0, 0, 0, + 0, 0, 42, 0, 16, 0, + 1, 0, 0, 0, 56, 0, 0, 7, 114, 0, 16, 0, - 0, 0, 0, 0, 70, 2, + 2, 0, 0, 0, 246, 15, 16, 0, 0, 0, 0, 0, - 70, 2, 16, 0, 2, 0, - 0, 0, 30, 0, 0, 8, - 66, 0, 16, 0, 1, 0, - 0, 0, 58, 0, 16, 128, - 65, 0, 0, 0, 0, 0, - 0, 0, 1, 64, 0, 0, - 255, 159, 241, 126, 50, 0, - 0, 10, 130, 0, 16, 0, - 0, 0, 0, 0, 42, 0, - 16, 128, 65, 0, 0, 0, - 1, 0, 0, 0, 58, 0, + 70, 2, 16, 0, 0, 0, + 0, 0, 50, 0, 0, 12, + 114, 0, 16, 0, 0, 0, + 0, 0, 70, 2, 16, 0, + 0, 0, 0, 0, 246, 15, 16, 0, 0, 0, 0, 0, - 1, 64, 0, 0, 0, 0, - 0, 64, 56, 0, 0, 7, - 130, 0, 16, 0, 0, 0, - 0, 0, 58, 0, 16, 0, - 0, 0, 0, 0, 42, 0, - 16, 0, 1, 0, 0, 0, + 2, 64, 0, 0, 49, 46, + 77, 187, 49, 46, 77, 187, + 49, 46, 77, 187, 0, 0, + 0, 0, 56, 32, 0, 10, + 114, 0, 16, 0, 0, 0, + 0, 0, 70, 2, 16, 0, + 0, 0, 0, 0, 2, 64, + 0, 0, 0, 0, 128, 255, + 0, 0, 128, 255, 0, 0, + 128, 255, 0, 0, 0, 0, + 50, 0, 0, 15, 114, 0, + 16, 0, 3, 0, 0, 0, + 70, 2, 16, 0, 2, 0, + 0, 0, 2, 64, 0, 0, + 110, 167, 114, 63, 110, 167, + 114, 63, 110, 167, 114, 63, + 0, 0, 0, 0, 2, 64, + 0, 0, 25, 137, 85, 61, + 25, 137, 85, 61, 25, 137, + 85, 61, 0, 0, 0, 0, 56, 0, 0, 7, 114, 0, + 16, 0, 2, 0, 0, 0, + 70, 2, 16, 0, 0, 0, + 0, 0, 70, 2, 16, 0, + 2, 0, 0, 0, 47, 0, + 0, 5, 114, 0, 16, 0, + 3, 0, 0, 0, 70, 2, + 16, 0, 3, 0, 0, 0, + 56, 0, 0, 10, 114, 0, + 16, 0, 3, 0, 0, 0, + 70, 2, 16, 0, 3, 0, + 0, 0, 2, 64, 0, 0, + 154, 153, 25, 64, 154, 153, + 25, 64, 154, 153, 25, 64, + 0, 0, 0, 0, 25, 0, + 0, 5, 114, 0, 16, 0, + 3, 0, 0, 0, 70, 2, + 16, 0, 3, 0, 0, 0, + 50, 0, 0, 10, 114, 0, 16, 0, 0, 0, 0, 0, - 246, 15, 16, 0, 0, 0, + 70, 2, 16, 128, 65, 0, + 0, 0, 0, 0, 0, 0, + 70, 2, 16, 0, 3, 0, + 0, 0, 70, 2, 16, 0, + 3, 0, 0, 0, 50, 0, + 0, 12, 114, 0, 16, 0, + 0, 0, 0, 0, 70, 2, + 16, 0, 2, 0, 0, 0, + 2, 64, 0, 0, 145, 131, + 158, 61, 145, 131, 158, 61, + 145, 131, 158, 61, 0, 0, 0, 0, 70, 2, 16, 0, 0, 0, 0, 0, 54, 0, 0, 5, 130, 0, 16, 0, @@ -450,10 +758,10 @@ const BYTE g_mainCS[] = 0, 0, 70, 14, 16, 0, 0, 0, 0, 0, 62, 0, 0, 1, 83, 84, 65, 84, - 148, 0, 0, 0, 50, 0, + 148, 0, 0, 0, 94, 0, 0, 0, 9, 0, 0, 0, 0, 0, 0, 0, 2, 0, - 0, 0, 26, 0, 0, 0, + 0, 0, 70, 0, 0, 0, 4, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, diff --git a/Shaders/FidelityFX-FSR b/Shaders/FidelityFX-FSR index a3b53ee..bcffc81 160000 --- a/Shaders/FidelityFX-FSR +++ b/Shaders/FidelityFX-FSR @@ -1 +1 @@ -Subproject commit a3b53ee03ce1b23280a6d1dd7dacbb0a3f6ed9c1 +Subproject commit bcffc8171efb80e265991301a49670ed755088dd diff --git a/Shaders/RCAS_main.hlsl b/Shaders/RCAS_main.hlsl index 9c64d10..2e0955e 100644 --- a/Shaders/RCAS_main.hlsl +++ b/Shaders/RCAS_main.hlsl @@ -36,9 +36,11 @@ AF4 FsrRcasLoadF(ASU2 p) void FsrRcasInputF(inout AF1 r,inout AF1 g,inout AF1 b) { - if(!LINEAR) + if(LINEAR) { - r*=r;g*=g;b*=b; + r = AToSrgbF1(r); + g = AToSrgbF1(g); + b = AToSrgbF1(b); } } @@ -53,9 +55,9 @@ void mainCS(uint3 LocalThreadId : SV_GroupThreadID, uint3 WorkGroupId : SV_Group // Run the filter. AF3 c; FsrRcasF(c.r,c.g,c.b,gxy,const0); - if(!LINEAR) + if(LINEAR) { - c = sqrt(c); + c = AFromSrgbF3(c); } OutputTexture[gxy] = AF4(c, 1); }