Henri Verbeet : wined3d: Handle UNORM/SNORM as FLOAT in shader_glsl_sprintf_cast().
Module: wine Branch: master Commit: 1efa4ec7fae94f20f0a4725d3dbc162787a7cbbc URL: https://source.winehq.org/git/wine.git/?a=commit;h=1efa4ec7fae94f20f0a4725d3... Author: Henri Verbeet <hverbeet(a)codeweavers.com> Date: Mon Jan 18 15:38:49 2021 +0100 wined3d: Handle UNORM/SNORM as FLOAT in shader_glsl_sprintf_cast(). Signed-off-by: Henri Verbeet <hverbeet(a)codeweavers.com> Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> --- dlls/wined3d/glsl_shader.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/dlls/wined3d/glsl_shader.c b/dlls/wined3d/glsl_shader.c index 59c73ad4257..1fea6f92be0 100644 --- a/dlls/wined3d/glsl_shader.c +++ b/dlls/wined3d/glsl_shader.c @@ -3124,6 +3124,11 @@ static void shader_glsl_get_swizzle(const struct wined3d_shader_src_param *param static void shader_glsl_sprintf_cast(struct wined3d_string_buffer *dst_param, const char *src_param, enum wined3d_data_type dst_data_type, enum wined3d_data_type src_data_type, unsigned int size) { + if (dst_data_type == WINED3D_DATA_UNORM || dst_data_type == WINED3D_DATA_SNORM) + dst_data_type = WINED3D_DATA_FLOAT; + if (src_data_type == WINED3D_DATA_UNORM || src_data_type == WINED3D_DATA_SNORM) + src_data_type = WINED3D_DATA_FLOAT; + if (dst_data_type == src_data_type) { string_buffer_sprintf(dst_param, "%s", src_param);
participants (1)
-
Alexandre Julliard