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

    Un remplaçant de Paulscode's SoundSystem pour LWJGL 3: Audiokode

    Vos autres créations
    1
    1
    759
    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.
    • jglrxavpok
      jglrxavpok Modérateurs dernière édition par

      #Introduction(Introduction)
      Depuis la sortie de LWJGL 3.x, la (célèbre ?) librairie de Paulscode, 3DSoundSystem, n’est plus utilisable et elle n’a pas été mise à jour.
      La solution la plus adoptée a donc été d’écrire son propre code pour OpenAL et le chargement de musiques/bruitages. Je vous propose de remédier à cela!

      #Installation(Installation)
      Pour le moment, le seul moment est copier les sources et de compiler la librairie soit-même.

      Cependant, si vous avez Git d’installé et que vous utilisez Gradle, vous pouvez ajouter ceci dans .gitmodules (rajoutez le dans votre dossier racine si vous n’en n’avez pas):

      [submodule "Audiokode"]
      path = Audiokode
      url = https://github.com/jglrxavpok/Audiokode.git
      

      Vous pouvez aussi faire cette commande dans votre dossier racine:

      git submodule add https://github.com/jglrxavpok/Audiokode.git
      

      Cela téléchargera en plus directement le projet (et modifies le fichier .gitmodules en conséquence).

      Ensuite, une fois ceci fait, ajoutez ceci dans votre settings.gradle (à créer si besoin):

      include 'Audiokode'
      

      Et dans votre fichier build.gradle:

      // …
      dependencies {
      // ...
      compile project(':Audiokode')
      // ...
      }
      // ....
      
      

      Un petit refresh des dépendances avec Gradle, et vous êtes prêts!

      #Utilisation(Utilisation)
      Initialisation du système:

      // Initialisation
      SoundEngine engine = new SoundEngine();
      engine.initWithDefaultOpenAL();
      

      Exemple pour jouer une musique:

      // Une musique de fond
      Source source = engine.backgroundMusic("TestWav", false);
      source.play();
      source.setGain(0.15f); // contrôler le volume
      

      :::

      engine.quickplayBackgroundMusic("TestWav");
      

      :::

      Attention! Si vous n’utilisez pas ThreadedSoundEngine, vous aurez besoin d’ajouter ceci dans la boucle principale de votre jeu:

      engine.update();
      

      Cela permet à Audiokode de faire boucler les musiques, de faire bouger l’écouter, etc.

      Et voilà! Vous pouvez aussi utiliser ThreadedSoundEngine si vous voulez laisser Audiokode mettre à jour votre son tout seul dans son coin.

      Lien Github

      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 / 1
      • Premier message
        Dernier message
      Design by Woryk
      Contact / Mentions Légales

      MINECRAFT FORGE FRANCE © 2018

      Powered by NodeBB