diff options
| author | Jonathan Hamilton <jtrhamilton@gmail.com> | 2018-01-11 11:15:40 -0800 |
|---|---|---|
| committer | Jonathan Hamilton <jtrhamilton@gmail.com> | 2018-01-11 11:15:40 -0800 |
| commit | 46254a2cf2d99b6786d25f985e49c13551a8f395 (patch) | |
| tree | ef0b369d73a0542d0428cfc9bfbfd30c899394be /Source/Core/VideoCommon/TextureConversionShader.cpp | |
| parent | f23dd992dd5ba3c7b20a761032c1559f56bc657f (diff) | |
Some more implicit uint/float conversions in the texture decode shaders
Diffstat (limited to 'Source/Core/VideoCommon/TextureConversionShader.cpp')
| -rw-r--r-- | Source/Core/VideoCommon/TextureConversionShader.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/Source/Core/VideoCommon/TextureConversionShader.cpp b/Source/Core/VideoCommon/TextureConversionShader.cpp index 12ee1e6ddd..4d1539572c 100644 --- a/Source/Core/VideoCommon/TextureConversionShader.cpp +++ b/Source/Core/VideoCommon/TextureConversionShader.cpp @@ -1282,13 +1282,13 @@ static const std::map<TextureFormat, DecodingShaderInfo> s_decoding_shader_info{ { uvec2 uv = gl_GlobalInvocationID.xy; int buffer_pos = int(u_src_offset + (uv.y * u_src_row_stride) + (uv.x / 2u)); - vec4 yuyv = texelFetch(s_input_buffer, buffer_pos); + vec4 yuyv = vec4(texelFetch(s_input_buffer, buffer_pos)); float y = mix(yuyv.r, yuyv.b, (uv.x & 1u) == 1u); - float yComp = 1.164 * (y - 16); - float uComp = yuyv.g - 128; - float vComp = yuyv.a - 128; + float yComp = 1.164 * (y - 16.0); + float uComp = yuyv.g - 128.0; + float vComp = yuyv.a - 128.0; vec4 rgb = vec4(yComp + (1.596 * vComp), yComp - (0.813 * vComp) - (0.391 * uComp), |
