• Jueves 28 de Marzo de 2024, 10:52

Autor Tema:  Como Poner Audio En Allegro  (Leído 2444 veces)

Cesar2990

  • Nuevo Miembro
  • *
  • Mensajes: 7
    • Ver Perfil
Como Poner Audio En Allegro
« en: Miércoles 18 de Junio de 2008, 00:30 »
0
Hola amigos pues nadie me contesto en el mensaje del wav en allegro pues la duda que tengo es como poner audio en allegro espero que me puedan ayudar y si por hay alguien tiene como hacer el fadein y fadeout se los agradeceria mucho hasta pronto y desde ya gracias  :comp:  :hola:

Cesar2990

  • Nuevo Miembro
  • *
  • Mensajes: 7
    • Ver Perfil
Re: Como Poner Audio En Allegro
« Respuesta #1 en: Miércoles 18 de Junio de 2008, 06:13 »
0
Hola ya logre hacer lo del fade in / out y tambien lo de los wav aca dejo el codigo de el fade in / out y en el otro mensaje de los wav deje el codigo espero algun dia les sirva hasta pronto.

Código: Text
  1.  
  2. #include <allegro.h>
  3.  
  4. void highcolor_fade_in(BITMAP *bmp_orig, int speed)
  5. {
  6.    BITMAP *bmp_buff;
  7.  
  8.     if ((bmp_buff = create_bitmap(SCREEN_W, SCREEN_H)))
  9.     {
  10.         int a;
  11.         if (speed <= 0) speed = 16;
  12.        
  13.         for (a = 0; a < 256; a+=speed)
  14.         {
  15.             clear(bmp_buff);
  16.             set_trans_blender(0,0,0,a);
  17.             draw_trans_sprite(bmp_buff, bmp_orig, 0, 0);
  18.             vsync();
  19.             blit(bmp_buff, screen, 0,0, 0,0, SCREEN_W, SCREEN_H);
  20.         }
  21.         destroy_bitmap(bmp_buff);
  22.     }
  23.  
  24.     blit(bmp_orig, screen, 0,0, 0,0, SCREEN_W, SCREEN_H);
  25. }
  26.  
  27. void highcolor_fade_out(int speed)
  28. {
  29.     BITMAP *bmp_orig, *bmp_buff;
  30.  
  31.     if ((bmp_orig = create_bitmap(SCREEN_W, SCREEN_H)))
  32.     {
  33.         if ((bmp_buff = create_bitmap(SCREEN_W, SCREEN_H)))
  34.         {
  35.             int a;
  36.             blit(screen, bmp_orig, 0,0, 0,0, SCREEN_W, SCREEN_H);
  37.             if (speed <= 0) speed = 16;
  38.        
  39.             for (a = 255-speed; a > 0; a-=speed)
  40.             {
  41.                 clear(bmp_buff);
  42.                 set_trans_blender(0,0,0,a);
  43.                 draw_trans_sprite(bmp_buff, bmp_orig, 0, 0);
  44.                 vsync();
  45.                 blit(bmp_buff, screen, 0,0, 0,0, SCREEN_W, SCREEN_H);
  46.             }
  47.             destroy_bitmap(bmp_buff);
  48.         }
  49.         destroy_bitmap(bmp_orig);
  50.     }
  51.  
  52.     rectfill(screen, 0,0, SCREEN_W,SCREEN_H, makecol(0,0,0));
  53. }
  54.  
  55. int main(void)
  56. {
  57.     BITMAP *tmp;
  58.  
  59.     allegro_init();
  60.     install_keyboard();
  61.  
  62.     set_color_depth(32);
  63.     set_gfx_mode(GFX_AUTODETECT_WINDOWED, 640, 480, 0, 0);
  64.  
  65.     /* set up a temp bitmap to so we can fade back later */
  66.     if (!(tmp = create_bitmap(SCREEN_W, SCREEN_H))) exit(1);
  67.    
  68.     /* create a test screen */
  69.     rectfill(screen, 0,0, SCREEN_W,SCREEN_H, makecol(255,255,255));
  70.     circlefill(screen, 75,75, 25, makecol(255,0,0));
  71.  
  72.     /* save this test screen so we can fade_in to it later */
  73.     blit(screen, tmp, 0,0, 0,0, SCREEN_W, SCREEN_H);
  74.     readkey();
  75.    
  76.     highcolor_fade_out(16);
  77.     readkey();
  78.  
  79.     highcolor_fade_in(tmp, 16);
  80.     readkey();
  81.  
  82.     destroy_bitmap(tmp);
  83.     return 0;
  84. }
  85. END_OF_MAIN()
  86.  
  87.