Crear archivos .wav desde Gemix.

Discusión en general sobre Gemix.

Re: Crear archivos .wav desde Gemix.

Postby CicTec » Thu Sep 13, 2012 11:56 am

erkosone wrote:Venga va animaros a desempolvar el compilador de c++ que es barato, es gratis XD.. yo también me animo a donar pasta a quien lo haga.. de hecho ya he donado varias veces en varios proyectos que me han solucionado algún problema :)

Portar la Chipmunk a Gemix no es difícil para alguien bien experimentado en C/C++, para un novato como yo es un paraiso de horrores XD.. lo difícil no es portarla tampoco simulatorone, lo complicado en si es integrarla en el lenguaje, por ponerte un ejemplo, la lib funciona de una manera bastante simple, define tablas de vectores que son asociados a un tipo de objetos, por ser de un tipo en concreto se le asocia un 'shape' o mascara que es como decir.. si mi lista de vectores define un circulo entonces este objeto funcionará con las propiedades de un circulo, es bastante mas fácil de lo que parece en realidad, el problema es como leches creas un array de 2 dimensiones en función de un sprite de gemix, ese es la primera laguna que se me pasa por la cabeza, que tiene solución claro.. pero como esa habrán cientos..

En verdad traducirla a pelo a Gemix creo que alguien con soltura lo puede hacer en un fin de semana o 3 días, el problema es que luego ese estilo de api está pensado para C o C++, donde las cosas no se hacen como en Gemix.

Yo creo que una lib así la tiene que portar alguien como GINO o CicTec que conocen bien las entrañas de Gemix y saben al 100% como enfocar estos problemas, pero vamos que yo me uno a la moción que planteas, si ahora viene alguien y porta la lib yo también le dono dinero, soy el primer interesado en tenerla funcionando en Gemix.

No la debes integrar en el lenguaje, solo tienes que hacer un wrapper (replicar las estructuras y funciones que tiene).

Para integrarla en el lenguaje se mas complicado, eso dejalo a nosotros con el modulo oficial de Box2D.
User avatar
CicTec
 
Posts: 16576
Joined: Thu Jul 31, 2008 10:18 pm

Re: Crear archivos .wav desde Gemix.

Postby SimulatorOne » Thu Sep 13, 2012 12:02 pm

entiendo, esta claro que yo lo usaria para el pinball :D y puede que tambien para el juego de Rosie, en vez de usar mapa de colores se podria usar esos vectores y asi se pueden meter objetos muy interesantes en el nivel, una roca, o una casa que se derrumba, o cuando Rosie se hace una bola puede rodar tan fluidamente como si fuese una pelota vectorial.
User avatar
SimulatorOne
 
Posts: 6626
Joined: Tue Nov 17, 2009 2:52 pm
Location: Barcelona

Re: Crear archivos .wav desde Gemix.

Postby erkosone » Thu Sep 13, 2012 12:21 pm

Que tu la usarías Simu XD..
Tu cuéntale a alguien que haces el motor a pelo para cada juego.. haber que te dice XD..

Está claro que así aprendemos mucho mucho.. pero claro.. luego viene uno con gráficos de mierda "pero con física" y se rie de tu currazo de meses XD.. la triste realidad es esa :P
User avatar
erkosone
 
Posts: 10654
Joined: Tue Feb 24, 2009 2:13 pm
Location: Barcelona.

Re: Crear archivos .wav desde Gemix.

Postby GINO » Thu Sep 13, 2012 12:29 pm

Tanto Chipmunk como Box2D son simplemente librerías de física. No tienen nada que ver con el apartado gráfico.
Lo que hay que hacer es crear los cuerpos rígidos con primitivas simples (cuadrado, círculo, polígono) y luego pintar un gráfico en gemix según este posicionado/rotado el cuerpo. Esta claro que el gráfico no se corresponderá al 100% en forma con el cuerpo, pero eso tampoco es un problema ya que seguramente ni te des cuenta. El cuerpo lo creas con diferentes formas poligonales que tienes que adaptar más o menos al tamaño de tu gráfico. La colisión no va a ser pixel-perfect respecto al gráfico eso está claro.
User avatar
GINO
 
Posts: 2823
Joined: Thu Jul 31, 2008 10:25 pm

Re: Crear archivos .wav desde Gemix.

Postby erkosone » Thu Sep 13, 2012 12:38 pm

GINO wrote:Tanto Chipmunk como Box2D son simplemente librerías de física. No tienen nada que ver con el apartado gráfico.
Lo que hay que hacer es crear los cuerpos rígidos con primitivas simples (cuadrado, círculo, polígono) y luego pintar un gráfico en gemix según este posicionado/rotado el cuerpo. Esta claro que el gráfico no se corresponderá al 100% en forma con el cuerpo, pero eso tampoco es un problema ya que seguramente ni te des cuenta. El cuerpo lo creas con diferentes formas poligonales que tienes que adaptar más o menos al tamaño de tu gráfico. La colisión no va a ser pixel-perfect respecto al gráfico eso está claro.


Sep, en eso estaba pensando, pues no estaría nada mal har una función en gemix que pase una imagen a vectores, a la larga nos va a hacer falta si o si, ese curro me recuerda el trabajo que hiciste para ayudar a pamerco con su juego estilo estrategia y los conos de visión.. sería interesante crear esa función por que oye.. si ponemos un standar por ejemplo de 10 puntos, podría hasta tener el propio Wrapper objetos prefabricados "poligonos" de un tamaño especifico por ejemplo de 10 o de 15 vectores, y con una función en gemix mismo cargar la info del sprite como parámetro para crear el objeto.

Que opinas GINO? tu crees que sería buena idea crear objetos prefabricados para simplificar el tema? por que un circulo o cuadrado o rectangulo son siempre construidos de la misma forma, pero el poligono es el unico así mas complicadillo.. los demás que hay casi que he pasado de mirarlos no se ni que mas opciones trae la lib..
User avatar
erkosone
 
Posts: 10654
Joined: Tue Feb 24, 2009 2:13 pm
Location: Barcelona.

Re: Crear archivos .wav desde Gemix.

Postby kozka » Thu Sep 13, 2012 12:56 pm

eso esta claro erkosone pero piensa en esas cosas cuando tengas la libreria en plan basico ,funcionando en plan basico en gemix .
hacer una funcion que pase un grafico a forma poligonal no es dificil , suma lo de trazar el contorno y a eso cada x distancia guardas las coordenadas de ese punto
cuanto menos distancia mas definicion y mas lados tendra claro.y ya tienes todos los puntos del contorno para hacer un poligono.
User avatar
kozka
 
Posts: 2111
Joined: Sun Feb 01, 2009 9:36 pm

Re: Crear archivos .wav desde Gemix.

Postby GINO » Thu Sep 13, 2012 1:21 pm

@kozka
Es más complejo de lo que puede parecer. Para empezar tienes que usar solo polígonos convexos, con lo cual, aunque tengas un polígono obtenito con el algoritmo X a partir de un sprite, vas a tener que triangular o similar si aquel no es convexo. Además está el tema de los objetos animados. Es absurdo hacer esto porque la forma de un sprite cambiaría respecto del siguiente en una animación. Tienes que crear una forma básica que sirva, o bien hacer algo tipo ragdoll.

@erkos
Ya erkos, pero entonces ya no es un wrapper de la lib, es más. Además, lo de pasar un gráfico a vectores aparte de que es más o menos complejo, no te sirve de mucho porque puedes tener un objeto que esté animado, con lo cual a cada frame cambia su forma. Estas libs son de cuerpos rígidos, no pueden cambiar su forma. Por ejemplo, si tienes un angry birds, para los pájaros puedes definir una forma circular que es siempre la misma, luego pintas una animación que mas o menos se adapta en forma al círculo, coincida o no al 100% con la forma, al jugarlo no te vas a enterar. Para objetos que cambian mucho su forma, por ejemplo un personaje corriendo, la mejor forma es hacer algo estilo ragdoll, osea pintarlo por partes. Hay que tener claro que la parte gráfica es solo una skin que embellece el juego. El sistema de colisión es mucho más simple internamente.

La chipmunk esta hecha en C. Solo hay que hacer wrapper de las estructuras que usa (como typedefs en gemix) y de las funciones, es simple una vez lo ves. Pero erkos puedes hacer esto:
  • vas a esta página y te miras el ejemplo ese: http://chipmunk-physics.net/release/ChipmunkLatest-Docs/#Intro-HelloChipmunk
  • Lo analizas y ves que en el usa unas 20 funciones y cuatro tipos definidos.
  • Creas el módulo solo son eso, con lo cual podrás correr ese ejemplo en gemix y ya de paso has implementado las 3 cosas que hay que hacer:
    • Añadir typedefs y funciones para que gemix los reconozca en el lenguaje.
    • Crear las funciones C que son llamadas cuando se llama a la función equivalente de gemix.
    • Crear el código de la lib que ejecuta el interprete a cada frame (vendría siendo el tema del timestep, etc.).
Lo demás es tener tiempo para agregar más funciones y mas estructuras.
User avatar
GINO
 
Posts: 2823
Joined: Thu Jul 31, 2008 10:25 pm

Re: Crear archivos .wav desde Gemix.

Postby kozka » Thu Sep 13, 2012 1:31 pm

eso asi que ya sabes erkos para la semana que viene lo quiero maquetado y todo XDD...

GINO te queremos Xd
User avatar
kozka
 
Posts: 2111
Joined: Sun Feb 01, 2009 9:36 pm

Re: Crear archivos .wav desde Gemix.

Postby erkosone » Thu Sep 13, 2012 1:43 pm

madre mia.. si lo tengo que cojer con pinzas XD.. estoy haciendo algunas practicas primero con modulos sencillisimos y cuando los compile para gemix "y funcionen XD.." entonces me liaré con algo de mas nivel.. pero que yo soy novato hee.. ganas no me faltan pero no puede decirte que lo voy a poder hacer jaja.. tengo que hacer alguna chapuza en c++ primero con la lib para ver realmente como se usa.

Pero vaya.. que la idea es empezar por lo facil e ir subiendo el nivel..
User avatar
erkosone
 
Posts: 10654
Joined: Tue Feb 24, 2009 2:13 pm
Location: Barcelona.

Re: Crear archivos .wav desde Gemix.

Postby SimulatorOne » Thu Sep 13, 2012 10:06 pm

weno al final erkos, que invento vas hacer con el sdk...

tengo una pregunta si es posible implementarla en el modulo de crear archivos .wav.
seria posible grabar audio del micro o del stereo(la que tenga activada en el sistema como grabadora de sonidos)
o es mucho pedir? seria interesante :)

Al final que vas hacer?
User avatar
SimulatorOne
 
Posts: 6626
Joined: Tue Nov 17, 2009 2:52 pm
Location: Barcelona

PreviousNext

Return to General

Who is online

Users browsing this forum: No registered users and 7 guests