• S'inscrire
    • Se connecter
    • Recherche
    • Récent
    • Mots-clés
    • Populaire
    • Utilisateurs
    • Groupes

    Résolu Une question sur le tesselator(DrawTextureModalRect)

    1.7.x
    1.7.10
    2
    17
    2875
    Charger plus de messages
    • Du plus ancien au plus récent
    • Du plus récent au plus ancien
    • Les plus votés
    Répondre
    • Répondre à l'aide d'un nouveau sujet
    Se connecter pour répondre
    Ce sujet a été supprimé. Seuls les utilisateurs avec les droits d'administration peuvent le voir.
    • P
      PlagueZ dernière édition par

      Bonjour,

      je cherche a changer la position d’une texture que je draw a l’écran via tesselator et j’ai jamais trop utilisé la tesselation ducoup je suis un peu perdu

      
      if (props.getCurrentDrugs() == 3){
                 GL11.glBlendFunc(770, 771);
                 GL11.glDisable(GL11.GL_DEPTH_TEST);
                 GL11.glDepthMask(false);
                 GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA);
                 GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F);
                 GL11.glDisable(GL11.GL_ALPHA_TEST);
                 FMLClientHandler.instance().getClient().renderEngine.bindTexture(clean);
                 Tessellator tessellator = Tessellator.instance;
                 tessellator.startDrawingQuads();
                 tessellator.draw();
                 GL11.glDepthMask(true);
                 GL11.glEnable(GL11.GL_DEPTH_TEST);
                 GL11.glEnable(GL11.GL_ALPHA_TEST);
                 GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F);
                 }
      

      j’aimerai préciser les coordonnée X, Y de la texture clean

      merci d’avance

      “Imagination is more important than knowledge. For knowledge is limited to all we now know and understand, while imagination embraces the entire wo…

      1 réponse Dernière réponse Répondre Citer 0
      • SCAREX
        SCAREX dernière édition par

        J’ai pas compris ce que tu voulais faire. La classe Tesselator est faite pour dessiner des objets en 2D principalement, mais tu peux l’utiliser pour dessiner des blocks ou Items en 3D mais c’est plus simple d’utiliser l’openGL pour çà. D’après ce que je vois tu utilises un mélange d’openGL et de Tesselator.

        Site web contenant mes scripts : http://SCAREXgaming.github.io

        Pas de demandes de support par MP ni par skype SVP.
        Je n'accepte sur skype que l…

        1 réponse Dernière réponse Répondre Citer 0
        • P
          PlagueZ dernière édition par

          En fait j essaye de Draw un icône sur l’écran sauf que il se draw en haut a gauche moi je veut que il soit au niveau de la barre de bouffe donc je veut préciser sa position X,Y

          “Imagination is more important than knowledge. For knowledge is limited to all we now know and understand, while imagination embraces the entire wo…

          1 réponse Dernière réponse Répondre Citer 0
          • SCAREX
            SCAREX dernière édition par

            Tu vas chercher trop loin : il y a un event RenderGameOverlayEvent, sur lequelle tu mets une condition pour savoir si c’est la barre de nourriture qui est dessinée et une fois appelée, tu appelle une méthode drawTextureModalRect (soit venant de la classe GUI, soit tu peux la recopier plus proprement dans ta classe, je te conseille cette dernière solution).

            Site web contenant mes scripts : http://SCAREXgaming.github.io

            Pas de demandes de support par MP ni par skype SVP.
            Je n'accepte sur skype que l…

            1 réponse Dernière réponse Répondre Citer 0
            • P
              PlagueZ dernière édition par

              Le problème avec ça c est que ça crée des bug de texture sur une barre que je draw de la même façon en gros j ai 3 barre de statut une barre d’expérience custom un barre d’eau et une barre de statut pour la dépendance au drogues la première barre fonctionne parfaitement la deuxième aussi mais des que j’essaye d ajouter l’icône soit l icône se draw dans un carré de 16*16 mais sa taille est égale a celle de l’écran donc on vois que quelques pixel soir le rendu de ma barre d’eau bug en passant par cette méthode avec le tesselator je n’ai plus aucun bug ;S

              “Imagination is more important than knowledge. For knowledge is limited to all we now know and understand, while imagination embraces the entire wo…

              1 réponse Dernière réponse Répondre Citer 0
              • SCAREX
                SCAREX dernière édition par

                Il faut penser à faire le draw de tes textures dans le POST du RenderGameOverlayEvent. Je comprends pas trop ce que çà fait, envoi une screenshot.

                Site web contenant mes scripts : http://SCAREXgaming.github.io

                Pas de demandes de support par MP ni par skype SVP.
                Je n'accepte sur skype que l…

                1 réponse Dernière réponse Répondre Citer 0
                • P
                  PlagueZ dernière édition par

                  j’ai régler le problème de rendu de la barre d eau c’était de ma faute reste que l image en 1616 s’affiche toujours en 200200

                  http://puu.sh/jmFVA/48466318f9.jpg
                  avec: drawTexturedModalRect(j2-8, k2-20, 1, 1, 16, 16);

                  http://puu.sh/jmG2q/7d44e2e95e.jpg
                  avec: drawTexturedModalRect(j2-8, k2-100, 1, 1, 120, 120);

                  j’avait pensé a un GL11.gl_scaled mais ça resize toute l interface de minecraft

                  “Imagination is more important than knowledge. For knowledge is limited to all we now know and understand, while imagination embraces the entire wo…

                  1 réponse Dernière réponse Répondre Citer 0
                  • SCAREX
                    SCAREX dernière édition par

                    Ton draw est pas bon, voici les paramètres : x,y, offsetX, offsetY, width, height. Dans la plupart des cas (dont le tiens), l’offset devrait être de 0.

                    Donc : drawTextureModalRect(j2-8, k2 - 100, 0, 0, 16, 16)

                    Site web contenant mes scripts : http://SCAREXgaming.github.io

                    Pas de demandes de support par MP ni par skype SVP.
                    Je n'accepte sur skype que l…

                    1 réponse Dernière réponse Répondre Citer 0
                    • P
                      PlagueZ dernière édition par

                      ça change rien toujours carré blanc comme dans le 1er cas
                      au cas ou je drop le code

                      
                      if (props.getCurrentDrugs() == 3){
                             ScaledResolution scaledresolution = new ScaledResolution(this.mc, this.mc.displayWidth, this.mc.displayHeight);
                             int k = scaledresolution.getScaledWidth();
                             int l = scaledresolution.getScaledHeight();
                             int j2;
                             int k2;
                             j2 = (k - this.mc.fontRenderer.getStringWidth("")) / 2;
                             k2 = l - 31 - 4;
                      
                      this.mc.getTextureManager().bindTexture(clean);
                      drawTexturedModalRect(j2-8, k2-100, 0, 0, 16, 16);            
                                 }
                      

                      “Imagination is more important than knowledge. For knowledge is limited to all we now know and understand, while imagination embraces the entire wo…

                      1 réponse Dernière réponse Répondre Citer 0
                      • SCAREX
                        SCAREX dernière édition par

                        Rajoute un Gl11.glScalef.

                        Petit conseil : fait le draw en x = y = 0. Et déplace le avec un GL11.glTranslate, comme ceci :

                        GL11.glPushMatrix()
                        GL11.glTranslatef(x, y 0.0F) // C'est du 2D donc pas de translation sur l'axe Z
                        float scale = 2.0F;
                        GL11.glScalef(scale, scale, 0.0F)
                        drawTextureModalRect(0,0,0,0, 16, 16)
                        GL11.glPopMatrix()
                        

                        En fait, le width et le height sont ceux de la texture, pas du fichier.

                        Site web contenant mes scripts : http://SCAREXgaming.github.io

                        Pas de demandes de support par MP ni par skype SVP.
                        Je n'accepte sur skype que l…

                        1 réponse Dernière réponse Répondre Citer 0
                        • P
                          PlagueZ dernière édition par

                          ok je comprend mieux j’avais mal compris la méthode drawTextureModalRect je pensait que c’était la taille du fichier ;S

                          ca fonctionne toujours pas:
                          http://puu.sh/jmQ9Q/22ab6817d1.jpg

                          le carré a juste un couleur au lieu du blanc d’avant j’ai changer le scalef a 1.0 toujours pareil et si je le diminue encore ça réduit le cadre la taille du DrawTextureModalRect pas l’image en elle même

                          “Imagination is more important than knowledge. For knowledge is limited to all we now know and understand, while imagination embraces the entire wo…

                          1 réponse Dernière réponse Répondre Citer 0
                          • SCAREX
                            SCAREX dernière édition par

                            Renvoi ton code + la fonction drawTexturemModalRect().

                            Site web contenant mes scripts : http://SCAREXgaming.github.io

                            Pas de demandes de support par MP ni par skype SVP.
                            Je n'accepte sur skype que l…

                            1 réponse Dernière réponse Répondre Citer 0
                            • P
                              PlagueZ dernière édition par

                              Le voici

                              if (props.getCurrentDrugs() == 3){
                              ScaledResolution scaledresolution = new ScaledResolution(this.mc, this.mc.displayWidth, this.mc.displayHeight);
                              int k = scaledresolution.getScaledWidth();
                              int l = scaledresolution.getScaledHeight();
                              int j2;
                              int k2;
                              j2 = (k / 2);
                              k2 = l - 31 - 4;
                              
                              this.mc.getTextureManager().bindTexture(clean);
                              GL11.glPushMatrix();
                              GL11.glTranslatef(j2-8, k2-20, 0.0F); // C'est du 2D donc pas de translation sur l'axe Z
                              float scale = 1.0F;
                              GL11.glScalef(scale, scale, 0.0F);
                              drawTexturedModalRect(0, 0, 0, 0, 16, 16);
                              GL11.glPopMatrix();
                              }
                              
                              

                              “Imagination is more important than knowledge. For knowledge is limited to all we now know and understand, while imagination embraces the entire wo…

                              1 réponse Dernière réponse Répondre Citer 0
                              • SCAREX
                                SCAREX dernière édition par

                                @‘SCAREX’:

                                Renvoi ton code + la fonction drawTexturemModalRect().

                                Site web contenant mes scripts : http://SCAREXgaming.github.io

                                Pas de demandes de support par MP ni par skype SVP.
                                Je n'accepte sur skype que l…

                                1 réponse Dernière réponse Répondre Citer 0
                                • P
                                  PlagueZ dernière édition par

                                  vu que j extend gui j’utilise la fonction DrawTextureModalRect de celui-ci

                                  public void drawTexturedModalRect(int p_73729_1_, int p_73729_2_, int p_73729_3_, int p_73729_4_, int p_73729_5_, int p_73729_6_)
                                  {
                                  float f = 0.00390625F;
                                  float f1 = 0.00390625F;
                                  Tessellator tessellator = Tessellator.instance;
                                  tessellator.startDrawingQuads();
                                  tessellator.addVertexWithUV((double)(p_73729_1_ + 0), (double)(p_73729_2_ + p_73729_6_), (double)this.zLevel, (double)((float)(p_73729_3_ + 0) * f), (double)((float)(p_73729_4_ + p_73729_6_) * f1));
                                  tessellator.addVertexWithUV((double)(p_73729_1_ + p_73729_5_), (double)(p_73729_2_ + p_73729_6_), (double)this.zLevel, (double)((float)(p_73729_3_ + p_73729_5_) * f), (double)((float)(p_73729_4_ + p_73729_6_) * f1));
                                  tessellator.addVertexWithUV((double)(p_73729_1_ + p_73729_5_), (double)(p_73729_2_ + 0), (double)this.zLevel, (double)((float)(p_73729_3_ + p_73729_5_) * f), (double)((float)(p_73729_4_ + 0) * f1));
                                  tessellator.addVertexWithUV((double)(p_73729_1_ + 0), (double)(p_73729_2_ + 0), (double)this.zLevel, (double)((float)(p_73729_3_ + 0) * f), (double)((float)(p_73729_4_ + 0) * f1));
                                  tessellator.draw();
                                  }
                                  

                                  cette méthode ci

                                  “Imagination is more important than knowledge. For knowledge is limited to all we now know and understand, while imagination embraces the entire wo…

                                  1 réponse Dernière réponse Répondre Citer 0
                                  • SCAREX
                                    SCAREX dernière édition par

                                    Essaie de mettre 256 en taille et de diminuer le scale, la taille doit être donnée en base 256.

                                    Site web contenant mes scripts : http://SCAREXgaming.github.io

                                    Pas de demandes de support par MP ni par skype SVP.
                                    Je n'accepte sur skype que l…

                                    1 réponse Dernière réponse Répondre Citer 0
                                    • P
                                      PlagueZ dernière édition par

                                      c’était ça merci encore du coup de main 😉 je passe en resolut

                                      “Imagination is more important than knowledge. For knowledge is limited to all we now know and understand, while imagination embraces the entire wo…

                                      1 réponse Dernière réponse Répondre Citer 0
                                      • 1 / 1
                                      • Premier message
                                        Dernier message
                                      Design by Woryk
                                      Contact / Mentions Légales

                                      MINECRAFT FORGE FRANCE © 2018

                                      Powered by NodeBB