From dc636e5d127039dc5cf230eab5bad8ffd851bbb8 Mon Sep 17 00:00:00 2001 From: Raoul Van den Berge Date: Mon, 15 Aug 2016 22:17:25 +0200 Subject: [PATCH] Add texture cache --- src/main/java/refinedstorage/gui/GuiBase.java | 14 ++++++++++---- .../textures/gui/fluid_interface.png | Bin 2061 -> 2038 bytes 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/src/main/java/refinedstorage/gui/GuiBase.java b/src/main/java/refinedstorage/gui/GuiBase.java index 091839e1a..5fb5887da 100755 --- a/src/main/java/refinedstorage/gui/GuiBase.java +++ b/src/main/java/refinedstorage/gui/GuiBase.java @@ -19,11 +19,11 @@ import refinedstorage.gui.sidebutton.SideButton; import refinedstorage.inventory.ItemHandlerFluid; import java.io.IOException; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; +import java.util.*; public abstract class GuiBase extends GuiContainer { + private static final Map TEXTURE_CACHE = new HashMap<>(); + // @TODO: Don't depend on JEI public static final FluidStackRenderer FLUID_RENDERER = new FluidStackRenderer(Fluid.BUCKET_VOLUME, false, 16, 16, null); @@ -204,7 +204,13 @@ public abstract class GuiBase extends GuiContainer { } public void bindTexture(String base, String file) { - mc.getTextureManager().bindTexture(new ResourceLocation(base, "textures/" + file)); + String id = base + ":" + file; + + if (!TEXTURE_CACHE.containsKey(id)) { + TEXTURE_CACHE.put(id, new ResourceLocation(base, "textures/" + file)); + } + + mc.getTextureManager().bindTexture(TEXTURE_CACHE.get(id)); } public void drawItem(int x, int y, ItemStack stack) { diff --git a/src/main/resources/assets/refinedstorage/textures/gui/fluid_interface.png b/src/main/resources/assets/refinedstorage/textures/gui/fluid_interface.png index b4338e12a535bf3a80ab633469cf04d16e880420..864ca9e796cddfa17976166cc0d9b3b65554c778 100755 GIT binary patch literal 2038 zcmeAS@N?(olHy`uVBq!ia0y~yU<5K58911MRQ8&P5Fo{p?&#~tz_78O`%fY(0|PTd zfKP}kP~62^QA&dRf`N&DBm;)v@9e6; zXy+{Oh%9Dc;M)Vjj8pd%c>)C`OI#yLg7ec#$`gxH8440J^GfvcQcDy}^bGV24c2mT z9RQXn(Vi}jAr*0N?>6S$GLT?+xMj-s`jlxil+zYA2)|LgR=?a+jMMO(x>-nmcKhkn z7t2rU%Gn?L`Kj%6!Mo+R|JufX&T3q^{I~u8nD_6G&Z=~)w-Mi9gDz(7?d7Wan-V21XW-ZZU_3kBtm> zzRzL!DfzUNr@(7=!}q7@Q?7ruPMB%!1QdfSZ>VMbvE!_-{2u8?uVOyhR5O2YDn1(i z@BX(+7NEgfG8kDT;68td*NGU8QTqeMwT0*4fi*c7bc~~)QGF!+opeD=JlPgyMtH%N|0mx#`fT}-YvcZ zELVgX^ry~}E6xg)Kcn2hP|i@lPr1Z|;UCM%t@i}2WEifWZ>?r8_zU(1)XDeNfi`j+ z@LmdZ9|NPsRxL&?#+LhnzqY<$xbMi&_R?>@2xCHwS^4i9xAHY_Xdc+{PQ7s7jyT3u zs$hL@-U|V>u_T<;WCR)Dx7G{D6KK#3V&YJ6FlYE9Dw4~d!1RhE;bvGvDpSF$*xyVx z|9*e*{r>-?jWzR|`5?P@t%jN%EJ+-+waL_Ictph8*8BbNkC& zKt_XYyL%OEE0|O9XZ;O#>q`<1wbNq`@0C3ka}lUv&*f)Q`(|#J6$B{gTe~DWM4f>6VkF literal 2061 zcmeAS@N?(olHy`uVBq!ia0y~yU<5K58911MRQ8&P5Fo{p?&#~tz_78O`%fY(0|PTd zfKP}kP~6pE2Pzl^qaiR{L*U7CX(dob zDGBlm2B!9r3>bpHv#SE*nX|wnvY3H^Z!ZWly8oWA7APoL;u=vBoS#-wo>-L1P>`6J zSE84fTB2a0XP{?ju$GJK0I)p5+8&5bNB;Pf?t7Lzg;dl-wIIuGa`c=(;EYNv0j_`Rl*_aWbG=B{s8-X9V0(*`K(5M#nHmEm7a zT_LalZ3u0+e_zn*w&;d+Kl?7+WGH#Rvp@i-sN=l0H3P#5_KIJJqJi4xGX7#`V2EY> zB3?GpPsXP_Zi(>judF*>7K+urxU%rx4EBb53{|(6o?8pVJGr)qI zyCEKEzI4OB<|R?@Ip*>?e4k%j&idkCF~gGRCqOenUc1K+q8<1}K?Oa-g_X{X0h|Z^ z_FcHVhq*V*D{tYJ!`sW#_2woB8I5)t#CHOt+!9ESY48E_^r3Ht=d{DIMO|e z`Gwc)>)3fFF$(5x`3>$hu0&90i@iV;LyG-ic`z)VS*-YLA;j?$P z>1U+6!<2)Rz}XCM%Zjss4opyHVEDi*U>6qgdfl}TkC$7_U;m5Yvi#ZHg^%Ue>I&s@^izopr08#skyZ`_I