wined3d: Add d3d10 primitive types.

Henri Verbeet hverbeet at codeweavers.com
Thu Mar 5 05:30:43 CST 2009


---
 dlls/wined3d/drawprim.c  |   12 ++++++++++++
 dlls/wined3d/utils.c     |    5 +++++
 include/wine/wined3d.idl |    5 +++++
 3 files changed, 22 insertions(+), 0 deletions(-)

diff --git a/dlls/wined3d/drawprim.c b/dlls/wined3d/drawprim.c
index 9059ebb..91c9bdd 100644
--- a/dlls/wined3d/drawprim.c
+++ b/dlls/wined3d/drawprim.c
@@ -56,6 +56,18 @@ static GLenum primitive_to_gl(WINED3DPRIMITIVETYPE primitive_type)
         case WINED3DPT_TRIANGLEFAN:
             return GL_TRIANGLE_FAN;
 
+        case WINED3DPT_LINELIST_ADJ:
+            return GL_LINES_ADJACENCY_ARB;
+
+        case WINED3DPT_LINESTRIP_ADJ:
+            return GL_LINE_STRIP_ADJACENCY_ARB;
+
+        case WINED3DPT_TRIANGLELIST_ADJ:
+            return GL_TRIANGLES_ADJACENCY_ARB;
+
+        case WINED3DPT_TRIANGLESTRIP_ADJ:
+            return GL_TRIANGLE_STRIP_ADJACENCY_ARB;
+
         default:
             FIXME("Unhandled primitive type %s\n", debug_d3dprimitivetype(primitive_type));
             return GL_NONE;
diff --git a/dlls/wined3d/utils.c b/dlls/wined3d/utils.c
index 87bfac6..5fa4a1f 100644
--- a/dlls/wined3d/utils.c
+++ b/dlls/wined3d/utils.c
@@ -918,12 +918,17 @@ const char* debug_d3dresourcetype(WINED3DRESOURCETYPE res) {
 const char* debug_d3dprimitivetype(WINED3DPRIMITIVETYPE PrimitiveType) {
   switch (PrimitiveType) {
 #define PRIM_TO_STR(prim) case prim: return #prim
+    PRIM_TO_STR(WINED3DPT_UNDEFINED);
     PRIM_TO_STR(WINED3DPT_POINTLIST);
     PRIM_TO_STR(WINED3DPT_LINELIST);
     PRIM_TO_STR(WINED3DPT_LINESTRIP);
     PRIM_TO_STR(WINED3DPT_TRIANGLELIST);
     PRIM_TO_STR(WINED3DPT_TRIANGLESTRIP);
     PRIM_TO_STR(WINED3DPT_TRIANGLEFAN);
+    PRIM_TO_STR(WINED3DPT_LINELIST_ADJ);
+    PRIM_TO_STR(WINED3DPT_LINESTRIP_ADJ);
+    PRIM_TO_STR(WINED3DPT_TRIANGLELIST_ADJ);
+    PRIM_TO_STR(WINED3DPT_TRIANGLESTRIP_ADJ);
 #undef  PRIM_TO_STR
   default:
     FIXME("Unrecognized %u WINED3DPRIMITIVETYPE!\n", PrimitiveType);
diff --git a/include/wine/wined3d.idl b/include/wine/wined3d.idl
index 7faa2de..5c63ef9 100644
--- a/include/wine/wined3d.idl
+++ b/include/wine/wined3d.idl
@@ -97,12 +97,17 @@ typedef enum _WINED3DLIGHTTYPE
 
 typedef enum _WINED3DPRIMITIVETYPE
 {
+    WINED3DPT_UNDEFINED                     = 0,
     WINED3DPT_POINTLIST                     = 1,
     WINED3DPT_LINELIST                      = 2,
     WINED3DPT_LINESTRIP                     = 3,
     WINED3DPT_TRIANGLELIST                  = 4,
     WINED3DPT_TRIANGLESTRIP                 = 5,
     WINED3DPT_TRIANGLEFAN                   = 6,
+    WINED3DPT_LINELIST_ADJ                  = 10,
+    WINED3DPT_LINESTRIP_ADJ                 = 11,
+    WINED3DPT_TRIANGLELIST_ADJ              = 12,
+    WINED3DPT_TRIANGLESTRIP_ADJ             = 13,
     WINED3DPT_FORCE_DWORD                   = 0x7fffffff
 } WINED3DPRIMITIVETYPE;
 
-- 
1.6.0.6



--------------020707080300010706040402--



More information about the wine-patches mailing list