[PATCH 1/5] wined3d: The VertexAttrib*h[v] calls in NV_half_float depend on NV_vertex_program.

Henri Verbeet hverbeet at codeweavers.com
Thu Dec 8 14:04:02 CST 2011


Based on a patch by Aurélien Couderc.
---
 dlls/wined3d/drawprim.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/dlls/wined3d/drawprim.c b/dlls/wined3d/drawprim.c
index bfc5ba4..3b18c63 100644
--- a/dlls/wined3d/drawprim.c
+++ b/dlls/wined3d/drawprim.c
@@ -384,7 +384,7 @@ static inline void send_attribute(const struct wined3d_gl_info *gl_info,
             /* Are those 16 bit floats. C doesn't have a 16 bit float type. I could read the single bits and calculate a 4
              * byte float according to the IEEE standard
              */
-            if (gl_info->supported[NV_HALF_FLOAT])
+            if (gl_info->supported[NV_HALF_FLOAT] && gl_info->supported[NV_VERTEX_PROGRAM])
             {
                 /* Not supported by GL_ARB_half_float_vertex */
                 GL_EXTCALL(glVertexAttrib2hvNV(index, ptr));
@@ -397,7 +397,7 @@ static inline void send_attribute(const struct wined3d_gl_info *gl_info,
             }
             break;
         case WINED3DFMT_R16G16B16A16_FLOAT:
-            if (gl_info->supported[NV_HALF_FLOAT])
+            if (gl_info->supported[NV_HALF_FLOAT] && gl_info->supported[NV_VERTEX_PROGRAM])
             {
                 /* Not supported by GL_ARB_half_float_vertex */
                 GL_EXTCALL(glVertexAttrib4hvNV(index, ptr));
-- 
1.7.3.4




More information about the wine-patches mailing list