Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





syncAGB compatible con GCC (prerelease)

Iniciado por synchrnzr, 19 de Marzo de 2003, 07:06:29 PM

« anterior - próximo »

synchrnzr

                                Hola,

al final me he decidido a sacar una versión del syncDX para el GCC del devkitadv, a ver si tengo más éxito. Por ahora pierde un poquillo de velocidad respecto a la versión para el ARM SDT, imagino que será por algun ajuste del compilador que no acabo de pillar (lo raro es que el código es 100% ensamblador... no veo cómo coño me influye el compilador ^_^')

Como dato significativo, ahora mismo consume un 35.2% de CPU mezclando 7 canales simultáneos (todos totalmente panorámicos y con posibilidad de Dolby Surround) más el filtro de reverberación estéreo (que ya se chupa un 5% el cabrón... pero se puede desactivar, por lo menos XD)  generando una señal de salida estéreo a 16257Hz, 8bits.

Antes de que nadie lo diga: sí, un MODplayer gratuito puede consumir hasta un 5% (aunque los hay que les chupa hasta un 20% pero... seguro que les ha costado conseguir que consuma tanta CPU, no sé cómo se lo montan XDDD)

Probablemente los motivos son que:

1. Un MOD sólo mezcla 4 canales a la vez con lo que toda la info de mezcla cabe en los registros de la CPU y no es necesario acceder a memoria casi para nada durante el proceso de mezcla (teniendo en cuenta que el acceso a ROM es de 4 ciclos, eso representa MUCHO tiempo de CPU)

2. Un MOD tiene 2 canales por lado sin control de panorámica (mucho menos Surround) por lo que basta con sumar las muestras de cada lado para mezclarlas

3. Un MOD utiliza una sincronización por rows (con lo que no puede hacer figuras como tresillos) Por tanto no necesita manejar mensajes de sincronización

4. Un MOD... es un MOD XDDD

Bueno, eso no quiere decir que un 35.2% de CPU no sea mucho (es mazo, es una aberración) Pero por lo menos hay que compararlo con motores de características parecidas (el GAX, el MusyX...) Id con cuidado con la información que ponen en la web, que es algo engañosa, la primera vez que me comparé el motor, pillé una depre de aquí te espero. Hasta que lo entendí todo bien ;)

Si alguien está interesado y quiere una demo, que me envie un mail (ahora lo único que tengo a mano es una BSO para un juego comercial y no la voy a colgar por ahí ^_^') Idem para comentar las condiciones de uso y/o licensing (en principio no es gratis... cosas que pasan... pero si os interesa escribidme igualmente, soy un tio enrollado XD)

Ale, un saludo!

sync                                

ethernet

El render de farbraush se mete media cpu el solito xDD

Podrias explicar un poco mas todo esto q dices para los q no tenemos ni zorra del tema de sonido?


saludos

synchrnzr

                                ¿El render? Si hablamos de gráficos se comprende, pero con el sonido no nos dejan mucho margen las compañías :-P

CitarPodrias explicar un poco mas todo esto q dices para los q no tenemos ni zorra del tema de sonido?

¿He dicho algo raro? ¿Qué quieres que te explique? ^_^'

sync                                

ethernet

render: me referia a generar el sonido, o sea:

while(appActive){
GFX::render();
SOUND::render();
}

synchrnzr

                                Okz

Pues con un 50% de CPU se pueden hacer grandes cosas... así a lo pronto... a mi me daría para 10 u 11 canales estéreo/surround a 16KHz (o hasta 18 canales mono :o )

El hardware de la AGB ayuda mazo a lo que es generar gráficos, siempre he pensado que lo justo sería eso, 50%/50% pero las compañías tiran a usar el mínimo de CPU posible pal sonido. En fin... creo que básicamente se trata de suplir lo inútiles que son los programadores que hacen el resto del juego (no os enfadeis los que programais AGB hombre, que es cachondeo... bueno... más o menos :loco: )

sync                                

fiero

                                Yo creo que la GBA está infrautilizada. Deberían haberle puesto dos altavocillos, uno a cada lado, y apuntando un poco hacia fuera para que cada oído captase el sonido del altavoz correspondiente.

La mayoria de la gente juega sin cascos, por lo que sólo utilizan salida mono ¿no? , si el programa genera sonido estereo, sólo un mínimo número de usuarios lo están percibiendo así, por eso digo que es un desperdicio de recursos, deberian haber puesto 2..., solo es un comentario.

Muy bueno tu trabajo sync

un saludo                                
www.videopanoramas.com Videopanoramas 3D player

synchrnzr

                                Tienes toda la razón, además lo de utilizar un altavoz es una mala cosa porque al mezclarse los canales izquierdo y derecho desaparece el canal de surround, por motivos obvios :-?

Eso me ha obligado a incluir una opción para activar/desactivar la salida surround según si el usuario usa o no altavoces...

CitarMuy bueno tu trabajo sync

Ooopz ¿Qué has visto? ¿No te habrá filtrado seryu la demo que le pasé, no? (seryuuuuu :X9: )

Por cierto, a quien le pase la demo, que no la ejecute en la AGB real, funciona mal (a propósito... no es que no me fie, pero... emmm... XDDD) Utilícese mejor un emulador como el VBA ;)

sync                                

seryu

                                oye, esto es increible, llevo desde el jueves de marcha xqe es el fin de las clases (y fin de los putos examenes). ando sin parar en casa, y ahora, despues de unas merecidas horas de sueño me da por visitar el foraco durante un rato antes de que vuelva a salir, y qe veo? al synchrnzr acusandome de pasar una demo qe solo he tenido tiempo de probar 5 minutos en un emulata!! xDD

en fin qe deprimio me qeo  :llorando:                                

Mars Attacks

                                También podría haberlo dicho simplemente por tu explicación del motor, sync. Por lo que has hablado de él ya se puede suponer que es un buen trabajo. Mira que eres malpensado, ¿eh? (ahora igual piensas que he sido yo, pero te recuerdo que lo autodestruí instantes después de la evaluación :P).                                

fiero

                                XD

sí, lo decia por las explicaciones que daba de las características del motor. Tambien por un post que publicó hace mucho tiempo, donde explicaba con más extensión todas las features... También le doy mucho valor a programar en ensamblador

un saludo                                
www.videopanoramas.com Videopanoramas 3D player

MaSteR

                                jajajaja q desfase de post cm mola. (le veis la gracia yo si...) la peña hablando de su OpenGL y to el tema y ahi un post dobre GBA sobre el tema de los altavoces :D mola tela el kitkat :PPPPPPPPPPPPPPPPPP                                

ethernet

bueno, cuando podremos ver esa release q has anunciado, lo logico es poner algun material cuando lo anuncias. ZXDD

salkudos

synchrnzr

                                Pues tienes razón, pero aun estoy consiguiendo que me den permiso "oficial" porque la música de la BSO no es mía o en todo caso tendré que convertir algun otro tema mio. Una imagen del player tampoco es que diga mucho pero... en fin... supongo que es mejor que nada ^_^'



sync                                

ethernet

extern sucks y defines sucksr more, mejor factoris y const const

saludos

Mars Attacks

                                XDDDDDDDDDDDDDDDDDDDDDD

¿Tú has leído tu frase? Léela en voz alta tres veces y luego díla sólo con la e XDDDDDDDDD                                






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.