Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Menu

Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menu

Mensajes - incentivate

#1
Gamevelop / Problemas de audio en Allegro 4
12 de Octubre de 2017, 06:25:40 AM

Hola a todos!
Gracias por leer!
Estoy haciendo un videojuego para mi proyecto de la facultad y estoy teniendo problemas con el audio en Allegro.
Lo peor de todo es que estoy siguiendo una guia en internet donde deja todo explicado, pero a la hora de hacerlo funcionar:
NO FUNCIONA :V
Intente copiar y pegar y nada tampoco ... es muy raro!

Acá dejo un poco de mi código:


En el MAIN tengo una función llamada Iniciar_allegro () donde agregué esto:

// incializa el audio en allegro
if (install_sound(DIGI_AUTODETECT, MIDI_AUTODETECT, NULL) != 0) {
   allegro_message("Error: inicializando sistema de sonido\n%s\n", allegro_error);
}
     
// inicializa todo lo referente al sonido
inicia_sonido();



Luego tengo un header llamado audio.h donde tengo esto:

// audio.h

SAMPLE *spasos;
SAMPLE *spuerta1;
SAMPLE *sbosque;

// funcion que carga todos los ficheros de audio
void inicia_sonido(){
set_volume(230, 90);
 
spasos     =  load_wav("pasos.wav");
spuerta1 = load_wav("abrir_puerta.wav");
sbosque  = load_wav("bosque.wav");
}

void sonido_pasos(){
     play_sample ( spasos, 100,128, 3300, 0 );
}

void sonido_abrirpuerta(){
     play_sample ( spuerta1, 100,128, 1300, 0 );     
}

void sonido_ambiente(){
     play_sample ( sbosque, 80,128, 900, 1 );     
}

void para_sonido_ambiente(){
     stop_sample( sbosque );
}



Y luego voy llamando las funciones de audio donde son necesitadas .... todo compila perfecto y no tira errores ni nada.
Los archivo de audio están en la misma carpeta que la del proyecto.
Lo único es que los sonidos no salen :(
Alguna idea de que puede estar pasando ???
Soy nuevo en esto de la programación asi que cualquier cosa me vendría más que bien.
Saludos a todos y muchas gracias por su tiempo :D
#2
Programación de audio / Problemas de audio en Allegro 4
12 de Octubre de 2017, 06:22:02 AM

Hola a todos!
Gracias por leer!
Estoy haciendo un videojuego para mi proyecto final de la facultad y estoy teniendo problemas con el audio en Allegro.
Lo peor de todo es que estoy siguiendo una guia en internet donde deja todo explicado, pero a la hora de hacerlo funcionar:
NO FUNCIONA :V
Intente copiar y pegar y nada tampoco ... es muy raro!

Acá dejo un poco de mi código:

En el MAIN tengo una función llamada Iniciar_allegro () donde agregué esto:

// incializa el audio en allegro
if (install_sound(DIGI_AUTODETECT, MIDI_AUTODETECT, NULL) != 0) {
   allegro_message("Error: inicializando sistema de sonido\n%s\n", allegro_error);
}
     
// inicializa todo lo referente al sonido
inicia_sonido();



Luego tengo un header llamado audio.h donde tengo esto:

// audio.h

SAMPLE *spasos;
SAMPLE *spuerta1;
SAMPLE *sbosque;

// funcion que carga todos los ficheros de audio
void inicia_sonido(){
set_volume(230, 90);
 
spasos     =  load_wav("pasos.wav");
spuerta1 = load_wav("abrir_puerta.wav");
sbosque  = load_wav("bosque.wav");
}

void sonido_pasos(){
     play_sample ( spasos, 100,128, 3300, 0 );
}

void sonido_abrirpuerta(){
     play_sample ( spuerta1, 100,128, 1300, 0 );     
}

void sonido_ambiente(){
     play_sample ( sbosque, 80,128, 900, 1 );     
}

void para_sonido_ambiente(){
     stop_sample( sbosque );
}



Y luego voy llamando las funciones de audio donde son necesitadas .... todo compila perfecto y no tira errores ni nada.
Los archivo de audio están en la misma carpeta que la del proyecto.
Lo único es que los sonidos no salen :(
Alguna idea de que puede estar pasando ???
Soy nuevo en esto de la programación asi que cualquier cosa me vendría más que bien.
Saludos a todos y muchas gracias por su tiempo :D
#3
Gamevelop / Re:Necesito ayuda con mi juego en C ++ y Allegro
09 de Octubre de 2017, 01:16:41 AM
Sos un GENIO !!!
No sabes lo que me ayudaste, hace dos semanas que estoy con el tema :D Ahora puedo seguir avanzando !!!
GRACIAS eternas !!!
#4
Gamevelop / Necesito ayuda con mi juego en C ++ y Allegro
04 de Octubre de 2017, 10:10:31 PM
Hola a todos y gracias por leerme!
Estoy empezando en el tema de la programación y para la facultad me pidieron desarrollar un juego desde cero en C++ usando alguna librería de graficos. Yo elegi hacerlo con Allegro.
Mi problema es el siguiente. Tengo un buffer principal donde quiero imprimir mi personaje y algunas cosas más que irán surgiendo a medida que avanze. El problema es que cuando declaro el BITMAP *buffer en el main me lo reconoce y anda perfecto, pero cuando creo la clase Personaje y hago una función dentro de la clase, que se llama void imprimir_personaje(), donde se imprime la imagen del personaje sobre mi buffer principal, me dice que buffer no está declarado. Logicamente porque está declarado en el Main ... hasta acá todo bien .... el tema es que no se como declar el buffer para que pueda ser usado desde todos lados (ya que es mi buffer principal). Intente declararlo antes del Main y sigo teniendo el mismo problema. Intente poner el buffer en un .H (header) e incluirlo donde lo necesitaba pero me dice que tengo multiples declaraciones de tod lo que hay en el .H
Vi por ahí en foros que alguien nombraba algo de la palabra "extern" ... tambien intente con esto pero nadie explicaba bien como se usaba e implementaba ... igual no se si servirá para mi problema.
Alguna idea ??
Les dejo el código para que vean de lo que hablo:

#include <allegro.h>
#include "inicia.h"

void iniciar_allegro();

BITMAP *buffer; // ESTE ES MI BUFFER PRINCIPAL

int main()
{
    iniciar_allegro();

    BITMAP *prota  = load_bmp("lee.bmp",NULL);

    bool salir;
    int x,y;
    int ax,ay;
    int direccion;
    int animacion;
    int desplazamiento;

// inicializar vbles
    x = 10;
    y = 10;
    ax = 10;
    ay = 10;
    direccion = 0;
    animacion = 0;
    desplazamiento = 4;
    salir = false;

    while ( !salir )
    {

        clear_to_color(buffer, 0xaaaaaa);

        masked_blit(prota, buffer, animacion*26, direccion*47, x, y, 26,47);

        ax = x;
        ay = y;


        // teclas control usuario
        if ( key[KEY_UP] )
        {
            y-=desplazamiento;
            direccion = 1;
        }
        if ( key[KEY_DOWN] )
        {
            y+=desplazamiento;
            direccion = 0;
        }
        if ( key[KEY_LEFT] )
        {
            x-=desplazamiento;
            direccion = 2;
        }
        if ( key[KEY_RIGHT] )
        {
            x+=desplazamiento;
            direccion = 3;
        }
        if ( ax != x || ay != y )
        {
            // entra si a cambiado alguna de las variables x,y
            animacion++;
            if ( animacion > 2 ) animacion = 0;
        }

        // limites
        if ( x < 0 ) x = 0;
        if ( x > 760 ) x = 760;
        if ( y < 0 ) y = 0;
        if ( y > 565 ) y = 565;


        blit(buffer, screen, 0, 0, 0, 0, 800, 600);

        rest(60);

        // tecla de salida
        if ( key[KEY_ESC] ) salir = true;

    }

    destroy_bitmap(prota);
    destroy_bitmap(buffer);

    return 0;
}

END_OF_MAIN();

void iniciar_allegro()
{
    allegro_init();
    install_keyboard();

    set_color_depth(32);
    set_gfx_mode(GFX_AUTODETECT_WINDOWED, 800, 600, 0, 0);
    buffer = create_bitmap(800, 600);
}



Desde ya muchas gracias a todos :D
Saludos,
Nacho





Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.