public void render(GOut g, Coord c, Coord ul, Coord br, Coord sz) {
		GL gl = g.gl;
		synchronized (idmon) {
			if ((id != -1) && (mygl != gl)) {
				dispose(mygl, id);
				id = -1;
			}
			if (id < 0)
				create(g);
			g.texsel(id);
		}
		Color amb = blend(g, setenv(gl));
		if (!disableall) {
			gl.glBegin(GL.GL_QUADS);
			float l = ((float) ul.x) / ((float) tdim.x);
			float t = ((float) ul.y) / ((float) tdim.y);
			float r = ((float) br.x) / ((float) tdim.x);
			float b = ((float) br.y) / ((float) tdim.y);
			gl.glColor4f((float) amb.getRed() / 255.0f,
					(float) amb.getGreen() / 255.0f,
					(float) amb.getBlue() / 255.0f,
					(float) amb.getAlpha() / 255.0f);
			gl.glTexCoord2f(l, t);
			gl.glVertex3i(c.x, c.y, 0);
			gl.glTexCoord2f(r, t);
			gl.glVertex3i(c.x + sz.x, c.y, 0);
			gl.glTexCoord2f(r, b);
			gl.glVertex3i(c.x + sz.x, c.y + sz.y, 0);
			gl.glTexCoord2f(l, b);
			gl.glVertex3i(c.x, c.y + sz.y, 0);
			gl.glEnd();
			checkerr(gl);
		}
		//checkerr(gl);
	}