diff options
Diffstat (limited to 'src/main/java/de/hysky/skyblocker/utils/render/FrustumUtils.java')
-rw-r--r-- | src/main/java/de/hysky/skyblocker/utils/render/FrustumUtils.java | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/src/main/java/de/hysky/skyblocker/utils/render/FrustumUtils.java b/src/main/java/de/hysky/skyblocker/utils/render/FrustumUtils.java new file mode 100644 index 00000000..3fe79e43 --- /dev/null +++ b/src/main/java/de/hysky/skyblocker/utils/render/FrustumUtils.java @@ -0,0 +1,21 @@ +package de.hysky.skyblocker.utils.render; + +import de.hysky.skyblocker.mixin.accessor.FrustumInvoker; +import de.hysky.skyblocker.mixin.accessor.WorldRendererAccessor; +import net.minecraft.client.MinecraftClient; +import net.minecraft.client.render.Frustum; +import net.minecraft.util.math.Box; + +public class FrustumUtils { + public static Frustum getFrustum() { + return ((WorldRendererAccessor) MinecraftClient.getInstance().worldRenderer).getFrustum(); + } + + public static boolean isVisible(Box box) { + return getFrustum().isVisible(box); + } + + public static boolean isVisible(double minX, double minY, double minZ, double maxX, double maxY, double maxZ) { + return ((FrustumInvoker) getFrustum()).invokeIsVisible(minX, minY, minZ, maxX, maxY, maxZ); + } +}
\ No newline at end of file |