diff --git a/pixelgl/gltriangles.go b/pixelgl/gltriangles.go
index 2e4b8ae52eb06b978a8f0fd9e3902d9483bcf34f..6958e1842ad91fcccc53ae6373a936b4942f3e50 100644
--- a/pixelgl/gltriangles.go
+++ b/pixelgl/gltriangles.go
@@ -71,7 +71,7 @@ func (gt *GLTriangles) SetLen(len int) {
 		}
 	}
 	if len < gt.Len() {
-		gt.data = gt.data[:len]
+		gt.data = gt.data[:len*gt.vs.Stride()]
 	}
 }