Как рендерить надпись до рендера воды?

Версия Minecraft
1.7.10
Решение
Можно попробовать, что-то типа этого:
Java:
    @SubscribeEvent
    public void renderBoxEntity(RenderWorldLastEvent event) {
        if (mc.theWorld.loadedEntityList.isEmpty()) return;

        double x_fix, y_fix, z_fix;

        x_fix = -(mc.thePlayer.lastTickPosX + (mc.thePlayer.posX - mc.thePlayer.lastTickPosX) * event.partialTicks);
        y_fix = -(mc.thePlayer.lastTickPosY + (mc.thePlayer.posY - mc.thePlayer.lastTickPosY) * event.partialTicks);
        z_fix = -(mc.thePlayer.lastTickPosZ + (mc.thePlayer.posZ - mc.thePlayer.lastTickPosZ) * event.partialTicks);

        GL11.glPushMatrix();
        GL11.glTranslated(x_fix, y_fix, z_fix);
        GL11.glEnable(GL11.GL_BLEND);

        for (int i = 0; i <...
7,099
324
1,510
А где вызываешь renderFloatingText?
 
3,005
192
592
Рендер ника рендерится между вызовами RenderLivingEvent.Specials.Pre и RenderLivingEvent.Specials.Post.
RendererLivingEntity#passSpecialRender
~
Попробуй юзать RenderLivingEvent.Post.
 

timaxa007

Модератор
5,831
409
672
Можно попробовать, что-то типа этого:
Java:
    @SubscribeEvent
    public void renderBoxEntity(RenderWorldLastEvent event) {
        if (mc.theWorld.loadedEntityList.isEmpty()) return;

        double x_fix, y_fix, z_fix;

        x_fix = -(mc.thePlayer.lastTickPosX + (mc.thePlayer.posX - mc.thePlayer.lastTickPosX) * event.partialTicks);
        y_fix = -(mc.thePlayer.lastTickPosY + (mc.thePlayer.posY - mc.thePlayer.lastTickPosY) * event.partialTicks);
        z_fix = -(mc.thePlayer.lastTickPosZ + (mc.thePlayer.posZ - mc.thePlayer.lastTickPosZ) * event.partialTicks);

        GL11.glPushMatrix();
        GL11.glTranslated(x_fix, y_fix, z_fix);
        GL11.glEnable(GL11.GL_BLEND);

        for (int i = 0; i < mc.theWorld.loadedEntityList.size(); ++i) {
            /*
            if (mc.theWorld.loadedEntityList.get(i) instanceof EntityPlayer) {
                EntityPlayer player = (EntityPlayer)mc.theWorld.loadedEntityList.get(i);
                if (player == mc.thePlayer) continue;
        GL11.glTranslated(player.posX, player.posY, player.posZ);
                
            }
            */
        }

        GL11.glDisable(GL11.GL_BLEND);
        GL11.glPopMatrix();

    }
Я конечно рендерил куб, но это больше сработало, чем с эвентом рендера игрока.
 
Так хорошо, проблема решена!

Код:
@SubscribeEvent
    public void renderLivingSpecialsPostEvent(RenderWorldLastEvent event) {
        Minecraft mc = Minecraft.getMinecraft();

        if (mc.theWorld.loadedEntityList.isEmpty()) return;
        
        GL11.glPushMatrix();
        GL11.glEnable(GL11.GL_BLEND);

        for (int i = 0; i < mc.theWorld.loadedEntityList.size(); ++i) {
            if (mc.theWorld.loadedEntityList.get(i) instanceof EntityCreature) {
                EntityCreature e = (EntityCreature) mc.theWorld.loadedEntityList.get(i);
                float x = (float)(e.lastTickPosX + (e.posX - e.lastTickPosX) * event.partialTicks);
                float y = (float)(e.lastTickPosY + (e.posY - e.lastTickPosY) * event.partialTicks);
                float z = (float)(e.lastTickPosZ + (e.posZ - e.lastTickPosZ) * event.partialTicks);
                HexMobNameRender.renderFloatingText(e.getCommandSenderName(), x, y + e.height + 0.5F, z, Color.white.getRGB(), true, event.partialTicks, 20);
            }
        }

        GL11.glDisable(GL11.GL_BLEND);
        GL11.glPopMatrix();

    }

Теперь следущее: 1544451443552.png
у слайма не рендерится, как так?)
 
3,005
192
592
Потому что EntitySlime не наследует EntityCreature ? Хмм..
Если нужны только мобы - чекай IMob.
Если все - EntityLivingBase.
Но тогда вроде и игроки попадать будут.
Или попробуй чекать, что наследует EntityLivingBase и НЕ наследует ICommandSender.
#ТупоТесты
 
3,005
192
592
Работает?
Поставь решено, выдай лучший ответ и поставь "Мне нравится", чей ответ так же помог.
 
3,005
192
592
Кхм, а нечего что человек задал вопрос, ему ответили, и не только я? (И если ты не заметил, что даже лучший ответ не у меня)
Я лишь сказал что человеку "нужно бы" сделать.
 
Сверху