- 42
- 8
Всем привет!
Ситуация следующая: прислали psd-шку, надо накатить её на GUI. Ничего не предвещало беды, всё накатилось, а при тестах заметил странную дичь, которая никак не хочет фикситься: png-файл бэкграунда вытягивается по вертикали. Ниже прикреплю 2 скриншота:
1. В фотошопе
2. В игре
Как можно заметить, ячейки для предметов сильно вытягиваются, из-за чего предмет там влезает в сокет не полностью. В фотошопе размер сокета 16x16 пикселей, что соответствует формату Minecraft, а в игре что-то страшное начинает происходить.
Код GUI:
Как я понял, drawTexturedModalRect рисует текстуру как-то не так. Прошу помочь с решением этой проблемы.
Спасибо.
Ситуация следующая: прислали psd-шку, надо накатить её на GUI. Ничего не предвещало беды, всё накатилось, а при тестах заметил странную дичь, которая никак не хочет фикситься: png-файл бэкграунда вытягивается по вертикали. Ниже прикреплю 2 скриншота:
1. В фотошопе
2. В игре
Как можно заметить, ячейки для предметов сильно вытягиваются, из-за чего предмет там влезает в сокет не полностью. В фотошопе размер сокета 16x16 пикселей, что соответствует формату Minecraft, а в игре что-то страшное начинает происходить.
Код GUI:
GUI:
public class TradeGUI extends GuiContainer {
public InventoryPlayer inv;
public TradeInventory stats;
public TradeGUI(InventoryPlayer inventoryplayer, TradeInventory holder)
{
super(new TradeContainer(inventoryplayer, holder));
this.inv = inventoryplayer;
this.stats = holder;
this.allowUserInput = false;
this.xSize = 171;
this.ySize = 256;
}
@Override
public void initGui() {
super.initGui();
this.buttonList.add(new EcoButton(1, this.guiLeft+5,this.guiTop+127, "Продать"));
this.buttonList.add(new BigEcoButton(1, this.guiLeft+80,this.guiTop+127, "Проверить цену"));
}
@Override
protected void drawGuiContainerForegroundLayer(int par1, int par2)
{
}
public static final ResourceLocation background = new ResourceLocation("ecomod", "textures/gui/trade_gui.png");
protected void drawGuiContainerBackgroundLayer(float f, int i, int j)
{
GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F);
this.mc.getTextureManager().bindTexture(background);
int cornerX = (this.width - this.xSize) / 2;
int cornerY = (this.height - this.ySize) / 2;
drawTexturedModalRect(cornerX, cornerY, 0, 0, this.xSize, this.ySize);
}
}
Как я понял, drawTexturedModalRect рисует текстуру как-то не так. Прошу помочь с решением этой проблемы.
Спасибо.