[Bf-blender-cvs] [7be1928ea19] blender2.8: Gawain: VertexFormat: Cleanup

Clément Foucault noreply at git.blender.org
Wed Feb 21 15:28:43 CET 2018


Commit: 7be1928ea1986408972007081ec139ee802ed528
Author: Clément Foucault
Date:   Tue Feb 20 02:20:40 2018 +0100
Branches: blender2.8
https://developer.blender.org/rB7be1928ea1986408972007081ec139ee802ed528

Gawain: VertexFormat: Cleanup

Reorganize struct elements by size, rename a constant.

===================================================================

M	intern/gawain/gawain/gwn_vertex_format.h
M	intern/gawain/src/gwn_vertex_format.c

===================================================================

diff --git a/intern/gawain/gawain/gwn_vertex_format.h b/intern/gawain/gawain/gwn_vertex_format.h
index 911c0605ecc..503c2d03c42 100644
--- a/intern/gawain/gawain/gwn_vertex_format.h
+++ b/intern/gawain/gawain/gwn_vertex_format.h
@@ -14,7 +14,7 @@
 #include "gwn_common.h"
 
 #define GWN_VERT_ATTR_MAX_LEN 16
-#define MAX_ATTRIB_NAMES 3
+#define GWN_VERT_ATTR_MAX_NAMES 3
 #define GWN_VERT_ATTR_NAME_AVERAGE_LEN 11
 #define GWN_VERT_ATTR_NAMES_BUF_LEN ((GWN_VERT_ATTR_NAME_AVERAGE_LEN + 1) * GWN_VERT_ATTR_MAX_LEN)
 
@@ -39,24 +39,24 @@ typedef enum {
 } Gwn_VertFetchMode;
 
 typedef struct Gwn_VertAttr {
+	Gwn_VertFetchMode fetch_mode;
 	Gwn_VertCompType comp_type;
 	unsigned gl_comp_type;
 	unsigned comp_ct; // 1 to 4 or 8 or 12 or 16
 	unsigned sz; // size in bytes, 1 to 64
 	unsigned offset; // from beginning of vertex, in bytes
-	Gwn_VertFetchMode fetch_mode;
-	const char* name[MAX_ATTRIB_NAMES];
-	unsigned name_ct;
+	unsigned name_ct; // up to GWN_VERT_ATTR_MAX_NAMES
+	const char* name[GWN_VERT_ATTR_MAX_NAMES];
 } Gwn_VertAttr;
 
 typedef struct Gwn_VertFormat {
 	unsigned attrib_ct; // 0 to 16 (GWN_VERT_ATTR_MAX_LEN)
 	unsigned name_ct; // total count of active vertex attrib
 	unsigned stride; // stride in bytes, 1 to 256
+	unsigned name_offset;
 	bool packed;
-	Gwn_VertAttr attribs[GWN_VERT_ATTR_MAX_LEN]; // TODO: variable-size attribs array
 	char names[GWN_VERT_ATTR_NAMES_BUF_LEN];
-	unsigned name_offset;
+	Gwn_VertAttr attribs[GWN_VERT_ATTR_MAX_LEN]; // TODO: variable-size attribs array
 } Gwn_VertFormat;
 
 void GWN_vertformat_clear(Gwn_VertFormat*);
diff --git a/intern/gawain/src/gwn_vertex_format.c b/intern/gawain/src/gwn_vertex_format.c
index 4694bc22b2b..c180c304d28 100644
--- a/intern/gawain/src/gwn_vertex_format.c
+++ b/intern/gawain/src/gwn_vertex_format.c
@@ -177,7 +177,7 @@ void GWN_vertformat_alias_add(Gwn_VertFormat* format, const char* alias)
 	Gwn_VertAttr* attrib = format->attribs + (format->attrib_ct - 1);
 #if TRUST_NO_ONE
 	assert(format->name_ct < GWN_VERT_ATTR_MAX_LEN); // there's room for more
-	assert(attrib->name_ct < MAX_ATTRIB_NAMES);
+	assert(attrib->name_ct < GWN_VERT_ATTR_MAX_NAMES);
 #endif
 	format->name_ct++; // multiname support
 	attrib->name[attrib->name_ct++] = copy_attrib_name(format, alias);



More information about the Bf-blender-cvs mailing list