From afd4e6e45717baf428ceed9ef76da2f79e59e065 Mon Sep 17 00:00:00 2001 From: Joshua Ashton Date: Sun, 8 Mar 2020 22:29:41 +0000 Subject: [PATCH] [d3d9] Use a common header for cs conversion helpers --- src/d3d9/shaders/d3d9_convert_common.h | 13 +++++++++++++ src/d3d9/shaders/d3d9_convert_l6v5u5.comp | 17 +++-------------- 2 files changed, 16 insertions(+), 14 deletions(-) create mode 100644 src/d3d9/shaders/d3d9_convert_common.h diff --git a/src/d3d9/shaders/d3d9_convert_common.h b/src/d3d9/shaders/d3d9_convert_common.h new file mode 100644 index 000000000..b29bf59fa --- /dev/null +++ b/src/d3d9/shaders/d3d9_convert_common.h @@ -0,0 +1,13 @@ +float unormalize(uint value, int bits) { + const int range = (1 << bits) - 1; + + return float(value) / float(range); +} + +float snormalize(int value, int bits) { + const int range = (1 << (bits - 1)) - 1; + + // Min because, -32 and -31 map to -1.0f, and we + // divide by 31. + return max(float(value) / float(range), -1.0f); +} \ No newline at end of file diff --git a/src/d3d9/shaders/d3d9_convert_l6v5u5.comp b/src/d3d9/shaders/d3d9_convert_l6v5u5.comp index 122d2957a..e7ee25a94 100644 --- a/src/d3d9/shaders/d3d9_convert_l6v5u5.comp +++ b/src/d3d9/shaders/d3d9_convert_l6v5u5.comp @@ -1,4 +1,7 @@ #version 450 +#extension GL_GOOGLE_include_directive : enable + +#include "d3d9_convert_common.h" layout( local_size_x = 8, @@ -15,20 +18,6 @@ uniform u_info_t { uvec2 extent; } u_info; -float unormalize(uint value, int bits) { - const int range = (1 << bits) - 1; - - return float(value) / float(range); -} - -float snormalize(int value, int bits) { - const int range = (1 << (bits - 1)) - 1; - - // Min because, -32 and -31 map to -1.0f, and we - // divide by 31. - return max(float(value) / float(range), -1.0f); -} - void main() { ivec3 thread_id = ivec3(gl_GlobalInvocationID);