[PATCH 1/7] [wined3d] add ps_arb_max_local_constants

Tobias Jakobi liquid.acid at gmx.net
Wed Jul 1 11:36:45 CDT 2009


---
 dlls/wined3d/directx.c    |    4 ++++
 dlls/wined3d/wined3d_gl.h |    1 +
 2 files changed, 5 insertions(+), 0 deletions(-)

diff --git a/dlls/wined3d/directx.c b/dlls/wined3d/directx.c
index 1512a31..e0cb4d1 100644
--- a/dlls/wined3d/directx.c
+++ b/dlls/wined3d/directx.c
@@ -719,6 +719,7 @@ static BOOL IWineD3DImpl_FillGLCaps(WineD3D_GL_Info *gl_info) {
     gl_info->ps_glsl_constantsF = 0;
     gl_info->vs_arb_constantsF = 0;
     gl_info->ps_arb_constantsF = 0;
+    gl_info->ps_arb_max_local_constants = 0;
 
     /* Retrieve opengl defaults */
     glGetIntegerv(GL_MAX_CLIP_PLANES, &gl_max);
@@ -931,6 +932,9 @@ static BOOL IWineD3DImpl_FillGLCaps(WineD3D_GL_Info *gl_info) {
             GL_EXTCALL(glGetProgramivARB(GL_FRAGMENT_PROGRAM_ARB, GL_MAX_PROGRAM_ENV_PARAMETERS_ARB, &gl_max));
             gl_info->ps_arb_constantsF = gl_max;
             TRACE_(d3d_caps)("Max ARB_FRAGMENT_PROGRAM float constants: %d\n", gl_info->ps_arb_constantsF);
+            GL_EXTCALL(glGetProgramivARB(GL_FRAGMENT_PROGRAM_ARB, GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB, &gl_max));
+            gl_info->ps_arb_max_local_constants = gl_max;
+            TRACE_(d3d_caps)("Max ARB_FRAGMENT_PROGRAM local float constants: %d\n", gl_info->ps_arb_max_local_constants);
             GL_EXTCALL(glGetProgramivARB(GL_FRAGMENT_PROGRAM_ARB, GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB, &gl_max));
             gl_info->ps_arb_max_temps = gl_max;
             TRACE_(d3d_caps)("Max ARB_FRAGMENT_PROGRAM native temporaries: %d\n", gl_info->ps_arb_max_temps);
diff --git a/dlls/wined3d/wined3d_gl.h b/dlls/wined3d/wined3d_gl.h
index 9f508a8..68b1a21 100644
--- a/dlls/wined3d/wined3d_gl.h
+++ b/dlls/wined3d/wined3d_gl.h
@@ -3988,6 +3988,7 @@ typedef struct _WineD3D_GL_Info {
   unsigned vs_arb_max_instructions;
   unsigned vs_arb_max_temps;
   unsigned ps_arb_constantsF;
+  unsigned ps_arb_max_local_constants;
   unsigned ps_arb_max_instructions;
   unsigned ps_arb_max_temps;
   unsigned vs_glsl_constantsF;
-- 
1.6.3.3




More information about the wine-patches mailing list