Commit 93db8e97 authored by Matteo Bruni's avatar Matteo Bruni Committed by Alexandre Julliard

wined3d: Store supported varyings count in d3d_limits.

parent eeea2af5
...@@ -5161,6 +5161,7 @@ static void shader_arb_get_caps(const struct wined3d_gl_info *gl_info, struct sh ...@@ -5161,6 +5161,7 @@ static void shader_arb_get_caps(const struct wined3d_gl_info *gl_info, struct sh
caps->ps_1x_max_value = 0.0f; caps->ps_1x_max_value = 0.0f;
} }
caps->varying_count = 0;
caps->wined3d_caps = WINED3D_SHADER_CAP_SRGB_WRITE; caps->wined3d_caps = WINED3D_SHADER_CAP_SRGB_WRITE;
if (use_nv_clip(gl_info)) if (use_nv_clip(gl_info))
caps->wined3d_caps |= WINED3D_SHADER_CAP_VS_CLIPPING; caps->wined3d_caps |= WINED3D_SHADER_CAP_VS_CLIPPING;
......
...@@ -3707,6 +3707,7 @@ static BOOL wined3d_adapter_init_gl_caps(struct wined3d_adapter *adapter) ...@@ -3707,6 +3707,7 @@ static BOOL wined3d_adapter_init_gl_caps(struct wined3d_adapter *adapter)
adapter->d3d_info.limits.ps_version = shader_caps.ps_version; adapter->d3d_info.limits.ps_version = shader_caps.ps_version;
adapter->d3d_info.limits.vs_uniform_count = shader_caps.vs_uniform_count; adapter->d3d_info.limits.vs_uniform_count = shader_caps.vs_uniform_count;
adapter->d3d_info.limits.ps_uniform_count = shader_caps.ps_uniform_count; adapter->d3d_info.limits.ps_uniform_count = shader_caps.ps_uniform_count;
adapter->d3d_info.limits.varying_count = shader_caps.varying_count;
adapter->vertex_pipe->vp_get_caps(gl_info, &vertex_caps); adapter->vertex_pipe->vp_get_caps(gl_info, &vertex_caps);
adapter->d3d_info.xyzrhw = vertex_caps.xyzrhw; adapter->d3d_info.xyzrhw = vertex_caps.xyzrhw;
......
...@@ -7632,6 +7632,7 @@ static void shader_glsl_get_caps(const struct wined3d_gl_info *gl_info, struct s ...@@ -7632,6 +7632,7 @@ static void shader_glsl_get_caps(const struct wined3d_gl_info *gl_info, struct s
caps->vs_uniform_count = gl_info->limits.glsl_vs_float_constants; caps->vs_uniform_count = gl_info->limits.glsl_vs_float_constants;
caps->ps_uniform_count = gl_info->limits.glsl_ps_float_constants; caps->ps_uniform_count = gl_info->limits.glsl_ps_float_constants;
caps->varying_count = gl_info->limits.glsl_varyings;
/* FIXME: The following line is card dependent. -8.0 to 8.0 is the /* FIXME: The following line is card dependent. -8.0 to 8.0 is the
* Direct3D minimum requirement. * Direct3D minimum requirement.
......
...@@ -1989,6 +1989,7 @@ static void shader_none_get_caps(const struct wined3d_gl_info *gl_info, struct s ...@@ -1989,6 +1989,7 @@ static void shader_none_get_caps(const struct wined3d_gl_info *gl_info, struct s
caps->vs_uniform_count = 0; caps->vs_uniform_count = 0;
caps->ps_uniform_count = 0; caps->ps_uniform_count = 0;
caps->ps_1x_max_value = 0.0f; caps->ps_1x_max_value = 0.0f;
caps->varying_count = 0;
caps->wined3d_caps = 0; caps->wined3d_caps = 0;
} }
......
...@@ -774,6 +774,7 @@ struct shader_caps ...@@ -774,6 +774,7 @@ struct shader_caps
DWORD vs_uniform_count; DWORD vs_uniform_count;
DWORD ps_uniform_count; DWORD ps_uniform_count;
float ps_1x_max_value; float ps_1x_max_value;
DWORD varying_count;
DWORD wined3d_caps; DWORD wined3d_caps;
}; };
...@@ -1748,6 +1749,7 @@ struct wined3d_d3d_limits ...@@ -1748,6 +1749,7 @@ struct wined3d_d3d_limits
UINT vs_version, gs_version, ps_version; UINT vs_version, gs_version, ps_version;
DWORD vs_uniform_count; DWORD vs_uniform_count;
DWORD ps_uniform_count; DWORD ps_uniform_count;
UINT varying_count;
UINT ffp_textures; UINT ffp_textures;
UINT ffp_blend_stages; UINT ffp_blend_stages;
UINT ffp_vertex_blend_matrices; UINT ffp_vertex_blend_matrices;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment