Obj блок

Версия Minecraft
1.7.10
929
30
66
Всем привет.
Как сменить иконку obj блоку , стандартно стоит текстура , нужно заменить на свою иконку.
 
Решение
Ех 2 часа ночи самое время отвечать на вопросики)0

Obj формат сам по себе не хранит информацию о текстуре. Только развертка и то не всегда.
Выходит перед рендерингом тебе самому нужно откуда то взять и привязать текстуру. Обычно это происходит так
Java:
Minecraft.getMinecraft().renderEngine.bindTexture(new ResourceLocation("modid", "texture.png"))
Но ты меня немного смутил словами про иконку. Под иконкой в майне обычно подразумевается IIcon. Тут будет немного сложнее. Дело в том что майн в целях оптимизации все текстуры объединяет в одну большую(атлас). Это позволяет не переключать текстуры лишний раз.
IIcon несет в себе информацию о минимальных и максимальных U и V. Выходит алгоритм отрисовки будет примерно таким:
1) Привязываем...
1,111
47
420
Ех 2 часа ночи самое время отвечать на вопросики)0

Obj формат сам по себе не хранит информацию о текстуре. Только развертка и то не всегда.
Выходит перед рендерингом тебе самому нужно откуда то взять и привязать текстуру. Обычно это происходит так
Java:
Minecraft.getMinecraft().renderEngine.bindTexture(new ResourceLocation("modid", "texture.png"))
Но ты меня немного смутил словами про иконку. Под иконкой в майне обычно подразумевается IIcon. Тут будет немного сложнее. Дело в том что майн в целях оптимизации все текстуры объединяет в одну большую(атлас). Это позволяет не переключать текстуры лишний раз.
IIcon несет в себе информацию о минимальных и максимальных U и V. Выходит алгоритм отрисовки будет примерно таким:
1) Привязываем атлас блоков как текстуру
2) Смещаем матрицу текстуры на минимальные U и V
3) Скейлим матрицу текстуры на дельту межд ювихами
4) Возвращаем все как было
Понимаю что щас было сложно потому код:
Java:
glMatrixMode(GL_TEXTURE);
glPushMatrix();
glTranslatef(icon.getMinU(), icon.getMinV(), 0);
glScalef(icon.getMaxU() - icon.getMinU(), icon.getMaxV() - icon.getMinV(), 1);
glMatrixMode(GL_MODELVIEW)
// render
glMatrixMode(GL_TEXTURE);
glPopMatrix();
glMatrixMode(GL_MODELVIEW);
 
Сверху