aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gregtech/api
diff options
context:
space:
mode:
authorMartin Robertz <dream-master@gmx.net>2024-05-20 13:09:07 +0200
committerGitHub <noreply@github.com>2024-05-20 13:09:07 +0200
commitac27780ba64058b0e8b0bb0e2d9403eaa0c4c590 (patch)
tree5adc64e1fd1a222333e9a5100e9638aa549d2be5 /src/main/java/gregtech/api
parent5c15a6d67edec1555023c40a40411db3e3614773 (diff)
downloadGT5-Unofficial-ac27780ba64058b0e8b0bb0e2d9403eaa0c4c590.tar.gz
GT5-Unofficial-ac27780ba64058b0e8b0bb0e2d9403eaa0c4c590.tar.bz2
GT5-Unofficial-ac27780ba64058b0e8b0bb0e2d9403eaa0c4c590.zip
Reducing allocation (#2601)
* Add IAllSidedTexturedTileEntity to reduce memory overhead for ore textures (cherry picked from commit 274918800a3bf728e1db88e2d22b14cb6eb1a2e5) * Cache texture for ore, since it doesn't change during the game obviously (cherry picked from commit 45a2fe43f2cdb33fa7c0b05a4b8e4531fd2706a6) * Reduce allocations for inventory ores rendering (cherry picked from commit 5ed6526436e9b3a0586f37eac460f707636a102d) --------- Co-authored-by: SKProCH <skproch@yandex.ru>
Diffstat (limited to 'src/main/java/gregtech/api')
-rw-r--r--src/main/java/gregtech/api/interfaces/tileentity/IAllSidedTexturedTileEntity.java24
1 files changed, 24 insertions, 0 deletions
diff --git a/src/main/java/gregtech/api/interfaces/tileentity/IAllSidedTexturedTileEntity.java b/src/main/java/gregtech/api/interfaces/tileentity/IAllSidedTexturedTileEntity.java
new file mode 100644
index 0000000000..1d00aa5d76
--- /dev/null
+++ b/src/main/java/gregtech/api/interfaces/tileentity/IAllSidedTexturedTileEntity.java
@@ -0,0 +1,24 @@
+package gregtech.api.interfaces.tileentity;
+
+import net.minecraft.block.Block;
+import net.minecraftforge.common.util.ForgeDirection;
+
+import gregtech.api.interfaces.ITexture;
+
+/**
+ * Block which has same texture on all sides
+ */
+public interface IAllSidedTexturedTileEntity extends ITexturedTileEntity {
+
+ /**
+ * @return the Textures rendered by the GT Rendering
+ */
+ default ITexture[] getTexture(Block aBlock, ForgeDirection side) {
+ return getTexture(aBlock);
+ }
+
+ /**
+ * @return the Textures rendered by the GT Rendering
+ */
+ ITexture[] getTexture(Block aBlock);
+}