[Bf-blender-cvs] [472e2c5] blender2.8: Blender 2.8: Added immVertex2s() and immAttrib2s()

Mike Erwin noreply at git.blender.org
Wed Nov 16 17:53:43 CET 2016


Commit: 472e2c5acf286dd419ef29981c080e5ba8ec5dee
Author: Mike Erwin
Date:   Wed Nov 16 11:52:02 2016 -0500
Branches: blender2.8
https://developer.blender.org/rB472e2c5acf286dd419ef29981c080e5ba8ec5dee

Blender 2.8: Added immVertex2s() and immAttrib2s()

Just as mentioned in title. Need new functions for calls found in `transform.c`

T49043

Reviewers: merwin

Tags: #bf_blender_2.8

Differential Revision: https://developer.blender.org/D2358

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

M	source/blender/gpu/gawain/immediate.c
M	source/blender/gpu/gawain/immediate.h

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

diff --git a/source/blender/gpu/gawain/immediate.c b/source/blender/gpu/gawain/immediate.c
index 7c3edc2..80b1557 100644
--- a/source/blender/gpu/gawain/immediate.c
+++ b/source/blender/gpu/gawain/immediate.c
@@ -539,6 +539,26 @@ void immAttrib2i(unsigned attrib_id, int x, int y)
 	data[1] = y;
 	}
 
+void immAttrib2s(unsigned attrib_id, short x, short y)
+	{
+	Attrib* attrib = imm.vertex_format.attribs + attrib_id;
+
+#if TRUST_NO_ONE
+	assert(attrib_id < imm.vertex_format.attrib_ct);
+	assert(attrib->comp_type == GL_SHORT);
+	assert(attrib->comp_ct == 2);
+	assert(imm.vertex_idx < imm.vertex_ct);
+	assert(imm.primitive != PRIM_NONE); // make sure we're between a Begin/End pair
+#endif
+
+	setAttribValueBit(attrib_id);
+
+	short* data = (short*)(imm.vertex_data + attrib->offset);
+
+	data[0] = x;
+	data[1] = y;
+	}
+
 void immAttrib3fv(unsigned attrib_id, const float data[3])
 	{
 	immAttrib3f(attrib_id, data[0], data[1], data[2]);
@@ -668,6 +688,12 @@ void immVertex2i(unsigned attrib_id, int x, int y)
 	immEndVertex();
 	}
 
+void immVertex2s(unsigned attrib_id, short x, short y)
+	{
+	immAttrib2s(attrib_id, x, y);
+	immEndVertex();
+	}
+
 void immVertex2fv(unsigned attrib_id, const float data[2])
 	{
 	immAttrib2f(attrib_id, data[0], data[1]);
diff --git a/source/blender/gpu/gawain/immediate.h b/source/blender/gpu/gawain/immediate.h
index ccf7ebe..678f2ec 100644
--- a/source/blender/gpu/gawain/immediate.h
+++ b/source/blender/gpu/gawain/immediate.h
@@ -45,6 +45,8 @@ void immAttrib4f(unsigned attrib_id, float x, float y, float z, float w);
 
 void immAttrib2i(unsigned attrib_id, int x, int y);
 
+void immAttrib2s(unsigned attrib_id, short x, short y);
+
 void immAttrib3fv(unsigned attrib_id, const float data[3]);
 void immAttrib4fv(unsigned attrib_id, const float data[4]);
 
@@ -66,6 +68,8 @@ void immVertex3f(unsigned attrib_id, float x, float y, float z);
 
 void immVertex2i(unsigned attrib_id, int x, int y);
 
+void immVertex2s(unsigned attrib_id, short x, short y);
+
 void immVertex2fv(unsigned attrib_id, const float data[2]);
 void immVertex3fv(unsigned attrib_id, const float data[3]);




More information about the Bf-blender-cvs mailing list