Рендер ника игрока

есть примеры или мод который меняет рендер ника на свой?хочу переделать так чтобы ник не было видно за блоком
 
7,099
324
1,510
Хукнись в рендер ника, отключи блендинг, включи тест глубины
EntityRenderer#drawNameplate
 
7,099
324
1,510
1.12.2
 
199
1
17
Java:
public class NoRenderNickNamePlayers {

       @SubscribeEvent
       public void renderLiving(RenderPlayerEvent.Pre event) {
          RendererLivingEntity.NAME_TAG_RANGE = 128.0F;
          RendererLivingEntity.NAME_TAG_RANGE_SNEAK = 128.0F;
          Minecraft.getMinecraft().gameSettings.heldItemTooltips = false;
          if(Minecraft.getMinecraft().thePlayer != null && !Minecraft.getMinecraft().thePlayer.capabilities.isCreativeMode && !event.entityPlayer.capabilities.isCreativeMode) {
                RendererLivingEntity.NAME_TAG_RANGE = 0.0F;
                RendererLivingEntity.NAME_TAG_RANGE_SNEAK = 0.0F;
                Minecraft.getMinecraft().gameSettings.heldItemTooltips = true;
              
             }
          }
       }
 
212
8
29
Java:
    @SubscribeEvent
    public void onRenderPlayerLabel(RenderLivingEvent.Specials.Pre e)
    {
        if (e.entity instanceof EntityPlayer)
        {
            e.setCanceled(true);
        }
    }

Очень криво, но это то, что тебе надо:
    @SubscribeEvent
    public void onPlayerRender(RenderPlayerEvent.Post e)
    {
        float f1;
        FontRenderer fontrenderer;
        double d3;
        String p_147906_2_;
        int b0;
        Tessellator tessellator;
        float f;
        int j;
        EntityClientPlayerMP player = Minecraft.getMinecraft().thePlayer;
        GL11.glEnable((int)3042);
        GL11.glPushMatrix();
        GL11.glDepthFunc((int)519);
        GL11.glPushMatrix();
        double playerX = e.entityPlayer.prevPosX + (e.entityPlayer.posX - e.entityPlayer.prevPosX) * (double)e.partialRenderTick;
        double playerY = e.entityPlayer.prevPosY + (e.entityPlayer.posY - e.entityPlayer.prevPosY) * (double)e.partialRenderTick;
        double playerZ = e.entityPlayer.prevPosZ + (e.entityPlayer.posZ - e.entityPlayer.prevPosZ) * (double)e.partialRenderTick;
        GL11.glTranslated((double)(-RenderManager.renderPosX), (double)(-RenderManager.renderPosY), (double)(-RenderManager.renderPosZ));
        GL11.glPushMatrix();
 
            if (this.mc.objectMouseOver.entityHit != null && this.mc.objectMouseOver.entityHit.getCommandSenderName().equals(e.entityPlayer.getCommandSenderName()))
            {
                d3 = e.entity.getDistanceSqToEntity((Entity)RenderManager.instance.livingPlayer);
                p_147906_2_ = e.entityPlayer.getCommandSenderName();
                fontrenderer = Minecraft.getMinecraft().fontRenderer;
                f = 1.6f;
                f1 = 0.016666668f * f;
                GL11.glPushMatrix();
                GL11.glTranslated((double)playerX, (double)(playerY + 2.299999952316284), (double)playerZ);
                GL11.glNormal3f((float)0.0f, (float)1.0f, (float)0.0f);
                GL11.glRotatef((float)(-RenderManager.instance.playerViewY), (float)0.0f, (float)1.0f, (float)0.0f);
                GL11.glRotatef((float)RenderManager.instance.playerViewX, (float)1.0f, (float)0.0f, (float)0.0f);
                GL11.glScalef((float)(-f1), (float)(-f1), (float)f1);
                GL11.glDisable((int)2896);
                GL11.glDepthMask((boolean)false);
                GL11.glEnable((int)3042);
                OpenGlHelper.glBlendFunc((int)770, (int)771, (int)1, (int)0);
                tessellator = Tessellator.instance;
                b0 = 0;
                GL11.glDisable((int)3553);
                d3 = Math.sqrt(d3) / 16.0;
                    if (d3 < 1.0)
                    {
                        d3 = 1.0;
                    }
                    GL11.glScaled((double)d3, (double)d3, (double)d3);
                    tessellator.startDrawingQuads();
                    j = fontrenderer.getStringWidth(p_147906_2_) / 2;
                    tessellator.setColorRGBA_F(0.0f, 0.0f, 0.0f, 0.25f);
                    tessellator.addVertex((double)(-j - 1), (double)(-1 + b0), 0.0);
                    tessellator.addVertex((double)(-j - 1), (double)(8 + b0), 0.0);
                    tessellator.addVertex((double)(j + 1), (double)(8 + b0), 0.0);
                    tessellator.addVertex((double)(j + 1), (double)(-1 + b0), 0.0);
                    tessellator.draw();
                    GL11.glEnable((int)3553);
                    fontrenderer.drawString(p_147906_2_, -fontrenderer.getStringWidth(p_147906_2_) / 2, b0, 16744448);
                    GL11.glDepthMask((boolean)true);
                    fontrenderer.drawString(p_147906_2_, -fontrenderer.getStringWidth(p_147906_2_) / 2, b0, 16744448);
                    GL11.glEnable((int)2896);
                    GL11.glDisable((int)3042);
                    GL11.glColor4f((float)1.0f, (float)1.0f, (float)1.0f, (float)1.0f);
                    GL11.glPopMatrix();
            }
            GL11.glPopMatrix();
    }
 
Последнее редактирование:
103
5
тут проблемы с опенггл какие-то, 1283: Stack overflow выдает
 
212
8
29
Уравняй кол-во GL11.glPushMatrix(); с GL11.glPopMatrix();
 
Сверху