тесселятор не рисует

Версия Minecraft
1.12.2
1,470
19
189
имеется такой код, который ничего не рисует. почему?
Kotlin:
fun drawColoredRect(x: Int, y: Int, width: Int, height: Int, color: Int) {
        val r = color shr 16 and 0xff
        val g = color shr 8 and 0xff
        val b = color and 0xff
        val a = 255

        val tess = Tessellator.getInstance()
        val buf = tess.buffer
        buf.begin(GL11.GL_QUADS, DefaultVertexFormats.POSITION_COLOR)
        buf.pos(x.toDouble(), y.toDouble(), zLevel).color(r, g, b, a).endVertex()
        buf.pos(x.toDouble(), (y + height).toDouble(), zLevel).color(r, g, b, a).endVertex()
        buf.pos((x + width).toDouble(), (y + height).toDouble(), zLevel).color(r, g, b, a).endVertex()
        buf.pos((x + width).toDouble(), y.toDouble(), zLevel).color(r, g, b, a).endVertex()
        tess.draw()
    }
 
459
13
35
по сути
я бы сделал таким образом:
1) создал класс с этим методом
2) создал класс с эвентом отрисовки
3) унаследовал класс метода
4) отрисовал бы


Код:
public class Base {
    //** твой метод
}

Код:
public class Hud {
    @SubscribeEvent
    public void onRender(RenderGameOverlayEvent.Text event) {
        drawColoredRect(x position, y position, width, height, color);
    }
}
 

Icosider

Kotliner
Администратор
3,603
99
664
по сути
я бы сделал таким образом:
1) создал класс с этим методом
2) создал класс с эвентом отрисовки
3) унаследовал класс метода
4) отрисовал бы


Код:
public class Base {
    //** твой метод
}

Код:
public class Hud {
    @SubscribeEvent
    public void onRender(RenderGameOverlayEvent.Text event) {
        drawColoredRect(x position, y position, width, height, color);
    }
}
Можно вопрос, нафига? У него свой гуи, ему не нужен оверлей, твой способ только для оверлея(там где рисуется хотбар, хп и т.д.)
 
Сверху