@Override public final void drawTexture( final GL gl, Texture texture, final float x, float y, float z, int texturex, int texturey, int width, int height, float scale) { Check.notNull(gl, "GL cannot be null"); Check.notNull(texture, "Texture cannot be null"); final TextureCoords coords = texture.getSubImageTexCoords(texturex, texturey, texturex + width, texturey + height); // Compute position and size quad.xl = x; quad.xr = quad.xl + (scale * width); quad.yb = y; quad.yt = quad.yb + (scale * height); quad.z = z; quad.sl = coords.left(); quad.sr = coords.right(); quad.tb = coords.bottom(); quad.tt = coords.top(); // Draw quad pipeline.addQuad(gl, quad); }