Browse Source

Merge pull request #9639 from rminderhoud/primitives

Moved binds of PRIMITIVE_* contants from ArrayMesh to Mesh
Rémi Verschelde 8 years ago
parent
commit
f36cd77feb
3 changed files with 34 additions and 29 deletions
  1. 21 21
      doc/base/classes.xml
  2. 11 8
      scene/resources/mesh.cpp
  3. 2 0
      scene/resources/mesh.h

+ 21 - 21
doc/base/classes.xml

@@ -5057,27 +5057,6 @@
 		<constant name="ARRAY_FORMAT_INDEX" value="256">
 			Index array will be used.
 		</constant>
-		<constant name="PRIMITIVE_POINTS" value="0">
-			Render array as points (one vertex equals one point).
-		</constant>
-		<constant name="PRIMITIVE_LINES" value="1">
-			Render array as lines (every two vertices a line is created).
-		</constant>
-		<constant name="PRIMITIVE_LINE_STRIP" value="2">
-			Render array as line strip.
-		</constant>
-		<constant name="PRIMITIVE_LINE_LOOP" value="3">
-			Render array as line loop (like line strip, but closed).
-		</constant>
-		<constant name="PRIMITIVE_TRIANGLES" value="4">
-			Render array as triangles (every three vertices a triangle is created).
-		</constant>
-		<constant name="PRIMITIVE_TRIANGLE_STRIP" value="5">
-			Render array as triangle strips.
-		</constant>
-		<constant name="PRIMITIVE_TRIANGLE_FAN" value="6">
-			Render array as triangle fans.
-		</constant>
 	</constants>
 </class>
 <class name="AtlasTexture" inherits="Texture" category="Core">
@@ -24341,6 +24320,27 @@
 		</method>
 	</methods>
 	<constants>
+		<constant name="PRIMITIVE_POINTS" value="0">
+			Render array as points (one vertex equals one point).
+		</constant>
+		<constant name="PRIMITIVE_LINES" value="1">
+			Render array as lines (every two vertices a line is created).
+		</constant>
+		<constant name="PRIMITIVE_LINE_STRIP" value="2">
+			Render array as line strip.
+		</constant>
+		<constant name="PRIMITIVE_LINE_LOOP" value="3">
+			Render array as line loop (like line strip, but closed).
+		</constant>
+		<constant name="PRIMITIVE_TRIANGLES" value="4">
+			Render array as triangles (every three vertices a triangle is created).
+		</constant>
+		<constant name="PRIMITIVE_TRIANGLE_STRIP" value="5">
+			Render array as triangle strips.
+		</constant>
+		<constant name="PRIMITIVE_TRIANGLE_FAN" value="6">
+			Render array as triangle fans.
+		</constant>
 	</constants>
 </class>
 <class name="MeshDataTool" inherits="Reference" category="Core">

+ 11 - 8
scene/resources/mesh.cpp

@@ -413,6 +413,17 @@ Ref<Mesh> Mesh::create_outline(float p_margin) const {
 	return newmesh;
 }
 
+void Mesh::_bind_methods() {
+
+	BIND_CONSTANT(PRIMITIVE_POINTS);
+	BIND_CONSTANT(PRIMITIVE_LINES);
+	BIND_CONSTANT(PRIMITIVE_LINE_STRIP);
+	BIND_CONSTANT(PRIMITIVE_LINE_LOOP);
+	BIND_CONSTANT(PRIMITIVE_TRIANGLES);
+	BIND_CONSTANT(PRIMITIVE_TRIANGLE_STRIP);
+	BIND_CONSTANT(PRIMITIVE_TRIANGLE_FAN);
+}
+
 Mesh::Mesh() {
 }
 
@@ -1034,14 +1045,6 @@ void ArrayMesh::_bind_methods() {
 	BIND_CONSTANT(ARRAY_FORMAT_BONES);
 	BIND_CONSTANT(ARRAY_FORMAT_WEIGHTS);
 	BIND_CONSTANT(ARRAY_FORMAT_INDEX);
-
-	BIND_CONSTANT(PRIMITIVE_POINTS);
-	BIND_CONSTANT(PRIMITIVE_LINES);
-	BIND_CONSTANT(PRIMITIVE_LINE_STRIP);
-	BIND_CONSTANT(PRIMITIVE_LINE_LOOP);
-	BIND_CONSTANT(PRIMITIVE_TRIANGLES);
-	BIND_CONSTANT(PRIMITIVE_TRIANGLE_STRIP);
-	BIND_CONSTANT(PRIMITIVE_TRIANGLE_FAN);
 }
 
 ArrayMesh::ArrayMesh() {

+ 2 - 0
scene/resources/mesh.h

@@ -46,6 +46,8 @@ class Mesh : public Resource {
 protected:
 	void _clear_triangle_mesh();
 
+	static void _bind_methods();
+
 public:
 	enum {