diff options
author | BucketBrigade <138534411+CookieBrigade@users.noreply.github.com> | 2024-11-02 20:02:37 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-11-03 02:02:37 +0100 |
commit | 8d84f1d1a01802b1d092ef9063578dd7e908ca67 (patch) | |
tree | 5732cc8dc67083213408779ad95677c5d57c6ffe /src/main/java/tectech | |
parent | 43ec017ec01272b613bb59cda0e3846c03d9b8b1 (diff) | |
download | GT5-Unofficial-8d84f1d1a01802b1d092ef9063578dd7e908ca67.tar.gz GT5-Unofficial-8d84f1d1a01802b1d092ef9063578dd7e908ca67.tar.bz2 GT5-Unofficial-8d84f1d1a01802b1d092ef9063578dd7e908ca67.zip |
Reduce Bounding Box allocations (#3447)
Diffstat (limited to 'src/main/java/tectech')
-rw-r--r-- | src/main/java/tectech/thing/block/TileEntityEyeOfHarmony.java | 31 |
1 files changed, 17 insertions, 14 deletions
diff --git a/src/main/java/tectech/thing/block/TileEntityEyeOfHarmony.java b/src/main/java/tectech/thing/block/TileEntityEyeOfHarmony.java index 147894f4e2..0687346853 100644 --- a/src/main/java/tectech/thing/block/TileEntityEyeOfHarmony.java +++ b/src/main/java/tectech/thing/block/TileEntityEyeOfHarmony.java @@ -24,24 +24,27 @@ import gtneioreplugin.plugin.block.ModBlocks; public class TileEntityEyeOfHarmony extends TileEntity { private static final double EOH_STAR_FIELD_RADIUS = 13; + private AxisAlignedBB boundingBox; // Prevent culling when block is out of frame so model can remain active. @Override public AxisAlignedBB getRenderBoundingBox() { - - // Assuming your block is at (x, y, z) - double x = this.xCoord; - double y = this.yCoord; - double z = this.zCoord; - - // Create a bounding box that extends 'size' blocks in all directions from the block. - return AxisAlignedBB.getBoundingBox( - x - EOH_STAR_FIELD_RADIUS, - y - EOH_STAR_FIELD_RADIUS, - z - EOH_STAR_FIELD_RADIUS, - x + EOH_STAR_FIELD_RADIUS + 1, - y + EOH_STAR_FIELD_RADIUS + 1, - z + EOH_STAR_FIELD_RADIUS + 1); + if (boundingBox == null) { + // Assuming your block is at (x, y, z) + double x = this.xCoord; + double y = this.yCoord; + double z = this.zCoord; + + // Create a bounding box that extends 'size' blocks in all directions from the block. + boundingBox = AxisAlignedBB.getBoundingBox( + x - EOH_STAR_FIELD_RADIUS, + y - EOH_STAR_FIELD_RADIUS, + z - EOH_STAR_FIELD_RADIUS, + x + EOH_STAR_FIELD_RADIUS + 1, + y + EOH_STAR_FIELD_RADIUS + 1, + z + EOH_STAR_FIELD_RADIUS + 1); + } + return boundingBox; } public void setSize(float size) { |