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

    Non résolu Tracer une ligne qui part du joueur vert son regard

    Sans suite
    1.12.2
    1
    2
    153
    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.
    • Helios_38
      Helios_38 dernière édition par Helios_38

      Bonjour,

      Comme dit dans l’intituler j’aimerais tracer une ligne qui part du joueur et qui va en direction de son regard.

      mon code (qui ne fonctionne pas ducoup :confounded_face: ) :

      @SubscribeEvent
          public void renderWorld(RenderWorldLastEvent event) {
              Entity player = Minecraft.getMinecraft().player;
              if(player instanceof EntityPlayerSP) {
                  double x = -MathHelper.sin(player.rotationYaw) * MathHelper.cos(player.rotationPitch);
                  double y = -MathHelper.sin(player.rotationPitch);
                  double z = MathHelper.cos(player.rotationYaw) * MathHelper.cos(player.rotationPitch);
                  double norme = Math.sqrt(x * x + y * y + z * z);
                  x /= norme;
                  y /= norme;
                  z /= norme;
                  x *= 10;
                  y *= 10;
                  z *= 10;
                  Vec3d start = player.getPositionVector();
                  Vec3d end = new Vec3d(start.x + x, start.y + y, start.z + z);
      
                  Tessellator tessellator = Tessellator.getInstance();
                  BufferBuilder buffer = tessellator.getBuffer();
      
                  GlStateManager.pushMatrix();
      
                  buffer.begin(GL11.GL_LINES, DefaultVertexFormats.POSITION_COLOR);
      
                  buffer.pos(start.x, start.y, start.z).color(1f, 0f, 0f, 1f).endVertex();
                  buffer.pos(end.x, end.y, end.z).color(1f, 0f, 0f, 1f).endVertex();
      
                  tessellator.draw();
      
                  GlStateManager.popMatrix();
              }
          }
      

      Je ne fait peut être pas les bons calcule, enfin je sais pas je suis persuader que quelqu’un doit savoir sa a pourtant l’air simple.

      Helios_38 1 réponse Dernière réponse Répondre Citer 0
      • Helios_38
        Helios_38 @Helios_38 dernière édition par

        @helios_38

        Euh désoler j’ai un peu modifier le code en vain mais voila celui a jour qui ne marche toujours pas :

         @SubscribeEvent public void renderWorld (RenderWorldLastEvent event){
                Entity player = Minecraft.getMinecraft().player;
                if(player instanceof EntityPlayerSP)
                {
                    double x = player.getForward().x;
                    double y = player.getForward().y;
                    double z = player.getForward().z;
                    x *= 10;
                    y *= 10;
                    z *= 10;
                    Vec3d start = player.getPositionVector();
                    Vec3d end = new Vec3d(start.x + x, start.y + y + player.getEyeHeight(), start.z + z);
        
                    Tessellator tessellator = Tessellator.getInstance();
                    BufferBuilder buffer = tessellator.getBuffer();
        
                    GlStateManager.pushMatrix();
        
                    buffer.begin(GL11.GL_LINES, DefaultVertexFormats.POSITION_COLOR);
        
                    buffer.pos(start.x, start.y + ((EntityPlayerSP)player).getEyeHeight(), start.z).color(1f, 0f, 0f, 1f).endVertex();
                    buffer.pos(end.x, end.y, end.z).color(1f, 0f, 0f, 1f).endVertex();
        
        
                    tessellator.draw();
        
                    GlStateManager.popMatrix();
                }
        
        1 réponse Dernière réponse Répondre Citer 0
        • Déplacé de Support pour les moddeurs par  robin4002 robin4002 
        • 1 / 1
        • Premier message
          Dernier message
        Design by Woryk
        Contact / Mentions Légales

        MINECRAFT FORGE FRANCE © 2018

        Powered by NodeBB