protected int beginPrimitive(int vertexCount, int elemCount) { int vertIdx = vertices.position() / vertexSize(); int verts = vertIdx + vertexCount, elems = elements.position() + elemCount; int availVerts = vertices.capacity() / vertexSize(), availElems = elements.capacity(); if ((verts > availVerts) || (elems > availElems)) { IndexedTrisShader.this.flush(); if (verts > availVerts) expandVerts(verts); if (elems > availElems) expandElems(elems); return 0; } return vertIdx; }
@Override public String toString() { return "cq=" + (elements.capacity()/6); }
private void expandElems(int elemCount) { int newElems = elements.capacity(); while (newElems < elemCount) newElems += EXPAND_ELEMS; elements.expand(newElems); } }