Karoshi MSX Community
05 de Julio de 2021, 11:56:19 pm *
Bienvenido(a), Visitante. Por favor, ingresa o regístrate.

Ingresar con nombre de usuario, contraseña y duración de la sesión
Noticias:
 
   Inicio   Ayuda Buscar Ingresar Registrarse  
Páginas: 1 [2]
  Imprimir  
Autor Tema: Colisión píxel a píxel  (Leído 9913 veces)
0 Usuarios y 1 Visitante están viendo este tema.
Jon_Cortazar
Administrator
Karoshi Forum's God
********
Mensajes: 2777



WWW Email
« Respuesta #15 : 08 de Abril de 2007, 09:17:34 pm »

El objetivo es para un juego filmation, como el Head over Heels. Todo me va bien pero quiero que en todo el escenario haya detección píxel a píxel y no a base de caracteres, porque los escenarios tienen inclinación de 30º y con una detección a base de caracteres se notan mucho los "cubiletes" cuando el personaje choca con algo.

A ver, que así la cosa cambia...  Wink

¡Pues no compruebes las colisiones con la pantalla!  Cheesy

¡Lo que tienes que hace es tener en memoria el mapa de la pantalla activa, pero en 2D, e ir haciendo las comprobaciones sobre ella, en lugar de sobre la representación gráfica en isométrica!. De esta forma compruebas simplemente leyendo la casilla correspondiente, con el correspondiente ahorro de memoria. Y si el problema es que tienes varios niveles de alturas, pues te guardas en memoria una matriz de 3 dimensiones con los datos de las tiles dentro de ese espacio y punto.
En línea

Jon Cortázar Abraido (aka El Viejo Archivero)
RELEVO Videogames
[Dioniso: La cafeína está haciendo su trabajo; yo espero hacer el mío.]
[pitpan: Me sigue pareciendo más productivo jugar al SNAIL MAZE que seguir esta discusión.]
Darth_Fistro
Karoshi Hero
*****
Mensajes: 507


Email
« Respuesta #16 : 08 de Abril de 2007, 10:25:54 pm »

Joder, ¡eres el rey del brainstorming!  Shocked ¡Ni se me había ocurrido!
¿Puedo contratarte como asesor técnico?  Cheesy
En línea

MSX FOREVER (hasta que saquen un ZX81 con TMS, PSG y 64K de RAM)
Darth_Fistro
Karoshi Hero
*****
Mensajes: 507


Email
« Respuesta #17 : 08 de Abril de 2007, 10:27:27 pm »

Entonces se reduce a pasar la pantalla a un buffer donde se representa en 2D, y realizar allí las comprobaciones como si de choque con caracteres se tratase. ¡Ingenioso al máximo!  Kiss
No hay alturas, así que no problem. ¡Gracias!
En línea

MSX FOREVER (hasta que saquen un ZX81 con TMS, PSG y 64K de RAM)
Darth_Fistro
Karoshi Hero
*****
Mensajes: 507


Email
« Respuesta #18 : 08 de Abril de 2007, 10:29:06 pm »

De todas formas, quiero resolver el problema de las colisiones porque me sirve para otro juego  Wink
En línea

MSX FOREVER (hasta que saquen un ZX81 con TMS, PSG y 64K de RAM)
Jon_Cortazar
Administrator
Karoshi Forum's God
********
Mensajes: 2777



WWW Email
« Respuesta #19 : 08 de Abril de 2007, 11:38:18 pm »

Entonces se reduce a pasar la pantalla a un buffer donde se representa en 2D, y realizar allí las comprobaciones como si de choque con caracteres se tratase. ¡Ingenioso al máximo!  Kiss No hay alturas, así que no problem. ¡Gracias!

Exacto, esa es la idea. De hecho, es como suele hacerse para que la cosa sea más fácil. De cualquier forma Juanma, me estás dando un miedo que no te puedes ni imaginar Grin, ¿para cuando empiezas a desvelar cosillas, pirata? Kiss. De cualquier forma, ¡que bueno es tenerte de vuelta!  Cheesy Cheesy
En línea

Jon Cortázar Abraido (aka El Viejo Archivero)
RELEVO Videogames
[Dioniso: La cafeína está haciendo su trabajo; yo espero hacer el mío.]
[pitpan: Me sigue pareciendo más productivo jugar al SNAIL MAZE que seguir esta discusión.]
Darth_Fistro
Karoshi Hero
*****
Mensajes: 507


Email
« Respuesta #20 : 09 de Abril de 2007, 09:06:38 am »

Jejejeje, yo sí que me alegro de estar con vosotros  Cheesy He estado diseñando sobre papel cuántos bytes gastaría por pantalla y es factible. Gracias, Jon, por la idea, porque has hecho que el proyecto se haga realidad, en serio. Es que me había quedado atascado en ese punto y ya no sabía cómo meterle mano. Plantearé todo el juego como si de un juego de laberintos se tratase, sobre un buffer en 2D (colisiones con los malos, obstáculos, etc) y sólo usaré el buffer en isométrico para volcar en la pantalla. ¡Es genial ese enfoque! Me ha devuelto la ilusión, jejeje.

Bueno, sobre los proyectos te diré que me lo estoy tomando con calma, en el sentido de que no le pongo fecha tope a ninguno, para no agobiarme. Y básicamente no hago juegos (me explico). Intento hacer rutinas nuevas que siempre me han llamado la atención y una vez hechas veo si es posible sacar algo de ahí. Tengo proyectos con scoll píxel a píxel, en parallax, laberínticos, filmation 1 y 2, jejeje. Pero he de centrarme en terminar lo que tengo ahora atrasado.

Eso sí, contad que el primer juego que se apuntará a la dev será el Goonies:The movie Wink (mapeando ya la tercera fase, jejejee...)
En línea

MSX FOREVER (hasta que saquen un ZX81 con TMS, PSG y 64K de RAM)
jltursan
Karoshi Forum's Guru
*******
Mensajes: 1516


¿Que es lo que has aprendido hoy?


WWW Email
« Respuesta #21 : 09 de Abril de 2007, 09:13:39 am »

Citar
Tengo proyectos con scoll píxel a píxel, en parallax, laberínticos, filmation 1 y 2

¡Caray!, que se dice pronto... Smiley
En línea

Doom dee doom dee doom
Dioniso
Visitante
« Respuesta #22 : 09 de Abril de 2007, 09:15:51 am »

Pues por si te sirve de algo ... puedes ganar algo de velocidad si en la matriz que tengas en RAM para comprobaciones redefines, por ejemplo, los caracteres que sabes que no van a provocar colisión (diferentes tiles del suelo, por ejemplo) al final del banco (de 256 caracteres); imagínate que utilizas los caracteres desde 230 en adelante sólo para el suelo (no paredes) que no va a provocar colisión. De forma que antes de meterte en todo el pastelón de comprobar la detección de píxel lees en RAM si el caracter es igual o mayor a 230 ... y en caso afirmativo pasas de todo y a otra cosa, mariposa  Grin

Claro, que si los enemigos también son caracteres y se van a mover por toda la pantalla ...  Undecided
En línea
Darth_Fistro
Karoshi Hero
*****
Mensajes: 507


Email
« Respuesta #23 : 09 de Abril de 2007, 09:29:17 am »

Muchas gracias, Dioniso, ya tenía pensado hacerlo así  Smiley De todas formas, aunque no la use para ese juego, quiero una rutina de colisión píxel a píxel que me servirá para otro.

WYZ, I need you!  Kiss Grin
En línea

MSX FOREVER (hasta que saquen un ZX81 con TMS, PSG y 64K de RAM)
Darth_Fistro
Karoshi Hero
*****
Mensajes: 507


Email
« Respuesta #24 : 10 de Abril de 2007, 12:20:37 pm »

Bueno,pues implementado el sistema "Joniano"  Wink y la cosa va como la seda. He hecho dos versiones: un "minifilmation" usando dos tercios de la pantalla con muñecos de 16x24, todo en plan pequeñito, y uno más corriente con muñecos de 24x32 (como el Batman) a pantalla completa. Creo que seguiré con los dos enfoques (cada uno tiene su pequeño intríngulis con respecto a la pantalla, ya os contaré) así que perdonadme si ven la luz dos juegos con motores cuasi-iguales, jejejeje  Cheesy
En línea

MSX FOREVER (hasta que saquen un ZX81 con TMS, PSG y 64K de RAM)
MsxKun
Karoshi Forum's Guru
*******
Mensajes: 1554


Kimochi-ii


WWW Email
« Respuesta #25 : 11 de Abril de 2007, 12:38:21 pm »

Bueno,pues implementado el sistema "Joniano"  Wink y la cosa va como la seda. He hecho dos versiones: un "minifilmation" usando dos tercios de la pantalla con muñecos de 16x24, todo en plan pequeñito, y uno más corriente con muñecos de 24x32 (como el Batman) a pantalla completa. Creo que seguiré con los dos enfoques (cada uno tiene su pequeño intríngulis con respecto a la pantalla, ya os contaré) así que perdonadme si ven la luz dos juegos con motores cuasi-iguales, jejejeje  Cheesy

Exacto! Te perdonamos si salen dos juegos!!! Si no salen no! Cheesy
Por cierto, al minifilmation ese podriamos llamarlo tecnica Fistration Smiley
En línea

--

Cindy Lauper She Bops!
Darth_Fistro
Karoshi Hero
*****
Mensajes: 507


Email
« Respuesta #26 : 11 de Abril de 2007, 01:10:12 pm »

Jajaja  Cheesy Seguro que uso una técnica con personalidad propia: más lenta, más derroche de memoria y lo más enrevesado posible. Así que sí, creo que sería un buen nombre  Wink

En línea

MSX FOREVER (hasta que saquen un ZX81 con TMS, PSG y 64K de RAM)
Páginas: 1 [2]
  Imprimir  
 
Ir a:  

Impulsado por MySQL Impulsado por PHP Powered by SMF 1.1.21 | SMF © 2013, Simple Machines XHTML 1.0 válido! CSS válido!