Background menu



  • Bonjour,
    J'ai posté il y a quelque temps une demande d'aide pour afficher un background sur le menu de minecraft. En mettant la version du jeu à jour cela ne fonctionne plus.
    Voici le code que j'utilise :

     private void renderBackGround()
        {
            GL11.glViewport(0, 0, 256, 256);
            this.mc.getTextureManager().bindTexture(backGround); 
            GL11.glDisable(GL11.GL_TEXTURE_2D);
            GL11.glEnable(GL11.GL_TEXTURE_2D);
            GL11.glViewport(0, 0, this.mc.displayWidth, this.mc.displayHeight);
            Tessellator tessellator = Tessellator.getInstance();
            WorldRenderer worldrenderer = tessellator.getWorldRenderer();
            worldrenderer.startDrawingQuads();
            GL11.glTexParameteri(GL11.GL_TEXTURE_2D, GL11.GL_TEXTURE_MIN_FILTER, GL11.GL_LINEAR);
            GL11.glTexParameteri(GL11.GL_TEXTURE_2D, GL11.GL_TEXTURE_MAG_FILTER, GL11.GL_LINEAR);
            int k = this.width;
            int l = this.height;
            worldrenderer.addVertexWithUV(0, 0, this.zLevel, 0, 0);
            worldrenderer.addVertexWithUV(0, l, this.zLevel, 0, 1);
            worldrenderer.addVertexWithUV(k, l, this.zLevel, 1, 1);
            worldrenderer.addVertexWithUV(k, 0, this.zLevel, 1, 0);
            tessellator.draw();
        }
    

    Les fonctions startDrawingQuads et addVertexWithUv n'existe plus. Ont-elles changé de nom ? J'ai essayé de chercher dans la classe worldrenderer mais je n'ai rien trouvé.

    Merci d'avance.


  • Administrateurs

    Salut,
    En 1.8.9 c'est :

    […]
           Tessellator tessellator = Tessellator.getInstance();
           WorldRenderer world = tessellator.getWorldRenderer();
           world.begin(7, DefaultVertexFormats.POSITION_TEX); // POSITION_TEX car on utiliser .pos et .tex (pos = position, tex = texture).
           […]
    
           world.pos(0, 0, this.zLevel).tex(0, 0).endVertex();
           world.pos(0, l, this.zLevel).tex(0, 1).endVertex();
           world.pos(k, l, this.zLevel).tex(1, 1).endVertex();
           world.pos(k, 0, this.zLevel).tex(1, 0).endVertex();
           tessellator.draw();
    


  • Parfait, merci beaucoup 😉