Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1044 connectés 

  FORUM HardWare.fr
  Programmation
  C

  Mettre une musique dans un jeu

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Mettre une musique dans un jeu

n°2213489
setsuuna
Posté le 12-12-2013 à 20:02:55  profilanswer
 

Bonsoir, je cherche tout simplement à mettre une musique dans mon jeu en C, en m'aidant de la bibliothèque allegro 5 sous visual studio. J'ai vu plusieurs manières pour arriver à mettre un son ou une musique mais je cherche vraiment la plus simple, celle par laquelle je ne devrais pas faire de linkage ect...
 
A noter que j'utilise ceci :  
#include <allegro5/allegro_audio.h>
 
et je voudrais donc rajouter une simple musique...
 
Merci d'avance pour votre aide.

mood
Publicité
Posté le 12-12-2013 à 20:02:55  profilanswer
 

n°2213494
tpierron
Posté le 12-12-2013 à 21:05:31  profilanswer
 

En regardant vite fait l'API, il y a la fonction "al_play_sample()" qui permet de jouer un son de type WAV. Si tu as un autre format (genre mp3 ou ogg) faudra le convertir (à la volée) avant probablement. C.f http://wiki.allegro.cc/index.php?t [...] dons/Audio
 
Cela dit, cette fonction est bloquante. Donc faudra soit faire un thread qui boucle/bloque sur cette fonction.
 
Si tu veux mixer cette musique avec des bruitages, il me semble que cette lib (allegro donc) permet de créer des canaux séparés et faire un mixage automatique. Cela dit, avec un accès multi-threadé, faudra sans doute être extrêmement prudent, et faire quelques tests de stabilité avant.

n°2213657
setsuuna
Posté le 14-12-2013 à 11:53:13  profilanswer
 

Ok merci, moi j'avais fait ceci mais ça ne fonctionnait pas :

Code :
  1. #include <allegro5\allegro_acodec.h>
  2. #include <allegro5\allegro_audio.h>
  3. int main()
  4. {
  5. ALLEGRO_SAMPLE_ID music_game;
  6. ALLEGRO_SAMPLE *sample = NULL;
  7. ALLEGRO_SAMPLE_INSTANCE*songinstance;
  8. int fin=0;
  9. al_install_audio();
  10. al_init_acodec_addon();
  11. al_reserve_samples(1);
  12. sample = al_load_sample("son_test.wav" );
  13.    if(!sample)
  14.       erreur("al_load_sample" );
  15.    if(!al_install_audio())
  16.       erreur("al_install_audio()" );
  17.    if(!al_init_acodec_addon())
  18.       erreur("al_init_acodec_addon()" );
  19.    if(!al_reserve_samples(1))
  20.       erreur("al_reserve_samples(1)" );
  21.    songinstance = al_create_sample_instance(sample);
  22.    al_attach_sample_instance_to_mixer(songinstance, al_get_default_mixer());
  23.    while(!fin){
  24.       al_play_sample_instance(songinstance);
  25.    }
  26.    al_destroy_sample_instance(songinstance);
  27.    system("PAUSE" );
  28.    return 0;
  29. }


 
Le problème c'est que ça marchait pas, je vais essayer de faire avec la méthode que tu m'as donné.  :wahoo:


Message édité par setsuuna le 14-12-2013 à 11:54:32
n°2213659
setsuuna
Posté le 14-12-2013 à 12:18:06  profilanswer
 

Alors, j'ai copié tout le code sur le site de l'API que tu m'as donné, au début ça fonctionnait pas, et j'ai cherché pourquoi... Tout simplement parce que mes anciens tests avaient corrompus le fichier son.wav que j'avais mis dans le dossier. Je vais essayer de mettre le code dans le programme que je suis en train de faire.  
Merci beaucoup en tout cas pour ton aide.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C

  Mettre une musique dans un jeu

 

Sujets relatifs
Ne pas mettre à jour TCD à l'ouvertureMettre un clip musique en haut de page
Mettre de la musique en continu dans son site.mettre de la musique sur un site fait avec top site express
Mettre une musique sur un page web ?Mettre de la musique sur un site
Mettre de la musique sur un site internet ?Comment Mettre L'heure Réels et une musique de fond sur sa page persos
[vb6]mettre une musique dans mon prog !Comment mettre une musique au format SWF en fon d'un site internet ???
Plus de sujets relatifs à : Mettre une musique dans un jeu


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR