• Register
    • Login
    • Search
    • Recent
    • Tags
    • Popular
    • Users
    • Groups

    Solved TESR orientable / centrage du modèle

    1.7.x
    1.7.10
    2
    5
    901
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • Folgansky
      Folgansky Correcteurs last edited by

      D’habitude mes modèles sont bien centrés directement avant l’export en .java, mais là je travaille sur un modèle qui n’est pas de moi.

      Il n’est pas centré donc et mon problème c’est que lorsque je le pose, son rendu est différent suivant l’orientation que j’ai en le posant

      private void renderTileEntityBougie3At(TileEntityBougie3 tile, double x, double y, double z, float partialRenderTick)
          {
              GL11.glPushMatrix();
              GL11.glTranslated(x + 0.7D, y + 1.5D, z + 0.1D);  //Rendu centré pour seulement une orientation
              GL11.glRotatef(180F, 0.0F, 0.0F, 1.0F);
              GL11.glRotatef((90F * tile.getDirection()) + 180F, 0.0F, 1.0F, 0.0F);
            //Si je met le translated ici c'est pas bon.
              this.bindTexture(texture);
              model.renderAll();
              GL11.glPopMatrix();
          }
      
      1 Reply Last reply Reply Quote 0
      • robin4002
        robin4002 Moddeurs confirmés Rédacteurs Administrateurs last edited by

        Salut,
        Juste après le premier translated refait une translation en fonction de tile.getDirection()

        1 Reply Last reply Reply Quote 0
        • Folgansky
          Folgansky Correcteurs last edited by

          private void renderTileEntityBougie3At(TileEntityBougie3 tile, double x, double y, double z, float partialRenderTick)
              {
                  GL11.glPushMatrix();
                  GL11.glTranslated(x + 0.7D, y + 1.5D, z + 0.1D);
                  GL11.glTranslated(tile.getDirection(), 0.0D, tile.getDirection());
                  GL11.glRotatef(180F, 0.0F, 0.0F, 1.0F);
                  GL11.glRotatef((90F * tile.getDirection()) + 180F, 0.0F, 1.0F, 0.0F);
                  this.bindTexture(texture);
                  model.renderAll();
                  GL11.glPopMatrix();
              }
          

          Euh… J’ai mal compris alors

          1 Reply Last reply Reply Quote 0
          • robin4002
            robin4002 Moddeurs confirmés Rédacteurs Administrateurs last edited by

            private void renderTileEntityBougie3At(TileEntityBougie3 tile, double x, double y, double z, float partialRenderTick)
            {
            GL11.glPushMatrix();
            GL11.glTranslated(x + 0.7D, y + 1.5D, z + 0.1D);
            switch(tile.getDirection())
            {
            case 0:
            GL11.glTranslated(0.1D, 0.0D, 0.0D);
            break;
            case 1:
            GL11.glTranslated(0.0D, 0.0D, 0.1D);
            break;
            case 2:
            GL11.glTranslated(-0.1D, 0.0D, 0.0D);
            break;
            case 3:
            GL11.glTranslated(0.0D, 0.0D, -0.1D);
            break;
            }
            GL11.glRotatef(180F, 0.0F, 0.0F, 1.0F);
            GL11.glRotatef((90F * tile.getDirection()) + 180F, 0.0F, 1.0F, 0.0F);
            this.bindTexture(texture);
            model.renderAll();
            GL11.glPopMatrix();
            }
            

            J’ai mit les valeurs au hasard à titre d’exemple, à toi de lancer le jeu en debug puis d’adapter.

            1 Reply Last reply Reply Quote 0
            • Folgansky
              Folgansky Correcteurs last edited by

              Ah, ouki merci ça va bien dépanner.

              Prochain coup, je tafferai avec des modèles bien centrés u.u

              1 Reply Last reply Reply Quote 0
              • 1 / 1
              • First post
                Last post
              Design by Woryk
              Contact / Mentions Légales

              MINECRAFT FORGE FRANCE © 2018

              Powered by NodeBB