Bennu Game Development

Foros en Español => Extensiones => Topic started by: l1nk3rn3l on March 24, 2010, 01:41:44 PM

Title: Sonido 3D (version Beta)
Post by: l1nk3rn3l on March 24, 2010, 01:41:44 PM
promete bastante...
funciona en 2D y en 3D haber quien me regala ejemplos interesantes en 2D y 3D,(me refiero a
ejemplos graficos)

esta basada en la profesional libreria de efectos de sonido
de creative labs llamada OPENAL,
http://es.wikipedia.org/wiki/OpenAL
http://connect.creativelabs.com/openal/default.aspx



descargar de aqui para bennu:

http://code.google.com/p/fenixpack/downloads/list

por el momento no incluye efectos de sonido..

pero esta apenas para hacer unas pruebas... en 3D... de sonido claro...


alguien tiene un teatro en casa para probarlo..

no les apetece un juego de zombies, tan oscuro como doom 3 y solo
nuestros sentidos para guiarnos..?
Title: Re: Sonido 3D (version Beta)
Post by: josebita on March 24, 2010, 02:05:50 PM
Me parece muy interesante. ¿Podrías subir el código fuente para que pudiera recompilarlo en linux?
Title: Re: Sonido 3D (version Beta)
Post by: FreeYourMind on March 24, 2010, 02:41:53 PM
Mi portatil tiene sonido 3D...
Title: Re: Sonido 3D (version Beta)
Post by: BoMbErLiNk on March 24, 2010, 02:43:23 PM
Me parece genial, SDL viene muy pelada con el sonido, ni cambio de pitch, ni efectos, ni eco.. solo cambio de volumen y panning.

Le echare un ojo a ver que se le puede sacar al 3D  :), cuando dices que viene sin efectos te refieres a que con ellos se podrían aplicar efectos de eco al entrar a un puente, o de amplitud al andar por un templo, el cambio de pitch para las revoluciones de un motor, filtros que alteren el sonido como taponarlo cuando te metes bajo el agua ?
Title: Re: Sonido 3D (version Beta)
Post by: FreeYourMind on March 24, 2010, 02:59:05 PM
Bueno, si quereis tambien se podria adaptar la mejor dll de sonido, la fmod ex, que soporta mp3, etc, etc (que es el mismo sistema de sonido que tiene la otra alternativa div-like por cierto), lo que ocurre que sólo es grátis para proyectos gratuitos, que son la mayoria de Bennu, pero si alguno es comercial habria que pagar la licencia...
Title: Re: Sonido 3D (version Beta)
Post by: DCelso on March 24, 2010, 04:29:01 PM
¿cual? ¿esta?
http://forum.bennugd.org/index.php?topic=770.0
Title: Re: Sonido 3D (version Beta)
Post by: FreeYourMind on March 24, 2010, 04:57:05 PM
Me parto!!! La tenias en la lista de dll's no oficiales ?, si es afirmativo hoy quedo de castigo  ;D
Title: Re: Sonido 3D (version Beta)
Post by: DCelso on March 24, 2010, 05:03:21 PM
arop, desde el principio, el único cambio de la lísta fue en la sección WIP.
Title: Re: Sonido 3D (version Beta)
Post by: FreeYourMind on March 24, 2010, 05:21:36 PM
Je ne compris pas... Je ne regarde pas le nom donc cette liste...
Title: Re: Sonido 3D (version Beta)
Post by: Drumpi on March 24, 2010, 06:52:31 PM
Supongo que lo del sonido 3D se refiere al sistema dolby surround, más conocido por 5.1, por el que podemos oir sonidos desde cualquier rincon.
Pero si, en temas de sonido, Bennu (y Fenix, que luego os enfadais) va muy escasita. No es que div tuviese mucho más, pero por ejemplo lo del pitch shifting se echa de menos, así como saber en qué parte de un MOD se está reproduciendo (y poder forzar el salto a otra linea, para hacer loops con introducción).
Lo del eco no lo vería yo tan necesario, porque eso se puede hacer con los wav: basta con volver a reproducir el mismo sonido con unos pocos frames de retraso y distinto volumen en el canal... y repetirlo las veces que querais.

Hay muchos efectos interesantes que se pueden hacer de una forma medianamente sencilla, al menos, por TODO lo que he leido hasta ahora (lo que no implica que se haga en una tarde, se necesita acceso al HW de sonido y probablemente una implementación de FFT que requiere algo de cálculo, aunque parece interesante la librería fftw).

Por cierto, no sabía que la FMOD exigía que se usase en productos no comerciales, a lo mejor no convendría usarla como módulo oficial, pues hay que hacer Bennu lo más abierto posible a todas las alternativas, como su antecesor. ¿Pedir donativos convierte un proyecto en comercial? :D
Title: Re: Sonido 3D (version Beta)
Post by: BoMbErLiNk on March 24, 2010, 07:09:15 PM
Si, estoy contigo, eso del eco para un ejemplo simple o un juego con una estructura pensada desde el principio estaría bien, el problema es tratar de añadirlo de forma sencilla a un juego completo que hace llamadas directas por todas partes :-[

Por cierto que pensais de SFML ?
http://www.sfml-dev.org/features.php

Es una dll que trae de todo, sonido 3D y efectos, aceleración 2D y 3D, efectos de post procesado, control de joysticks, de red...
Title: Re: Sonido 3D (version Beta)
Post by: josebita on March 24, 2010, 07:28:02 PM
Bennu no es comercial (pedir donativos para el proyecto no es interés comercial) y mi librería para FMOD Ex no es más que eso: mi librería porque la necesitaba para mi karaoke. No es oficial y siempre he recomendado que -pudiendo- se utilizara la oficial de Bennu.
Yo la hice porque en mi caso necesito poder reproducir más formatos de audio que los que puede reproducir Bennu.

Otra condición que imponen los de la FMOD es que debes poner su logo al iniciar tu juego con un texto diciendo que usas FMOD:
http://www.fmod.org/index.php/sales/details/non-commercial
Title: Re: Sonido 3D (version Beta)
Post by: Windgate on March 24, 2010, 10:23:33 PM
Gracias l1nk!!!

No lo había comentado, pero estaba haciendo un nuevo módulo de 3Dit que se encargaba de calcular la distancia entre el modelo del proceso emisor y la cámara para determinar el padding y el volumen... Lo tenía casi terminado, pero eso no es 3D.

Una .dll más para la lista de pruebas a hacer :D
Title: Re: Sonido 3D (version Beta)
Post by: l1nk3rn3l on March 24, 2010, 10:42:29 PM
http://code.google.com/p/fenixpack/downloads/list

se puede hacer lo mismo que en los juegos,
osease aplicar eco, y demas efectos siempre y cuando la tarjeta de sonido lo aguante...


en esta version estos efectos no estan disponibles,
solo se puede aplicar efectos 3d ..

osease puedes crear varias fuentes de sonido 3d y escucharlos
claro debes mirar el ejemplo para entenderlo

incluye fuentes y nuevas funciones..

con lo que se lleva hasta el momento se podria hacer un juego
muy bueno
... (sin efectos mas avanzados como los que comente
que estaran disponibles dentro de unos dias ) o si hay un voluntario..




Title: Re: Sonido 3D (version Beta)
Post by: FreeYourMind on March 25, 2010, 08:17:48 AM
Quote from: josebita on March 24, 2010, 07:28:02 PM
Bennu no es comercial (pedir donativos para el proyecto no es interés comercial) y mi librería para FMOD Ex no es más que eso: mi librería porque la necesitaba para mi karaoke. No es oficial y siempre he recomendado que -pudiendo- se utilizara la oficial de Bennu.
Yo la hice porque en mi caso necesito poder reproducir más formatos de audio que los que puede reproducir Bennu.

Otra condición que imponen los de la FMOD es que debes poner su logo al iniciar tu juego con un texto diciendo que usas FMOD:
http://www.fmod.org/index.php/sales/details/non-commercial

Pues yo he usado la FMOD a secas en mi proyecto 3D (fin de carrera) hace años y no sabia lo del logo, ni lo puse, eso no sera cosa nueva de la version FMOD EX ?
Title: Re: Sonido 3D (version Beta)
Post by: Drumpi on March 25, 2010, 12:54:37 PM
Quote from: BoMbErLiNk on March 24, 2010, 07:09:15 PM
Si, estoy contigo, eso del eco para un ejemplo simple o un juego con una estructura pensada desde el principio estaría bien, el problema es tratar de añadirlo de forma sencilla a un juego completo que hace llamadas directas por todas partes :-[

Pues te creas una función, algo así como:

process play_eco_wav (id_file, repet, atenuacion, rebotes)
private
_volume_actual=128;
_cont;
begin
_play_wav(id_file, repet);
_frame(400);
_for (cont=0;cont<rebotes;cont++)
__volume_actual*atenuacion/100;
__set_channel_volume(play_wav(id_file,repet),volume_actual);
__frame(400);
_end
end


O algo similar, porque esto lo he hecho de cabeza, rápido y de forma guarra :D Habría que pulir bastantes cosas.

A mi me gustaría probar el ejemplo, pero no tengo un sistema dolby, ni siquiera en la "pantalla cara" :P
Title: Re: Sonido 3D (version Beta)
Post by: josebita on March 25, 2010, 02:03:58 PM
Quote from: FreeYourMind on March 25, 2010, 08:17:48 AM
Pues yo he usado la FMOD a secas en mi proyecto 3D (fin de carrera) hace años y no sabia lo del logo, ni lo puse, eso no sera cosa nueva de la version FMOD EX ?

Ni idea, me suena que en la versión 3.x también estaba. No creo que se pongan a mirar cada proyecto para ver si cumple, pero no cuesta nada en realidad.
Title: Re: Sonido 3D (version Beta)
Post by: josebita on March 25, 2010, 02:47:40 PM
El fichero de proyecto con la librería compilada para linux (32 bits). Creo que he compilado todo estático así que no hacen falta más librerías que la propia mod_openal.so
Eso sí, el usuario debe haber instalado en su sistema correctamente (a través del gestor de paquetes) las librerías:
* openal (paquete libopenal1 en Ubuntu/debian)
* vorbisfile (paquete libvorbisfile3 en Ubuntu/debian)
* bgdrtm (bennugd-core en mi PPA)

El ejemplo pareec funcionar sin problemas.

http://dl.dropbox.com/u/3022394/3DSound_linux.tar.lzma
Title: Re: Sonido 3D (version Beta)
Post by: l1nk3rn3l on March 25, 2010, 03:29:32 PM
esta libreria permite usar mp3

y adicionar los efectos es tan facil como llamar una funcion como add_effect_eco()
por fuera del loop ,

todo es multithread ,,, cada vez que el protagonista pasa por determinado
sitio el sonido se ejecuta con los parametros que le adicionemos

todo es transparente..
Title: Re: Sonido 3D (version Beta)
Post by: Windgate on March 27, 2010, 03:20:54 AM
Coño, mp3...

¿No sería fácil enmascarar una FUNCTION para tener un play_mp3 ( string ) ? :D
Title: Re: Sonido 3D (version Beta)
Post by: Drumpi on March 27, 2010, 06:43:22 PM
Wind, supongo que estás al tanto del tema legal detrás de los MP3 ;)
Por culpa de eso no se les puede dar un soporte oficial.

(Lo que me recuerda que a los GIFs ahora si, hmmmm).
Title: Re: Sonido 3D (version Beta)
Post by: Windgate on March 29, 2010, 12:18:03 PM
Sobre el tema del mp3 tengo mis dudas... Si esta librería es open y tiene soporte para mp3, ¿No deberíamos poder portarla a Bennu y tener ese soporte?

Hablo desde el desconocimiento, fue por este foro que supe que mp3 tenía licencia, pero desconozco las limitaciones, por ejemplo, si una .dll con licencia LGPL permitiese convertir .mp3 a .ogg, ¿Sería ilegal que el juego al hacer play_mp3 convirtiese a .ogg y reprodujese el ogg después de convertir?

Por supuesto que lo anterior es una burrada por el coste de la conversión, pero se podría "apañar" para que una vez convertida se mantenga ya la .ogg y no intente volver a convertir... Seguro que me diréis que no cuesta nada conertir, pero es que fastidia un poco :(
Title: Re: Sonido 3D (version Beta)
Post by: FreeYourMind on March 29, 2010, 01:08:24 PM
Si mp3 tiene licencia, eso corre a cargo de fmod, que es quien implementa su lectura.
O sea, si fmod permite usarse en proyectos freeware, según sus condiciones, y como sabemos la condición no pasa de poner su logo en el juego, pues el tema de licencias ya es ajeno a Bennu si utiliza ese mod y tambien al usuario, ya que la licencia ya esta tratada en fmod, y la responsabilidad corre a cargo de esa empresa que disponibiliza la respectiva dll/librerias.

O sea, vosotros estais usando fmod, que permite leer mp3's y supustamente tiene licencia para hacerlo.

Es una dll muy conocida, si fuese un problema no irian atras de nosotros pero si de ellos, y no cabe la menor duda que fmod es legal, así que sólo hay que respetar la licencia que ellos imponen, lo demás es transparente para nosotros.
Title: Re: Sonido 3D (version Beta)
Post by: josebita on March 29, 2010, 01:25:46 PM
No se puede. Cualquier software que reproduzca un mp3 sin la licencia de Thomson Multimedia viola sus patentes siempre. Otro tema es quién reproduce el MP3 (si usáramos librerías del sistema que vinieran preinstaladas y prelicenciadas en principio no habría problema. Como ejemplo en el enlace de abajo mirad lo que pone al respecto de la PS3).

En algún momento ellos han dicho que no iban a demandar a gente que hiciera cosas gratis o libres o con proyectos comerciales pequeñitos por usar sus formatos, pero eso es sólo su palabra.

Todo el terreno de las patentes y la propiedad intelectual es muy lioso y uno nunca puede estar seguro al 100% de que lo hace todo bien. La única solución es usar formatos libres.

Si la gente del reverso tenebroso de Bennu usa la fmodex para reproducir MP3 (creo haber leído alguna vez que es así pero la verdad es que no sé nada de su proyecto) y empieza a venderlo sin licencia de los colegas estos del mp3, podrían despertarse una mañana con un montón de abogados metidos en el ojete y problemas legales para aburrir.

En resumen: no es que Splinter no sepa hacer que Bennu reproduzca MP3, es que no quiere porque es un problema en todos los sentidos. Convertir un MP3 a un OGG no lleva casi nada de tiempo y ahorra una cantidad de quebraderos de cabezaa inmensa.

Y por cierto, lo que dice Free no es exacto. En la página de la fmodex se dice que ellos te dan la funcionalidad para reproducir MP3, pero que eres tú quien debe licenciar la reproducción con thomson:
http://www.fmod.org/index.php/sales/mp3/
Title: Re: Sonido 3D (version Beta)
Post by: FreeYourMind on March 29, 2010, 02:21:27 PM
Vale, si ellos así lo dicen tienes razón, por eso comente que de tu parte sólo tendrias que cumplir con el acuerdo que te impone fmodex, lo que es correcto, pero no pense que esa clausula estaba en lo que te imponia.

Como me dijiste que sólo tenias que poner su logo (he mirado la página que pusiste pero no me la he leido a fondo), pense logicamente que la podrias usar, ahora como bien dices si ellos te dicen eso, entonces tienes completa razón, aunque en el fondo yo tambien tenia razón al suponer erroneamente, eso sí, que ellos te trespasaban el derecho a poder usarlos, lo que no es así, como bien explicas.

Tambien es cierto que por lo que enseñas, que tambien he estado equivocado acerca del uso de esta libreria.

Por cierto el otro div-like comercial la usa, aunque no explica al usuario el tema de la licencia, quien directamente no se enterá que la utiliza, esos si, en su version completa y comercial tendrian que pagar la licencia para que el usuario utilize mp3's en sus juegos, lo curioso es que con la beta ya se permiten hacer juegos, y si alguno se hace uno con caracter comercial, sus autores podrian estar infrigiendo la lei sin darse cuenta...
Title: Re: Sonido 3D (version Beta)
Post by: josebita on March 29, 2010, 02:36:10 PM
Quote from: FreeYourMind on March 29, 2010, 02:21:27 PM
Vale, si ellos así lo dicen tienes razón, por eso comente que de tu parte sólo tendrias que cumplir con el acuerdo que te impone fmodex, lo que es correcto, pero no pense que esa clausula estaba en lo que te imponia.
La verdad es que sería útil que al comprar una licencia para usar la fmodex ellos se encargaran de licenciarte el soporte para MP3.
Si no lo hacen probablemente sea porque la gente de Thomson les está poniendo problemas/demasiadas complicaciones.

Quote from: FreeYourMind on March 29, 2010, 02:21:27 PMPor cierto el otro div-like comercial la usa, aunque no explica al usuario el tema de la licencia, quien directamente no se enterá que la utiliza, esos si, en su version completa y comercial tendrian que pagar la licencia para que el usuario utilize mp3's en sus juegos, lo curioso es que con la beta ya se permiten hacer juegos, y si alguno se hace uno con caracter comercial, sus autores podrian estar infrigiendo la ley sin darse cuenta...
Exacto. Para el desarrollador de juegos esa clase de cosas es importante si se quiere hacer algo medianamente serio. Nosotros estamos cubiertos en ese aspecto; punto para Bennu :)

Otra cosa es que conozcas todo este asunto y te de igual. Yo creé la mod_fmodex para mi karaoke porque me hacía falta poder reproducir casi cualquier formato, pero eso es cosa mía (el "jugador" se baja las canciones de internet y yo no puedo controlar en qué formato se las baja ni obligarle a que sólo se baje canciones en OGG).
Pero me parecería mal que Bennu diera soporte oficial para formatos propietarios sin informar adecuadamente a los usuarios de los problemas que ello podría conllevar.

PD: $2500 cuesta la licencia para un juego que venda más de 5000 copias y que quiera usar mp3.
http://www.mp3licensing.com/royalty/games.html
Title: Re: Sonido 3D (version Beta)
Post by: FreeYourMind on March 29, 2010, 06:40:22 PM
Pido disculpas por el pequeño lapso que he puesto sobre la otra herramienta div-like, decia que no se comentaba nada si se podia usar la beta para crear juegos comerciales, y sobre posibles cuestiones legales de uso indevido de recursos.

Lo que no es verdad, segun la licencia:

TIPO DE LICENCIA DE LA BETA

ES POSIBLE:
CREAR CUALQUIER TIPO DE JUEGO, COMPLETO, DEMO O SHAREWARE Y DISTRIBUIRLO DE FORMA
TOTALMENTE FREE (CON O SIN SOURCE INCLUIDO)

ESTÁ ABSOLUTAMENTE VETADO:
CREAR O USAR JUEGOS PARA GANAR DINERO Y/O OTRA FORMA MENOR, TODO ESO PARA NO
ENCURRIR EN PROBLEMAS LEGALES, CIVILES Y/O PENALES


Queda claro, que en ambos casos el uso del formato mp3 queda a la responsabilidad del propio desarrollador/usuario.
Title: Re: Sonido 3D (version Beta)
Post by: Drumpi on March 29, 2010, 07:21:44 PM
Bueno, pues ya sabeis más que yo del tem ^^U
Hasta donde yo sabía, los royalties son para la reproducción de MP3, porque creo que hay programas que permiten hacer conversión a MP3 que no pagan licencias, son gratuitos, pero no se si es porque es así, porque ya han pagado la licencia o porque usan una librería que ya lo ha hecho por ellos.
Se que existe un algoritmo de compresión (MP3pro) que si requiere de una licencia, frente a otro que es un poco más lento y comprime algo menos (lame MP3 creo que es). De hecho, aun me quedan 9 usos del algoritmo MP3pro en mi programa de conversión de audio de forma gratuita ;D

De todas formas, después del éxito con la GP2X, creo que voy a usar el formato OGG más a menudo, así me olvido del tema de ahorrar el 80% de los recursos para el audio. Y de paso contribuyo un poquito más a la expansión de este formato.
Title: Re: Sonido 3D (version Beta)
Post by: josebita on March 29, 2010, 09:50:12 PM
Bueno, creo que ya nos hemos ido por las ramas suficiente. No sé si a link le hace mucha gracia que hablemos de estas cosas en el hilo sobre su librería.
Title: Re: Sonido 3D (version Beta)
Post by: l1nk3rn3l on March 30, 2010, 04:36:45 PM
bueno esta libreria tambien usa formatos WAV y OGG , si desean pueden borrar el plugin MP3 incluido y lo borran
sino desean usar MP3... borrando el plugin DLL(MP3) creo que la libreria sigue funcionando ..

alguien lo intenta?
Title: Re: Sonido 3D (version Beta)
Post by: l1nk3rn3l on March 31, 2010, 03:09:03 PM
SI YA LO PROBE borrando la dll de mp3 el mod_openal sigue funcionando-...
Title: Re: Sonido 3D (version Beta)
Post by: Drumpi on April 01, 2010, 02:01:23 AM
Espero que mis comentarios no sean la causa del borrado del añadido ¿o si? no se, con temas legales de por medio siempre he pensado no meterme en camisa de once varas (bueno, si es para consumo propio sí ;D).
Esta es una solución, y si alguien pregunta, pues se le invita amablemente a visitar la página de openAL y que se descargue la librería que falta. Otra sería que al compilar diera un warning avisando del tema legal (como se da ahora con los de las variables redeclaradas de las libs oficiales).

Pero bueno, enhorabuena por el módulo. Como siempre trayendo productos de calidad ;)