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

Résolu Rendu de bloc TESR

1.7.x
1.7.x
3
43
9.3k
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.
  • Flow
    Flow dernière édition par 25 juil. 2014, 01:16

    Pfiouuu , vraiment désolé j’ai lu vite pour pouvoir répondre et résoudre le problème , j’aurais pas du 😞 Mais maintenant sa marche un grand merci à toi robin !!! 🙂 Y a t-il moyen de faire comme les escaliers ou même les barrières pour que les textures se connecte sur les coins ? Et pour la barrière qui sort de la case de l’inventaire comment faire ? 😕

    Oui ce gif est drôle.

    1 réponse Dernière réponse Répondre Citer 0
    • robin4002
      robin4002 Moddeurs confirmés Rédacteurs Administrateurs dernière édition par 25 juil. 2014, 01:39

      Pour le rendu dans l’inventaire, je ne vois pas quoi faire à par un glScalef.
      Pour les coins, il faudrait faire plusieurs modèles et choisir le modèle en fonction des blocs qui sont autours.

      1 réponse Dernière réponse Répondre Citer 0
      • Flow
        Flow dernière édition par 25 juil. 2014, 01:44

        Ouah ça a l’air compliquer pour les coins 😕 Tu saurais me passer le code du dlScalef s’il te plait ? 🙂

        Oui ce gif est drôle.

        1 réponse Dernière réponse Répondre Citer 0
        • isador
          isador Moddeurs confirmés Modérateurs dernière édition par 25 juil. 2014, 09:49

          bha tu ajoute dans le code de ton rendu un G11.Scalef(x,y,z);

          1 réponse Dernière réponse Répondre Citer 0
          • Flow
            Flow dernière édition par 25 juil. 2014, 14:24

            Sa ne marche pas ou que je le place et si je le place après les autres GL11 etc sa scale la barrière en jeux et pas dans l’inventaire

            Oui ce gif est drôle.

            1 réponse Dernière réponse Répondre Citer 0
            • isador
              isador Moddeurs confirmés Modérateurs dernière édition par 25 juil. 2014, 15:05

              Envoi ton code de rendu

              1 réponse Dernière réponse Répondre Citer 0
              • Flow
                Flow dernière édition par 26 juil. 2014, 00:46

                BarriereInventoryRenderer

                package mod.proxy;
                import java.util.HashMap;
                import org.lwjgl.opengl.GL11;
                import net.minecraft.block.Block;
                import net.minecraft.client.renderer.RenderBlocks;
                import net.minecraft.world.IBlockAccess;
                import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler;
                public class BarriereInventoryRenderer implements ISimpleBlockRenderingHandler
                {
                public static class TESRIndex
                {
                Block block;
                int metadata;
                public TESRIndex(Block block, int metadata)
                {
                this.block = block;
                this.metadata = metadata;
                }
                @Override
                public int hashCode()
                {
                return block.hashCode() + metadata;
                }
                @Override
                public boolean equals(Object o)
                {
                if(!(o instanceof TESRIndex))
                return false;
                TESRIndex tesr = (TESRIndex)o;
                return tesr.block == block && tesr.metadata == metadata;
                }
                }
                public static HashMap <tesrindex, iinventoryrenderer="">blockByTESR = new HashMap<tesrindex, iinventoryrenderer="">();
                @Override
                public void renderInventoryBlock(Block block, int metadata, int modelId, RenderBlocks renderer)
                {
                TESRIndex index = new TESRIndex(block, metadata);
                if(blockByTESR.containsKey(index))
                {
                blockByTESR.get(index).renderInventory(-0.5, -0.5, -0.5);
                }
                }
                @Override
                public boolean renderWorldBlock(IBlockAccess world, int x, int y, int z, Block block, int modelId, RenderBlocks renderer)
                {
                return true;
                }
                public boolean shouldRender3DInInventory(int modelId)
                {
                return true;
                }
                @Override
                public int getRenderId()
                {
                return ClientProxy.renderInventoryBarriere;
                }
                }

                Celui-ci ?</tesrindex,></tesrindex,>

                Oui ce gif est drôle.

                1 réponse Dernière réponse Répondre Citer 0
                • isador
                  isador Moddeurs confirmés Modérateurs dernière édition par 26 juil. 2014, 08:28

                  package mod.proxy;
                  import java.util.HashMap;
                  import org.lwjgl.opengl.GL11;
                  import net.minecraft.block.Block;
                  import net.minecraft.client.renderer.RenderBlocks;
                  import net.minecraft.world.IBlockAccess;
                  import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler;
                  public class BarriereInventoryRenderer implements ISimpleBlockRenderingHandler
                  {
                  public static class TESRIndex
                  {
                  Block block;
                  int metadata;
                  public TESRIndex(Block block, int metadata)
                  {
                  this.block = block;
                  this.metadata = metadata;
                  }
                  @Override
                  public int hashCode()
                  {
                  return block.hashCode() + metadata;
                  }
                  @Override
                  public boolean equals(Object o)
                  {
                  if(!(o instanceof TESRIndex))
                  return false;
                  TESRIndex tesr = (TESRIndex)o;
                  return tesr.block == block && tesr.metadata == metadata;
                  }
                  }
                  public static HashMap <tesrindex, iinventoryrenderer="">blockByTESR = new HashMap<tesrindex, iinventoryrenderer="">();
                  @Override
                  public void renderInventoryBlock(Block block, int metadata, int modelId, RenderBlocks renderer)
                  {
                  TESRIndex index = new TESRIndex(block, metadata);
                  GL11.glScaled(0.5f, 0.5f, 0.5f);
                  if(blockByTESR.containsKey(index))
                  {
                  blockByTESR.get(index).renderInventory(-0.5, -0.5, -0.5);
                  }
                  }
                  @Override
                  public boolean renderWorldBlock(IBlockAccess world, int x, int y, int z, Block block, int modelId, RenderBlocks renderer)
                  {
                  return true;
                  }
                  public boolean shouldRender3DInInventory(int modelId)
                  {
                  return true;
                  }
                  @Override
                  public int getRenderId()
                  {
                  return ClientProxy.renderInventoryBarriere;
                  }
                  }

                  essaie avec ca</tesrindex,></tesrindex,>

                  1 réponse Dernière réponse Répondre Citer 0
                  • Flow
                    Flow dernière édition par 26 juil. 2014, 15:27

                    Ca dépasse toujours du cadre 😕

                    Oui ce gif est drôle.

                    1 réponse Dernière réponse Répondre Citer 0
                    • robin4002
                      robin4002 Moddeurs confirmés Rédacteurs Administrateurs dernière édition par 26 juil. 2014, 15:41

                      Il y a rien a faire dans la classe BarriereInventoryRenderer.
                      D’ailleurs ce nom n’est pas approprié, car comme je l’ai expliqué la classe implements ISimpleBlockRenderingHandler va servir pour tous les rendus en main des TESR.

                      Il faudrait plutôt modifier TileEntityBarriereSpecialRender.

                      @Override
                      public void renderInventory(double x, double y, double z)
                      {
                      GL11.glPushMatrix();
                      GL11.glScaled(1.0F, 0.5F, 1.0F);
                      GL11.glTranslated(x + 0.5F, y + 1.5F, z + 0.5F);
                      this.bindTexture(textureLocation);
                      GL11.glRotatef(180F, 0.0F, 0.0F, 1.0F);
                      this.model.render(0.0625F);
                      GL11.glPopMatrix();
                      }
                      1 réponse Dernière réponse Répondre Citer 0
                      • isador
                        isador Moddeurs confirmés Modérateurs dernière édition par 26 juil. 2014, 17:10

                        oui j’avais mal vu

                        1 réponse Dernière réponse Répondre Citer 0
                        • Flow
                          Flow dernière édition par 26 juil. 2014, 17:32

                          Ca se réduit également mais il est toujours hors du cadre , mais il y a un énorme espace entre le bas de la case et le bas de la barrière , il y a moyen de bouger la barrière vers le bas ?

                          Oui ce gif est drôle.

                          1 réponse Dernière réponse Répondre Citer 0
                          • robin4002
                            robin4002 Moddeurs confirmés Rédacteurs Administrateurs dernière édition par 26 juil. 2014, 17:36

                            Lance ton jeu en débug et “joue” avec cette ligne :
                            GL11.glTranslated(x + 0.5F, y + 1.5F, z + 0.5F);
                            (En gros change les valeurs jusqu’à avoir ce que tu veux).

                            1 réponse Dernière réponse Répondre Citer 1
                            • Flow
                              Flow dernière édition par 26 juil. 2014, 17:40

                              Merci Robin c’est parfait !! Je suis content mon mod va pouvoir avancer , il ne me reste plus qu’a trouver le code pour la hitbox , tu a des idées de sites spécialisés ou je pourrais chercher ( même anglais ) s’il te plait ?

                              Oui ce gif est drôle.

                              1 réponse Dernière réponse Répondre Citer 0
                              • robin4002
                                robin4002 Moddeurs confirmés Rédacteurs Administrateurs dernière édition par 26 juil. 2014, 18:39

                                Ici même. http://www.minecraftforgefrance.fr/showthread.php?tid=136
                                getSelectedBoundingBoxFromPool
                                getCollisionBoundingBoxFromPool

                                1 réponse Dernière réponse Répondre Citer 0
                                • Flow
                                  Flow dernière édition par 26 juil. 2014, 18:58

                                  Oké merci je vais lire tout ca et je re port si j’ai un problème ^^


                                  J’ai réussi a faire la hitbox plus grande !! 😄 Merci , par contre quand je regarde le haut de la barriere la hitbox disparais mais quand je regarde le bas elle ré-apparaît , y’a un moyen de considérer la hitbox entière comme le block ?

                                  Oui ce gif est drôle.

                                  1 réponse Dernière réponse Répondre Citer 0
                                  • robin4002
                                    robin4002 Moddeurs confirmés Rédacteurs Administrateurs dernière édition par 26 juil. 2014, 20:37

                                    Non, pas possible. Minecraft n’est pas prévu pour ça.
                                    Le seul moyen de faire ça c’est de faire deux blocs, comme la porte.

                                    1 réponse Dernière réponse Répondre Citer 0
                                    • Flow
                                      Flow dernière édition par 26 juil. 2014, 21:06

                                      D’accord , pas de soucis alors ! En tout cas encore un grand merci à toi robin !! 🙂

                                      Oui ce gif est drôle.

                                      1 réponse Dernière réponse Répondre Citer 0
                                      • Flow
                                        Flow dernière édition par 26 juil. 2014, 23:13

                                        Je reviens encore , il y a un moyen spécial de faire un craft pour le blockBarriere ? Car quand j’essaye d’enregistrer mon craft il ne veut pas 😕

                                        Oui ce gif est drôle.

                                        1 réponse Dernière réponse Répondre Citer 0
                                        • robin4002
                                          robin4002 Moddeurs confirmés Rédacteurs Administrateurs dernière édition par 26 juil. 2014, 23:20

                                          Heu il n’y a pas de raison que le craft ne fonctionne pas. Envoie ton code.

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

                                          MINECRAFT FORGE FRANCE © 2018

                                          Powered by NodeBB