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.
    • DeletedD Hors-ligne
      Deleted
      dernière édition par

      Up toujours aucune idée les gens ? Sinon pour les ombres je pense que c’est dû à mon model sinon pour le IInventoryRenderer je vais relire entièrement et soigneusement le tuto sur les TESR et si y’a du nouveau je vous tiendrai au courant ^^

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

        @‘Julot10085’:

        @‘jglrxavpok’:

        @‘ZeAmateis’:

        Comment faire avec un mob ? Pour appliquer ce genre de model.obj à un mob ? Est-ce lourd pour minecraft ?

        Pour un mob, utilise un render et appelle la méthode render() du model dans renderEntity() du render.
        (Pour les renders, une petite partie est expliquée ici)
        Pour le poids, tout dépend du model.

        Je comprends bien pour appeler la méthode render() du model de mon mob mais il faut l’appeler dans RenderEntity du Render euh what? RenderEntity c’est une méthode si oui je ne la trouve pas ? faut-il la créer et comment plz help?

        Regarde le tuto sur les entitées…

        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

          Je reviens à vous encore une fois pour cette fois ci laisser déjà de côté les entitées mais cette fois pour les items cela ne marche pas or j’ai enregistré mon item dans ma class client proxy, ait crée un nouveau item basique et ait crée sa class SpecialRender la voici :

          
          package mods.maxiworldcraft.mineKingdomHeartsmod.common;
          
          import net.minecraft.entity.Entity;
          import net.minecraft.item.ItemStack;
          import net.minecraftforge.client.IItemRenderer;
          
          import org.jglrxavpok.glutils.TessellatorModel;
          import org.jglrxavpok.glutils.TessellatorModelEvent;
          import org.jglrxavpok.glutils.TessellatorModelEvent.RenderGroupEvent;
          import org.lwjgl.opengl.GL11;
          
          import cpw.mods.fml.common.eventhandler.SubscribeEvent;
          
          public class ChaineRoyaleItemRenderer implements IItemRenderer
          {
          
          private TessellatorModel model;
          private double bladeAngle;
          private int direction;
          
          public ChaineRoyaleItemRenderer()
          {
          model = new TessellatorModel("/assets/obj/VorpalBlade/VorpalBlade.obj");
          model.regenerateNormals();
          model.setID("blade");
          TessellatorModel.MODEL_RENDERING_BUS.register(this);
          }
          
          @Override
          public boolean handleRenderType(ItemStack item, ItemRenderType type)
          {
          switch(type)
          {
          case ENTITY:
          return true;
          case EQUIPPED_FIRST_PERSON:
          return true;
          case EQUIPPED:
          return true;
          case INVENTORY:
          return true;
          default:
          return false;
          }
          }
          
          @Override
          public boolean shouldUseRenderHelper(ItemRenderType type, ItemStack item, ItemRendererHelper helper)
          {
          if(type == ItemRenderType.INVENTORY && helper == ItemRendererHelper.INVENTORY_BLOCK)
          return true;
          return false;
          }
          
          @Override
          public void renderItem(ItemRenderType type, ItemStack item, Object… data)
          {
          GL11.glScaled(0.05,0.05,0.05);
          switch(type)
          {
          case ENTITY:
          {
          GL11.glPushMatrix();
          GL11.glTranslated(0,0.1,0);
          GL11.glRotated(10, 0, 0, 1);
          GL11.glShadeModel(GL11.GL_SMOOTH);
          model.render();
          GL11.glPopMatrix();
          break;
          }
          case EQUIPPED_FIRST_PERSON:
          {
          GL11.glPushMatrix();
          GL11.glTranslated(10,10.0,0.0);
          GL11.glRotated(200, 0, 1, 0);
          GL11.glRotated(-10, 1, 0, 0);
          
          GL11.glRotated(200, 0, 1, 0);
          GL11.glRotated(20, 1, 0, 0);
          GL11.glRotated(-10, 0, 0, 1);
          GL11.glRotated(25, 0, 1, 0);
          GL11.glRotated(10, 1, 0, 0);
          
          GL11.glRotated(180, 0, 1, 0);
          
          GL11.glShadeModel(GL11.GL_SMOOTH);
          model.render();
          GL11.glPopMatrix();
          break;
          }
          case EQUIPPED:
          {
          GL11.glPushMatrix();
          GL11.glTranslated(10,0.0,0.0);
          GL11.glRotated(200, 0, 1, 0);
          GL11.glRotated(-10, 1, 0, 0);
          GL11.glShadeModel(GL11.GL_SMOOTH);
          model.render();
          GL11.glPopMatrix();
          break;
          }
          case INVENTORY:
          {
          GL11.glPushMatrix();
          GL11.glTranslated(10, -10, 0);
          GL11.glRotated(90, 0, 1, 0);
          GL11.glRotated(-45, 1, 0, 0);
          GL11.glRotated(180, 0, 1, 0);
          GL11.glShadeModel(GL11.GL_SMOOTH);
          model.render();
          GL11.glDisable(GL11.GL_DEPTH_TEST);
          GL11.glPopMatrix();
          break;
          }
          default:
          break;
          }
          }
          
          }
          
          

          L’item n’a pas de texture IG donc si quelqu’un a une soluce je suis preneur je pense notamment quecela vient du fait que mes block TESR n’ont pas dde texture dans l’inventaire et dans la main mais regardez mes messages un peu plus vieux et vous verrez toutes mes class

          EDIT j’ai vraiment relu le tuto sur les entitées jglrxavpok mais toujours rien j’ai testé comme ça mais j’ai un crash sur l’appel de la méthode

          
          package mods.maxiworldcraft.mineKingdomHeartsmod.client;
          
          import org.jglrxavpok.glutils.TessellatorModel;
          
          import mods.maxiworldcraft.mineKingdomHeartsmod.common.EntityRei;
          import mods.maxiworldcraft.mineKingdomHeartsmod.common.modMineKingdomHearts;
          import net.minecraft.client.model.ModelBiped;
          import net.minecraft.client.renderer.entity.RenderBiped;
          import net.minecraft.entity.EntityLiving;
          import net.minecraft.util.ResourceLocation;
          
          public class RenderRei extends RenderBiped
          {
          private ModelRei model;
          private TessellatorModel mode1;
          
          public RenderRei(ModelBiped modelbiped, float float1) {
          super(modelbiped, float1);
          
          model.render(null, float1, float1, float1, float1, float1, float1);
          mode1 = new TessellatorModel("/assets/modminekingdomhearts/obj/Hayner/heyner.obj");
          }
          
          //Localisation de la Texture
          
          public final ResourceLocation texture = new ResourceLocation(modMineKingdomHearts.MODID, "textures/entity/rei.png");
          
          protected ResourceLocation getEntityTexture(EntityLiving living)
          {
          return this.getMobTutorielTexture((EntityRei)living);
          }
          
          private ResourceLocation getMobTutorielTexture(EntityRei mobTutoriel)
          {
          return texture;
          }
          
          }
          
          

          Le truc c’est que je ne sais pas quoi mettre comme arguments dans la méthode render du model appelée dans la class render de mon mob

          De l’aide plz si quelqu’un a déjà réussi ??

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

            Tu compte faire une entité qui utilise le modèle 3D ?

            Les mouvements vont êtres durs ( très durs ) a animer;

            Déjà, pourquoi un “ModelRei” ?
            Pourquoi render ce modèle dans un constructeur ? Une méthode render n’est pas appelée uniquement une fois

            Ensuite, tu ne render jamais ton mode1 ( nom étrange ), tu le définis uniquement. Pourquoi ?

            Et pour ton item, check mon github ( http://github.com/Gugu42/ratchetandclankmod/ ), j’ai plus de 10 items render en 3D, et des tile entity

            "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
            • DeletedD Hors-ligne
              Deleted
              dernière édition par

              @‘Gugu42’:

              Tu compte faire une entité qui utilise le modèle 3D ?

              Les mouvements vont êtres durs ( très durs ) a animer;

              Déjà, pourquoi un “ModelRei” ?
              Pourquoi render ce modèle dans un constructeur ? Une méthode render n’est pas appelée uniquement une fois

              Ensuite, tu ne render jamais ton mode1 ( nom étrange ), tu le définis uniquement. Pourquoi ?

              Et pour ton item, check mon github ( http://github.com/Gugu42/ratchetandclankmod/ ), j’ai plus de 10 items render en 3D, et des tile entity

              OUi je souhaiterais faire un modèle 3 pour une entity je sais que les animations seront beaucoup plus durs mais j’ai lu qu’on pouvait importer des modèles tout droit venu de blender vers le openGL
              Et sinon comment ferais-tu car j’ai lu le message de JglrxavPok et il me semblait qu’il fallait créer un modèle?

              1 réponse Dernière réponse Répondre Citer 0
              • isadorI Hors-ligne
                isador Moddeurs confirmés Modérateurs
                dernière édition par

                j’ai une question: tu a montrer le code du rendu avec un objet a la fois, mais comment faire avec plusieurs objet, car j’aimerai définir le model dans la class de l’item

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

                  @‘isador34’:

                  j’ai une question: tu a montrer le code du rendu avec un objet a la fois, mais comment faire avec plusieurs objet, car j’aimerai définir le model dans la class de l’item

                  Là, exagère pas…
                  Juste un field de type String avec le nom du modèle et c’est tout.

                  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
                  • isadorI Hors-ligne
                    isador Moddeurs confirmés Modérateurs
                    dernière édition par

                    le chemin du modèle

                    1 réponse Dernière réponse Répondre Citer 0
                    • valentinp72V Hors-ligne
                      valentinp72
                      dernière édition par robin4002

                      Bonsoir,

                      Depuis quelques heures, je suis en train d’essayer d’importer des modèles sur minecraft pour un mod, et je me bute à un soucis :

                      Des “cotés” deviennent noir en fonction de mon endroit où je regarde (mon objet n’a pas encore de texture pour info, il devrait donc être tout blanc) :

                      0_1537628369656_2014-06-12_21.55.44.png
                      0_1537628374480_2014-06-12_21.55.26.png

                      J’ai pensé à faire comme pour le beacon, à faire en sorte que le “rayon” émette de la lumière, mais je n’arrive pas à trouver la fonction utilisée par le beacon…

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

                        Ton modèle est trop grand, utilise glScale pour corriger. Le fait qu’il n’y ai pas de texture peut jouer aussi 😉

                        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
                        • valentinp72V Hors-ligne
                          valentinp72
                          dernière édition par

                          En fait je suis en train de réaliser des effets pour quelque chose de secret pour l’instant, j’aurais besoin d’afficher des objets assez grand (après là c’est exagéré) 😄

                          Justement j’ai une question à propos de la taille :

                          J’utilise Blender ou C4D (ça dépend des cas) pour faire les modèles de ce type, et je suis obligé de mettre une taille de 1000 m * 1000 m (100000 cm * 100000 cm) pour avoir un model qui donnera en jeux un objet de la taille d’un block, et quand j’essaye de modifier “glScale”, si je le met à 1, je vois plus rien, normal ?

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

                            glScale(facteurSurX, facteurSurY, facteurSurZ);

                            Mets quelque chose comme 0.1 à toutes ces valeurs AVANT d’appeler model.render();

                            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
                            • valentinp72V Hors-ligne
                              valentinp72
                              dernière édition par

                              Ah, en fait, je sais pas ce qu’il s’est passé, mais j’ai mis tout à 1, et maintenant, la taille est bonne (un cube de 100cm * 100cm donnera bien un cube de la taille d’un block) !

                              Par contre, je me pose une question :

                              Si dans un logiciel de modélisation 3D je créé quelque chose, et que j’ajoute des “animations” (par exemple que le block tourne sur lui même), lorsque je vais l’exporter, ça va pas exporter l’animation ?

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

                                @‘valentinp72’:

                                Ah, en fait, je sais pas ce qu’il s’est passé, mais j’ai mis tout à 1, et maintenant, la taille est bonne (un cube de 100cm * 100cm donnera bien un cube de la taille d’un block) !

                                Par contre, je me pose une question :

                                Si dans un logiciel de modélisation 3D je créé quelque chose, et que j’ajoute des “animations” (par exemple que le block tourne sur lui même), lorsque je vais l’exporter, ça va pas exporter l’animation ?

                                Malheureusement non, la librairie n’est pas si poussée.

                                Mais bonne nouvelle, je suis en train de travailler sur un projet personnel où j’implémenterai surement des animations, donc il est plausible (mais pas sûr) qu’un jour dans un lointain futur, elle soit capable de gérer les animations.

                                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
                                • valentinp72V Hors-ligne
                                  valentinp72
                                  dernière édition par

                                  C’est bien ce que je pensais, j’avais lu que les fichiers obj n’étaient que des objets, ils ne contenaient pas les animations.

                                  Sinon, j’ai pensé à faire le rendu de mon model sur une sorte de mob (qui ne bouge pas) et faire tourner ce mob, ça doit être possible ça ?

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

                                    Tu peux très bien faire ça avec des blocs sans passer par des mobs. Regarde Thaumcraft 4.

                                    Si vous souhaitez me faire un don, il vous suffit de cliquer sur le bouton situé en dessous.

                                    Je suis un membre apprécié et joueur, j'ai déjà obtenu 17 points de réputation.

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

                                      Comment c’est géré ? Je connais pas trop Thaumcraft, ça fait (très) longtemps que j’ai joué avec des mods de ce genre ! 😄

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

                                        Youtube Video

                                        Si vous souhaitez me faire un don, il vous suffit de cliquer sur le bouton situé en dessous.

                                        Je suis un membre apprécié et joueur, j'ai déjà obtenu 17 points de réputation.

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

                                          Oulah, mais c’est génial ! 😮

                                          Mais directement depuis GLUtils, c’est pas possible de faire faire une rotation à un model ?

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

                                            http://minecraftforgefrance.fr/showthread.php?tid=584
                                            Dans le premier post, il y a une partie animation 😉

                                            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
                                            • 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