Browse Source

compilation fixes

Nicolas Cannasse 11 years ago
parent
commit
bbfbb68318
4 changed files with 9 additions and 6 deletions
  1. 1 1
      h3d/prim/Polygon.hx
  2. 6 3
      h3d/prim/Primitive.hx
  3. 1 1
      h3d/prim/Quads.hx
  4. 1 1
      h3d/prim/RawPrimitive.hx

+ 1 - 1
h3d/prim/Polygon.hx

@@ -56,7 +56,7 @@ class Polygon extends Primitive {
 				buf.push(c.z);
 			}
 		}
-		var flags = [];
+		var flags : Array<h3d.Buffer.BufferFlag> = [];
 		if( idx == null ) flags.push(Triangles);
 		if( normals == null ) flags.push(RawFormat);
 		buffer = h3d.Buffer.ofFloats(buf, size, flags);

+ 6 - 3
h3d/prim/Primitive.hx

@@ -23,9 +23,12 @@ class Primitive {
 
 	public function render( engine : h3d.Engine ) {
 		if( buffer == null || buffer.isDisposed() ) alloc(engine);
-		if( indexes == null )
-			engine.renderTriBuffer(buffer);
-		else
+		if( indexes == null ) {
+			if( buffer.flags.has(Quads) )
+				engine.renderQuadBuffer(buffer);
+			else
+				engine.renderTriBuffer(buffer);
+		} else
 			engine.renderIndexed(buffer,indexes);
 	}
 

+ 1 - 1
h3d/prim/Quads.hx

@@ -62,7 +62,7 @@ class Quads extends Primitive {
 		var size = 3;
 		if( normals != null ) size += 3;
 		if( uvs != null ) size += 2;
-		var flags = [Quads];
+		var flags : Array<h3d.Buffer.BufferFlag> = [Quads];
 		if( normals == null ) flags.push(RawFormat);
 		buffer = h3d.Buffer.ofFloats(v, size, flags);
 	}

+ 1 - 1
h3d/prim/RawPrimitive.hx

@@ -3,7 +3,7 @@ package h3d.prim;
 class RawPrimitive extends Primitive {
 
 	public function new( engine : h3d.Engine, vbuf : hxd.FloatBuffer, stride : Int, ?ibuf : hxd.IndexBuffer ) {
-		var flags = [];
+		var flags : Array<h3d.Buffer.BufferFlag> = [];
 		if( ibuf == null ) flags.push(Triangles);
 		if( stride < 8 ) flags.push(RawFormat);
 		buffer = h3d.Buffer.ofFloats(vbuf, stride, flags);