From 8291e6afb8c566a14441870b103fee5ddccf2e4e Mon Sep 17 00:00:00 2001 From: Alexander01998 Date: Tue, 14 May 2024 20:08:37 +0200 Subject: [PATCH] Prevent unnecessary draw calls for settings in NavigatorFeatureScreen --- .../navigator/NavigatorFeatureScreen.java | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/src/main/java/net/wurstclient/navigator/NavigatorFeatureScreen.java b/src/main/java/net/wurstclient/navigator/NavigatorFeatureScreen.java index da7fda685c..dff77e6153 100644 --- a/src/main/java/net/wurstclient/navigator/NavigatorFeatureScreen.java +++ b/src/main/java/net/wurstclient/navigator/NavigatorFeatureScreen.java @@ -404,6 +404,11 @@ protected void onRender(DrawContext context, int mouseX, int mouseY, { int yc1 = window.getChild(i).getY(); int yc2 = yc1 - 2; + if(yc1 < bgy1 - windowY1) + continue; + if(yc2 > bgy3 - windowY1) + break; + bufferBuilder.vertex(matrix, xc1, yc2, 0).next(); bufferBuilder.vertex(matrix, xc1, yc1, 0).next(); bufferBuilder.vertex(matrix, xc2, yc1, 0).next(); @@ -431,8 +436,16 @@ protected void onRender(DrawContext context, int mouseX, int mouseY, } for(int i = 0; i < window.countChildren(); i++) - window.getChild(i).render(context, mouseX - bgx1, mouseY - windowY1, + { + Component child = window.getChild(i); + if(child.getY() + child.getHeight() < bgy1 - windowY1) + continue; + if(child.getY() > bgy3 - windowY1) + break; + + child.render(context, mouseX - bgx1, mouseY - windowY1, partialTicks); + } matrixStack.pop(); // buttons