MFF

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

    IItemRender

    Planifier Épinglé Verrouillé Déplacé Résolu 1.7.x
    1.7.10
    13 Messages 3 Publieurs 2.0k Vues 1 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.
    • T Hors-ligne
      thecraft38
      dernière édition par

      Personne ne sait pourquoi mon rendu est vide ? ( désolé tu double poste )

      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

        Tu peux envoyer la classe de ton modèle ?

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

          Oui la voici :

          
          public class modelewilitesword extends ModelBase
          
          {
          
          public void setRotationAngles(float f, float f1, float f2, float f3, float f4, float f5, Entity entity)
          
          {
          
          super.setRotationAngles(f, f1, f2, f3, f4, f5, entity);
          
          }
          
          public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5)
          
          {
          
          super.render(entity, f, f1, f2, f3, f4, f5);
          
          setRotationAngles(f, f1, f2, f3, f4, f5, entity);
          
          }
          
          }
          
          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

            Ton modèle est complètement vide, c’est pour ça que rien ne se rend.

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

              Que dois je mettre dans mon render pour qu’il ne soit plus vide ?

              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

                Si tu veux le rendu normal d’un item, c’est ça qu’il te faut : https://www.minecraftforgefrance.fr/showthread.php?tid=556&pid=6186#pid6186
                (sans le
                GL11.glScalef(2F, 2F, 2F);
                ni le glTranslatef et les rotates avant la fonction
                this.renderItem(living, item, renderPass);
                si tu veux l’avoir avec une taille normal).

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

                  voila se que j’ai fait :

                  public class EwiliteSwordLvloneTechneRender implements IItemRenderer 
                  {
                  protected modelewilitesword model;
                  protected static ResourceLocation texture = new ResourceLocation(ewifaction.MODID, "textures/items/t.png");
                  public EwiliteSwordLvloneTechneRender()
                  {
                  model = new modelewilitesword(); 
                  }
                  @Override
                  public boolean handleRenderType(ItemStack item, ItemRenderType type)
                  {
                  switch(type)
                  {
                  case EQUIPPED:
                  return true;
                  default:
                  return false;
                  }
                  }
                  @Override
                  public boolean shouldUseRenderHelper(ItemRenderType type, ItemStack item, ItemRendererHelper helper)
                  {
                  return false;
                  }
                  @Override
                  public void renderItem(ItemRenderType type, ItemStack item, Object… data)
                  {
                  switch(type)
                  {
                  case EQUIPPED:
                  {
                  EntityLivingBase living = (EntityLivingBase)data[1];
                  int renderPass = item.getItem().requiresMultipleRenderPasses() ? 1 : 0;
                  
                              this.renderItem(living, item, renderPass);
                      GL11.glPopMatrix();
                  break;
                  }
                  default:
                  break;
                  }
                  
                  }
                  private void renderItem(EntityLivingBase living, ItemStack item, int renderPass) 
                  {
                  TextureManager texturemanager = FMLClientHandler.instance().getClient().getTextureManager();
                  GL11.glPushMatrix();
                  IIcon icon = living.getItemIcon(item, renderPass);
                  if(icon == null)
                  {
                  GL11.glPopMatrix();
                  return;
                  }
                  Tessellator tessellator = Tessellator.instance;
                  float f = ((IIcon) icon).getMinU();
                  float f1 = ((IIcon) icon).getMaxU();
                  float f2 = ((IIcon) icon).getMinV();
                  float f3 = ((IIcon) icon).getMaxV();
                  float f4 = 0.0F;
                  float f5 = 0.3F;
                  float f6 = 1.5F;
                  ItemRenderer.renderItemIn2D(tessellator, f1, f2, f, f3, icon.getIconWidth(), icon.getIconHeight(), 0.0625F);
                  
                  if(item.hasEffect(renderPass))
                  {
                  texturemanager.bindTexture(texture);
                  }
                  }
                  }
                  

                  j’ai bien un rendu mais il s’agit du rendu de base de mon épée pas le nouveau savez-vous pourquoi ?

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

                    Peut être parce que tu ne comprends pas ton code et que tu bind la texture après le rendu au lieu de le faire avant ^^

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

                      En effet je ne comprend pas vraiment ce code ,j’ai beau chercher, je ne trouve pas comment modifier le code pour corriger le problème.

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

                        voila se que j’ai réussi à faire :

                        public class EwiliteSwordLvloneTechneRender implements IItemRenderer
                        {
                            private static final ResourceLocation texture = new ResourceLocation(ewifaction.MODID, "textures/items/t.png");
                        
                        @Override
                        public boolean handleRenderType(ItemStack item, ItemRenderType type)
                        {
                        switch(type)
                        {
                        case EQUIPPED:
                        return true;
                        default:
                        return false;
                        }
                        }
                        
                        @Override
                        public boolean shouldUseRenderHelper(ItemRenderType type, ItemStack item, ItemRendererHelper helper)
                        {
                        return false;
                        }
                        
                        @Override
                        public void renderItem(ItemRenderType type, ItemStack item, Object… data)
                        {
                        switch(type)
                        {
                        case EQUIPPED:
                        {
                        EntityLivingBase living = (EntityLivingBase)data[1];
                        int renderPass = item.getItem().requiresMultipleRenderPasses() ? 1 : 0;
                        
                        GL11.glPushMatrix();
                        
                                    this.renderItem(living, item, renderPass);
                            GL11.glPopMatrix();
                        break;
                        }
                        default:
                        break;
                        }
                        
                        }
                        
                        public void renderItem(EntityLivingBase living, ItemStack stack, int pass)
                        {
                        TextureManager texturemanager = FMLClientHandler.instance().getClient().getTextureManager();
                        GL11.glPushMatrix();
                        IIcon icon = living.getItemIcon(stack, pass);
                        if(icon == null)
                        {
                        GL11.glPopMatrix();
                        return;
                        }
                        texturemanager.bindTexture(texture);
                        Tessellator tessellator = Tessellator.instance;
                        float f = icon.getMinU();
                        float f1 = icon.getMaxU();
                        float f2 = icon.getMinV();
                        float f3 = icon.getMaxV();
                        float f4 = 0.0F;
                        float f5 = 0.3F;
                        GL11.glEnable(GL12.GL_RESCALE_NORMAL);
                        float f6 = 1.5F;
                        
                        ItemRenderer.renderItemIn2D(tessellator, f1, f2, f, f3, icon.getIconWidth(), icon.getIconHeight(), 0.0625F);
                        
                        if(stack.hasEffect(pass))
                        {
                        GL11.glDepthFunc(GL11.GL_EQUAL);
                        GL11.glDisable(GL11.GL_LIGHTING);
                        texturemanager.bindTexture(texture);
                        GL11.glEnable(GL11.GL_BLEND);
                        GL11.glBlendFunc(GL11.GL_SRC_COLOR, GL11.GL_ONE);
                        float f7 = 0.76F;
                        GL11.glColor4f(0.5F * f7, 0.25F * f7, 0.8F * f7, 1.0F);
                        GL11.glMatrixMode(GL11.GL_TEXTURE);
                        GL11.glPushMatrix();
                        float f8 = 0.125F;
                        GL11.glScalef(f8, f8, f8);
                        float f9 = (float)(Minecraft.getSystemTime() % 3000L) / 3000.0F * 8.0F;
                        GL11.glTranslatef(f9, 0.0F, 0.0F);
                        GL11.glRotatef(-50.0F, 0.0F, 0.0F, 1.0F);
                        ItemRenderer.renderItemIn2D(tessellator, 0.0F, 0.0F, 1.0F, 1.0F, 256, 256, 0.0625F);
                        GL11.glPopMatrix();
                        GL11.glPushMatrix();
                        GL11.glScalef(f8, f8, f8);
                        f9 = (float)(Minecraft.getSystemTime() % 4873L) / 4873.0F * 8.0F;
                        GL11.glTranslatef(-f9, 0.0F, 0.0F);
                        GL11.glRotatef(10.0F, 0.0F, 0.0F, 1.0F);
                        ItemRenderer.renderItemIn2D(tessellator, 0.0F, 0.0F, 1.0F, 1.0F, 256, 256, 0.0625F);
                        GL11.glPopMatrix();
                        GL11.glMatrixMode(GL11.GL_MODELVIEW);
                        GL11.glDisable(GL11.GL_BLEND);
                        GL11.glEnable(GL11.GL_LIGHTING);
                        GL11.glDepthFunc(GL11.GL_LEQUAL);
                        }
                        
                        GL11.glDisable(GL12.GL_RESCALE_NORMAL);
                        GL11.glPopMatrix();
                        }
                        }
                        

                        Quand je met un chemin de texture invalide j’obtient un carré noir comme prévue mais quand je met un chemin valide le rendu deviens vide.

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

                        MINECRAFT FORGE FRANCE © 2024

                        Powered by NodeBB