MFF

    Minecraft Forge France
    • Récent
    • Mots-clés
    • Populaire
    • Utilisateurs
    • Groupes
    • Forge Events
      • Automatique
      • Foncé
      • Clair
    • S'inscrire
    • Se connecter

    GLUtils, ou comment faire des modèles 3D facilement

    Planifier Épinglé Verrouillé Déplacé Autres
    150 Messages 20 Publieurs 60.4k Vues 2 Watching
    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.
    • NeoSyderN Hors-ligne
      NeoSyder
      dernière édition par robin4002

      Bonjour, j’ai voulu m’initier aux modèles 3D mais j’ai quelques soucis.
      J’ai bien suivi le tuto mais lorsque je veux lancer minecraft, le jeu crash.
      Voici le log :
      http://pastebin.com/NCQ8xf0X

      Je précise que j’utilise forge 1.8 et que du coup il y a les .json mais j’ai vu que l’on peut toujours bénéficier de tessallator.

      Dans ma classe principale j’ai mis

      @EventHandler
         public void init(FMLInitializationEvent event)
         {
              GameRegistry.registerTileEntity(TileEntityMew.class, "Mew");
         }
      

      Ensuite ma classe renderer

      package fr.neosyder.****.render;
      
      import org.jglrxavpok.glutils.TessellatorModel;
      import org.lwjgl.opengl.GL11;
      
      import fr.neosyder.*****.TileEntityMew;
      import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer;
      import net.minecraft.tileentity.TileEntity;
      import net.minecraft.util.ResourceLocation;
      
      public class TileMewObjRenderer extends TileEntitySpecialRenderer
      {
      
         private TessellatorModel glmodel;
         //public final ResourceLocation texture = new ResourceLocation("****", "textures/entity/mew.png");
      
         public TileMewObjRenderer()
         {
             glmodel = new TessellatorModel("/assets/*****/models/obj/mew.obj");
             this.glmodel.regenerateNormals();
         }
      
         @Override
         public void renderTileEntityAt(TileEntity tileentity, double posX, double posY, double posZ, float partialRenderTick, int p_180535_9_)
         {
             GL11.glPushMatrix();
             GL11.glTranslated(posX + 0.5F, posY, posZ + 0.5F);
             //GL11.glScaled(0.01, 0.01, 0.01);
             //this.bindTexture(texture);
             glmodel.render();
             GL11.glPopMatrix();
      
         }
      
         public void renderTileEntityTestAt(TileEntityMew tileentity, double posX, double posY, double posZ, float partialRenderTick, int p_180535_9_)
         {
      
         }
      
      }
      

      La classe TileEntity

      package fr.neosyder.****;
      
      import net.minecraft.tileentity.TileEntity;
      
      public class TileEntityMew extends TileEntity
      {
      
      }
      

      Et dans le proxy client j’ai

      ClientRegistry.bindTileEntitySpecialRenderer(TileEntityMew.class, new TileMewObjRenderer() );
      

      J’ai aussi une petite question à propos de l’endroit où on place le fichier GLUtils.jar de jglrxavpok.
      Je l’ai placé ici C:\Users***.gradle\caches\modules-2\files-2.1 et dans le .classpath j’ai rajouté ceci
      <classpathentry kind=“lib” path=“C:/Users/****/.gradle/caches/modules-2/files-2.1/mcglutils.jar” exported=“true”>Ensuite j’ai refait gradlew –refresh-dependencies et le jar est bien affiché dans eclipse, mais était-ce bien comme ça qu’il fallait faire ?

      1 réponse Dernière réponse Répondre Citer 0
      • DeletedD Hors-ligne
        Deleted
        dernière édition par

        @‘NeoSyder’:

        Bonjour, j’ai voulu m’initier aux modèles 3D mais j’ai quelques soucis.
        J’ai bien suivi le tuto mais lorsque je veux lancer minecraft, le jeu crash.
        Voici le log :
        http://pastebin.com/NCQ8xf0X

        Je précise que j’utilise forge 1.8 et que du coup il y a les .json mais j’ai vu que l’on peut toujours bénéficier de tessallator.

        Dans ma classe principale j’ai mis

        @EventHandler
           public void init(FMLInitializationEvent event)
           {
                GameRegistry.registerTileEntity(TileEntityMew.class, "Mew");
           }
        

        Ensuite ma classe renderer

        package fr.neosyder.****.render;
        
        import org.jglrxavpok.glutils.TessellatorModel;
        import org.lwjgl.opengl.GL11;
        
        import fr.neosyder.*****.TileEntityMew;
        import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer;
        import net.minecraft.tileentity.TileEntity;
        import net.minecraft.util.ResourceLocation;
        
        public class TileMewObjRenderer extends TileEntitySpecialRenderer
        {
           
           private TessellatorModel glmodel;
           //public final ResourceLocation texture = new ResourceLocation("****", "textures/entity/mew.png");
        
         
           
           public TileMewObjRenderer()
           {
               glmodel = new TessellatorModel("/assets/*****/models/obj/mew.obj");
               this.glmodel.regenerateNormals();
           }
        
           @Override
           public void renderTileEntityAt(TileEntity tileentity, double posX, double posY, double posZ, float partialRenderTick, int p_180535_9_)
           {
               GL11.glPushMatrix();
               GL11.glTranslated(posX + 0.5F, posY, posZ + 0.5F);
               //GL11.glScaled(0.01, 0.01, 0.01);
               //this.bindTexture(texture);
               glmodel.render();
               GL11.glPopMatrix();
        
           }
           
           public void renderTileEntityTestAt(TileEntityMew tileentity, double posX, double posY, double posZ, float partialRenderTick, int p_180535_9_)
           {
           
           }
        
        }
        

        La classe TileEntity

        package fr.neosyder.****;
        
        import net.minecraft.tileentity.TileEntity;
        
        public class TileEntityMew extends TileEntity
        {
        
        }
        

        Et dans le proxy client j’ai

        ClientRegistry.bindTileEntitySpecialRenderer(TileEntityMew.class, new TileMewObjRenderer() );
        

        J’ai aussi une petite question à propos de l’endroit où on place le fichier GLUtils.jar de jglrxavpok.
        Je l’ai placé ici C:\Users***.gradle\caches\modules-2\files-2.1 et dans le .classpath j’ai rajouté ceci
        <classpathentry kind=“lib” path=“C:/Users/****/.gradle/caches/modules-2/files-2.1/mcglutils.jar” exported=“true”>Ensuite j’ai refait gradlew –refresh-dependencies et le jar est bien affiché dans eclipse, mais était-ce bien comme ça qu’il fallait faire ?</classpathentry>

        Si tu n’as pas d’erreur qui pointent sur les nouvelles class de l’api dans ton mod c’est qu’il est au bon endroit mais si tu n’es pas sûr tu peux rajouter les .java dans ta workspace perso c’est ce que je fais toujours ça je trouve ça mieux et au moins t’es sûr que l’api a bien été installée. Je n’ai pas testé cette api sur la 1.8 mais xavpok avait dit qu’elle fonctionnait sur toutes les versions. Le crash quant à lui indique une erreur à propos d’un event dont il n’aurait pas trouvé la class. Mais avant de lancer ton jeu t’as des erreurs dans ton projet (question bête ^^) ???

        1 réponse Dernière réponse Répondre Citer 0
        • NeoSyderN Hors-ligne
          NeoSyder
          dernière édition par

          D’accord j’essayerai de faire ça ^^
          Oui pour l’erreur j’avais un peu regardé mais sans trouver réellement de solution, d’ailleurs elle pointe sur

          public TileMewObjRenderer()
             {
                 ***glmodel = new TessellatorModel("/assets/*****/models/obj/mew.obj");***
                 this.glmodel.regenerateNormals();
             }
          

          Donc je comprend pas trop le lien :s

          Nope je n’ai aucune erreur, je lance jamais le jeu tant qu’il y en a 😄

          1 réponse Dernière réponse Répondre Citer 0
          • DeletedD Hors-ligne
            Deleted
            dernière édition par

            @‘NeoSyder’:

            D’accord j’essayerai de faire ça ^^
            Oui pour l’erreur j’avais un peu regardé mais sans trouver réellement de solution, d’ailleurs elle pointe sur

            public TileMewObjRenderer()
               {
                   ***glmodel = new TessellatorModel("/assets/*****/models/obj/mew.obj");***
                   this.glmodel.regenerateNormals();
               }
            

            Donc je comprend pas trop le lien :s

            Nope je n’ai aucune erreur, je lance jamais le jeu tant qu’il y en a 😄

            Tu me dis que tu ne lances jamais le jeu quand tu as des erreurs mais tu me dis que tu en as une nan xD ?

            
            ***glmodel = new TessellatorModel("/assets/*****/models/obj/mew.obj");***
            
            
            1 réponse Dernière réponse Répondre Citer 0
            • NeoSyderN Hors-ligne
              NeoSyder
              dernière édition par

              Je parlais d’erreurs soulignées en rouge dans le code 😉 Celle que j’ai eu est apparue au lancement du jeu, je pouvais pas savoir si j’en avais (j’aurais préférée ne pas en avoir xD)

              1 réponse Dernière réponse Répondre Citer 0
              • robin4002R Hors-ligne
                robin4002 Moddeurs confirmés Rédacteurs Administrateurs
                dernière édition par

                La version 1.7.10 ne fonctionne pas en 1.8.
                Faudrait voir avec xav pour une version compatible 1.8

                1 réponse Dernière réponse Répondre Citer 0
                • NeoSyderN Hors-ligne
                  NeoSyder
                  dernière édition par

                  Ok, merci de ta réponse robin. Je vais me prendre une version 1.7.10 alors 🙂

                  1 réponse Dernière réponse Répondre Citer 0
                  • jglrxavpokJ Hors-ligne
                    jglrxavpok Modérateurs
                    dernière édition par

                    Je vais mettre à jour la librairie dès maintenant ! 😛

                    La lib est à jour! Les imports peuvent avoir changé cependant!

                    Modérateur sur MFF. 
                    Mon Github: http://github.com/jglrxavpok
                    Mon compte Steam si vous voulez jouer à CS:GO ou TF2 avec moi: https://steamcommunity.com/id/jglrxavpok/

                    1 réponse Dernière réponse Répondre Citer 0
                    • MursaatM Hors-ligne
                      Mursaat
                      dernière édition par

                      Du coup pour la 1.8, l’interface IItemRenderer est en deprecated, ça pose un soucis ou le tuto est encore valable ?

                      1 réponse Dernière réponse Répondre Citer 0
                      • robin4002R Hors-ligne
                        robin4002 Moddeurs confirmés Rédacteurs Administrateurs
                        dernière édition par

                        Non, en 1.8 il faut passer par les modèles de Minecraft. IItemRenderer ne fonctionne plus.

                        1 réponse Dernière réponse Répondre Citer 0
                        • MursaatM Hors-ligne
                          Mursaat
                          dernière édition par

                          Ok merci.

                          1 réponse Dernière réponse Répondre Citer 0
                          • DeletedD Hors-ligne
                            Deleted
                            dernière édition par

                            Désolé de relancer ce topic mais je voulais savoir si il y avait du nouveau côté animation, je suis impatient d’y arriver. J’ai regardé un peu de plus près le code du mod Pixelmon qui rajoute des models 3D animés. Ils sont pour la plupart en format smd, j’ai compris qu’ils les avaient crée avec le logiciel de Valve Studio mais son code est vraiment complexe. Bref si je n’arrive pas à animer mes .obj de manière convenable et aussi si je n’arrive pas à découper chaque parties comme je le veux, je pense me tourner vers la solution de Pixelmon.
                            Si quelqu’un en connait beaucoup à ce sujet, ça serait sympa d’éclairer ma lanterne =D
                            Merci d’avance !

                            1 réponse Dernière réponse Répondre Citer 0
                            • YeyvoY Hors-ligne
                              Yeyvo
                              dernière édition par

                              C’est quand pour les animation ??   Le  .jar n’est plus disponible 
                              😞

                              1 réponse Dernière réponse Répondre Citer 0
                              • DeletedD Hors-ligne
                                Deleted
                                dernière édition par

                                Si tu veux mon avis Yeyvo, ce projet d’animations intégrées directement à GLUtils n’est plus d’actualité 😕
                                Cependant j’ai réussi à comprendre pas mal de choses à ce niveau et j’ai réussi à faire mes première animations (tout de même basiques) moi-même, mais en revanche je ne me sers pas de GLUtils mais de la classe de forge IModelCustom.
                                Si tu veux + d’explications, contacte moi skype : jules10085 😃

                                1 réponse Dernière réponse Répondre Citer 0
                                • YeyvoY Hors-ligne
                                  Yeyvo
                                  dernière édition par

                                  Merci pour ton offre (je te contacterait skype bientôt) oui je suis du même avis que toi 🙂

                                  1 réponse Dernière réponse Répondre Citer 0
                                  • jglrxavpokJ Hors-ligne
                                    jglrxavpok Modérateurs
                                    dernière édition par

                                    Effectivement, le projet n’est plus trop d’actualité

                                    Modérateur sur MFF. 
                                    Mon Github: http://github.com/jglrxavpok
                                    Mon compte Steam si vous voulez jouer à CS:GO ou TF2 avec moi: https://steamcommunity.com/id/jglrxavpok/

                                    1 réponse Dernière réponse Répondre Citer 0
                                    • DeletedD Hors-ligne
                                      Deleted
                                      dernière édition par

                                      C’est dommage, mais en même temps je comprends que ça reste complexe et que surtout, ça prends du temps 😕
                                      Si j’avais eu les compétences nécessaires en OpenGL, j’aurai certainement continué là où tu t’étais arrêté, mais comme ce n’est pas le cas…Peut-être qu’un jour, j’aurai accumulé assez d’expérience 😄

                                      1 réponse Dernière réponse Répondre Citer 0
                                      • YeyvoY Hors-ligne
                                        Yeyvo
                                        dernière édition par

                                        Dommage T.T

                                        1 réponse Dernière réponse Répondre Citer 0
                                        • GuguG Hors-ligne
                                          Gugu
                                          dernière édition par

                                          Mis à jour en 1.11.2 par mes soins, vous pouvez l’utiliser à nouveau (surtout pour TESR)

                                          "If you have a comprehensive explanation for everything then it decreases uncertainty and anxiety and reduces your cognitive load. And if you can use that simplifying algorithm to put yourself on the side of moral virtue then you’re constantly a good person with a minimum of effort."
                                          ― Jordan B. Peterson

                                          1 réponse Dernière réponse Répondre Citer 0
                                          • AymericRedA Hors-ligne
                                            AymericRed
                                            dernière édition par

                                            Il ne faudrait pas retirer la balise “[Obsolète]” alors ?

                                            Si je vous ai aidé, n'oubliez pas d’être heureux, j'aiderai encore +

                                            AymericRed, moddeur expérimenté qui aide sur ce forum et qui peut accepter de faire un mod Forge rémunéré de temps en temps.

                                            Mes tutos : Table de craft, plugin NEI, plugin JEI, modifier l'overlay
                                            Je suis un membre apprécié et joueur, j'ai déjà obtenu 6 points de réputation.

                                            1 réponse Dernière réponse Répondre Citer 0
                                            • 1
                                            • 2
                                            • 3
                                            • 4
                                            • 5
                                            • 6
                                            • 7
                                            • 8
                                            • 7 / 8
                                            • Premier message
                                              Dernier message
                                            Design by Woryk
                                            ContactMentions Légales

                                            MINECRAFT FORGE FRANCE © 2024

                                            Powered by NodeBB