- 48
- 2
- 9
У меня проблема с рендером моделек поверх модели игрока. Я перехватываю
С чем это может быть связано и как это можно решить? Пробовал так же и
Вот так же код рендера:
RenderPlayerEvent.Pre
и в нем рисую модельку. Все работает хорошо когда рендерится модель для клиента, но когда идет очередь рендера других игроков, которые тоже имеют модельку поверх себя, то почему-то их рендер начинается с позиции клиента, а не игрока для которого происходит рендер. При чем все остальное (вращения модельки в зависимости от угла поворота тела и тд) работает как для того игрока, на котором и должно было все рендериться.С чем это может быть связано и как это можно решить? Пробовал так же и
RenderPlayerEvent.Specials.Pre
, там почему-то все наоборот: позиция совпадает с позицией нужного игрока, а вращение в зависимости от угла поворота тела не происходит (вернее срабатывает, но потом быстро возвращается к исходному значению).Вот так же код рендера:
Java:
GL11.glPushMatrix();
GL11.glScalef(0.2F, 0.2F, 0.2F);
GL11.glRotatef(-player.renderYawOffset - 90, 0, 1, 0); // поворот за телом игрока
GL11.glRotatef(180, 0, 0, 1);
GL11.glTranslatef(0F, -5.5F, 1.5F);
if (player.inventory.armorInventory[1] != null) { // смещение, если на игроке поножи
GL11.glTranslatef(0, 0, 0.2F);
}
if (player.isSneaking()) { // смещение, если игрок крадется
GL11.glTranslatef(-1, 0, 0);
}
Minecraft.getMinecraft().renderEngine.bindTexture(texture);
GL11.glCallList(list); // рендер модели
GL11.glPopMatrix();