[GAME]: PYP - ProYect Pinball [Proyecto/Pausado]

Proyectos en Desarrollo.
User avatar
SimulatorOne
Posts: 6626
Joined: Tue Nov 17, 2009 2:52 pm
Location: Barcelona
Contact:

Re: [GAME]: PYP - ProYect Pinball [Proyecto/Pausado]

Post by SimulatorOne »

oks, de todas formas, ya tengo preparado para que lo probéis un test nuevo, que este tiene la fisica en un 80% buena.
tiene algunos bugs(en algunos puntos en concreto) que no se como solucionarlos. pero la fisica es muy superior al que hice la ultima vez en el juego PYP.

de momento no me copio de ningun codigo.
User avatar
erkosone
Posts: 10656
Joined: Tue Feb 24, 2009 2:13 pm
Location: Barcelona.
Contact:

Re: [GAME]: PYP - ProYect Pinball [Proyecto/Pausado]

Post by erkosone »

Hombre, puestos a hacer un motor 'con trampas' te puedo aconsejar algo, no se si es lo que estás haciendo ya pero puede quedar bien.

Es básicamente definir objetos a base de lineas, las lineas para simplificar el tema serían procesos, que crearían su gráfico con las primitivas de gemix, entonces es solo a base de colisiones y recogiendo el angulo de cada proceso que ha colisionado con la bola, solo tienes que implementar con física real el rebote, esto sería factible siempre y cuando solo haya una pelota, así te ahorras la colisión entre bolas que es mas compleja de hacer, pero vaya, que solo sería calcular el nuevo angulo en función del triangulo que forma cada eje con la linea que se ha rebotado.
User avatar
SimulatorOne
Posts: 6626
Joined: Tue Nov 17, 2009 2:52 pm
Location: Barcelona
Contact:

Re: [GAME]: PYP - ProYect Pinball [Proyecto/Pausado]

Post by SimulatorOne »

erkosone wrote:es solo a base de colisiones y recogiendo el angulo de cada proceso que ha colisionado con la bola, solo tienes que implementar con física real el rebote, esto sería factible siempre y cuando solo haya una pelota, así te ahorras la colisión entre bolas que es mas compleja de hacer, pero vaya, que solo sería calcular el nuevo angulo en función del triangulo que forma cada eje con la linea que se ha rebotado.
lo pense hacerlo a collision/overlap ... pero me sale mas rapido usar map_get_pixel en vez de usar colisiones entre processos.
ya sabes que es mas lento usar colisiones que solo consultar un pixel en un mapa.
y si cada color me indica el Angulo de la pared.

ademas, los processos pintados en el tablero los pinto con map_xput al mapa de tablero unico... asi me libro(no estan en memoria) de todos los processos que son fijos, que son solo para pintar.

tambien busco maximo performance.

-1 proceso bola(tiene su codigo interno y es activo) Z=-50;
-mapa de durezas a colores(no es visible,solo esta en memoria)
-mapa de tablero visible inferior(es una capa pintada, lo que es el fondo de tablero:sombras,pegatinas,luces...) esta capa se imprime primero Z=0;
-mapa de tablero visible superior(es una capa pintada, lo que es superior/solido del tablero:paredes,tuneles...) esta capa se imprime el ultimo Z=-100;

Processos activos: 2 : BOLA + JEFE de partida.
Processos Congelados: 1 Sombra de la Bola. Z=-5;
= 3 Processos, solamente...

de momento se trata de un mapa de tamaño fijo, contra mas grande sea el tablero en dimensiones XY mas memoria ram consume.
El numero de piezas en el tablero de momento es ... lo que aguante xD

Colision entre Bolas.... aun no me puesto a pensar... y no lo veo facil.
de momento se atraviesan.... como el juego de Virtual Pinball de Megadrive. u_u

Esta tarde colgare el test, es bastante importante.
y tambien viene junto el PRG, si alguien me puede echarme una mano con los calculos de rebote, o de colision se lo agradeceria mucho, yo llego hasta tal punto que no se como mejorar el codigo.
User avatar
kozka
Posts: 2111
Joined: Sun Feb 01, 2009 9:36 pm

Re: [GAME]: PYP - ProYect Pinball [Proyecto/Pausado]

Post by kozka »

afer para la colision de las bolas usa en principio lo que traducio erkosone de bola contra bola no te va a costar mucho entenderlo.
y lo puedes mejorar y adaptarlo a tus necesidades.
User avatar
erkosone
Posts: 10656
Joined: Tue Feb 24, 2009 2:13 pm
Location: Barcelona.
Contact:

Re: [GAME]: PYP - ProYect Pinball [Proyecto/Pausado]

Post by erkosone »

incluso si montas las paredes a base de bolas ya lo tienes todo hecho con mi ejemplo.
User avatar
SimulatorOne
Posts: 6626
Joined: Tue Nov 17, 2009 2:52 pm
Location: Barcelona
Contact:

Re: [GAME]: PYP - ProYect Pinball [Proyecto/Pausado]

Post by SimulatorOne »

a bolas!??? :? xDDD suena a chiste, las bolas son esfericas no rectangulares.... u_u

aun asi, hacer paredes con esferas(bolas) aun asi no le encuentro la logica ninguna.

Pero que una Bola choque contra un Bumper tipico pinball, vale eso se hace solo con GET_DIST y GET_ANGLE y ale xDD
pero yo ya tengo las versiones de FGET_DIST y FGET_ANGLE en modo FLOATS de alta precision.
Eso es facil programar un Bumper.

o una pared esferica(y sin mapa de colores) la programacion es muy similar a un Bumper.

Os invito a probar YA el test:
lo he publicado aqui:
viewtopic.php?p=50475#p50475

pero es para resolver un problema de compilacion en la nueva beta 6.7
en la 6.5.2 funciona bien si se compila.
PYP - test.rar (133.39 KiB)

Aver si Cictec corrige un problema con el compilador u_u que me impide ejeuctar este test.
User avatar
erkosone
Posts: 10656
Joined: Tue Feb 24, 2009 2:13 pm
Location: Barcelona.
Contact:

Re: [GAME]: PYP - ProYect Pinball [Proyecto/Pausado]

Post by erkosone »

Hola Simulatorone, como llevas este proyecto? Lo estás continuando?
User avatar
SimulatorOne
Posts: 6626
Joined: Tue Nov 17, 2009 2:52 pm
Location: Barcelona
Contact:

Re: [GAME]: PYP - ProYect Pinball [Proyecto/Pausado]

Post by SimulatorOne »

si algo he echo, la fisica la considero CASI perfecta.... tiene algunos bugs en puntos concretos de colisión que no se como solucionarlo.
pero funciona bien en un 85%

he testeado hasta con 50 bolas a la vez, y tira muy bien xDD

puedo subir el test actual que tengo echo...

lo que pasa es que aveces pienso que me estoy esforzandome en programar las fisicas si en un futuro abra el modulo de chipmunk o Box2D.... no se si me entiendes...
User avatar
SimulatorOne
Posts: 6626
Joined: Tue Nov 17, 2009 2:52 pm
Location: Barcelona
Contact:

Re: [GAME]: PYP - ProYect Pinball [Proyecto/Pausado]

Post by SimulatorOne »

Dejo el Test, para que me digais que os parece.
controles:
-Enter: sacamos una bola + (no hay limite)
-Espacio: Cambiamos de tablero test (hay 6 tableros, 3 fijos y 3 random)
-Cursores: mover las bolas (es de prueba y test)
-Control: Paralizar y sostener las bolas (es de prueba y test)
-Tecla D : es para mostrar y ocultar el mapa de durezas de paredes.

se que existen como 3 bugs, y alguno muy importante.
-Bug 1: pocas veces...(es el peor Bug)
se queda bloqueada la bola, en la punta/esquina superior de una paredes diagonales. (deberia rebotar y no engancharse)

-Bug 2: casi siempre...
solo en las paredes de 67º las muy casi verticales al 90º, la bola no resbala con suavidad y algunas veces no rebota, si no que se desliza de una manera muy extraña, como si hubiera pegamento. se desplaza por error sin suavidad ninguna, como forzado.

-Bug 3: en espacios muy pequeños(menos de 6 pixeles), entre 2 paredes y suelo llano 0º.
La bola se rebota entre las 2 paredes... y nunca llega a frenarse del todo.


Con este metodo de fisicas que he programado, se ha solucionado este problema:
Image
Ahora la bola respeta el diametro entre paredes y juntas solidas.
Funciona muy bien :) y en todas direciones.
You do not have the required permissions to view the files attached to this post.
User avatar
kozka
Posts: 2111
Joined: Sun Feb 01, 2009 9:36 pm

Re: [GAME]: PYP - ProYect Pinball [Proyecto/Pausado]

Post by kozka »

joder que pasada yo no he visto error casi, alguna chorrada pero vamos te a quedao nikelao XD no como el mio que fff
Post Reply

Return to “Proyectos WIP”