Odd thing when calling getMaxU,getMaxV,getMinU,getMinV
Vectron opened this issue ยท 3 comments
i'm maintaining mapwriter and for some reason with big modpacks the game crashes.
i was able to narrow it down to the problem and it happens when getting the min/max uv values from blocks. for some reason i get a value back that is bigger then 1.0
MFR is one of the mods that does this, and in my understanding of uv cordinates this shouldnt happen.
here is a example of the values i get:
[20:32:47] [Client thread/INFO] [MapWriter/]: MwTexture.getRGB: IllegalArgumentException (icon name: minefactoryreloaded:machines/tile.mfr.tank.top; height: 16; width: 16; MaxU: 0.230465; MinU: 0.226569; MaxV: 1.039016; MinV: 1.031224)
[20:32:47] [Client thread/INFO] [MapWriter/]: MwTexture.getRGB: IllegalArgumentException (pos: 8651680)
[20:32:47] [Client thread/INFO] [MapWriter/]: MwTexture.getRGB: IllegalArgumentException (buffersize: 8388608)
in this case the V values are to big. and the cordinates end up outside the texture atlas.
(pos is the index i'm going to try and acces)
for now i fixed this by checking if i'm going over the texture size.
but this has a side effect that i wont get the colors i need for the minimap.
itterate all blocks in the registry, then
icon = block.getIcon(1, dv);
(dv gets itterated from 0-16)