@Override public void paint(InternalTransform curTransform, int curTint, GLShader curShader) { if (!visible()) return; if (tint != Tint.NOOP_TINT) curTint = Tint.combine(curTint, tint); render(localTransform(curTransform), curTint, (shader == null) ? curShader : shader); }
@Override protected void render(InternalTransform xform, int curTint, GLShader shader) { xform.translate(originX, originY); xform.transform(pos.set(-originX, -originY), pos); xform.transform(size.set(width, height), size); xform.translate(-originX, -originY); boolean nonEmpty = ctx.startClipped((int) pos.x, (int) pos.y, Math.round(Math.abs(size.x)), Math.round(Math.abs(size.y))); try { if (nonEmpty) { super.render(xform, curTint, shader); } } finally { ctx.endClipped(); } } }