¿Que tan buenas son las colisiones de GameMaker?

Consulte acerca de programas, técnicas, algoritmos etc.

¿Que tan buenas son las colisiones de GameMaker?

Notapor hugoruscitti » Vie Sep 17, 2010 2:01 pm

Buenas, quería preguntarles a quienes conocen GameMaker
sobre el sistema de colisiones. He buscado información del
tema pero solo dí con el wiki de GameMaker y no logré una
visión general del sistema de colisiones.

Han comentado en otro mensaje del foro que el sistema
de colisiones de GameMaker está bueno, ¿pero cómo es?. Me
gustaría conocer un poco del tema para implementar algo
a la altura pero dentro de pilas.

Gracias.
Avatar de Usuario
hugoruscitti
Site Admin
 
Mensajes: 1242
Registrado: Dom Jul 30, 2006 3:57 am
Ubicación: Buenos Aires, Argentina

Re: ¿Que tan buenas son las colisiones de GameMaker?

Notapor Juanxo » Vie Sep 17, 2010 3:46 pm

no conozco el tema del GameMaker, pero carlostex y yo estuvimos discutiendo de esto hace un tiempo e incluso llegamos a plantear un algoritmo (solo teórico) para calcular automaticamente una serie de puntos dentro de una imagen y utilizar un vector de puntos para las colisiones
Avatar de Usuario
Juanxo
 
Mensajes: 437
Registrado: Sab Ene 31, 2009 2:34 am
Ubicación: Madrid(España)

Re: ¿Que tan buenas son las colisiones de GameMaker?

Notapor carlostex » Vie Sep 17, 2010 4:10 pm

Si, mi idea, es asociar un vector de puntos a cada entidad, esos puntos estan con respecto a la pocision inicial del cuadro de la imagen, estos puntos se mueven con la imagen y rotan, esto lo logre con tranformaciones de matrizes, ya lo probe y me da mucha esactitud con pocos puntos, pero esto requiere que a cada imagen de alguna forma se le especifiquen sus puntos, yo lo hice a mano dentro del codigo. Pero para no tener que poner los puntos a mano pense en la forma que el juego creara esos puntos, esto se puede hacer con algoritmo de reconocimiento de bordes, y de hecho tengo un algoritmo que nos podria servir, pero lo que no logramos solucionar es como elegir solo unos cuantos puntos. y de hecho solo en los que hay cambio de direccion.
Pero si se que existe tal algoritmo, lo bueno es que estoy llevando la materia de vision computacional y ya estare estudiando como se hace.
El conocimiento de unos es conocimiento de todos.
Avatar de Usuario
carlostex
 
Mensajes: 249
Registrado: Mar Jul 14, 2009 4:13 am
Ubicación: mexico

Re: ¿Que tan buenas son las colisiones de GameMaker?

Notapor hugoruscitti » Vie Sep 17, 2010 5:09 pm

m... no me expliqué bien... no me refiero a "cómo hacer las colisiones" sino "cómo se
usan", "cual es la interfaz"...

Me gustaría ver código de cómo las usan los programadores y hacer algo
similar en pilas. Estoy pensando en un manual de cómo usarlas, la implementación
la puedo ajustar a eso...
Avatar de Usuario
hugoruscitti
Site Admin
 
Mensajes: 1242
Registrado: Dom Jul 30, 2006 3:57 am
Ubicación: Buenos Aires, Argentina

Re: ¿Que tan buenas son las colisiones de GameMaker?

Notapor Geo » Sab Sep 18, 2010 3:14 am

En GameMaker, las colisiones se manejan como eventos, que se producen entre objetos. Cuando un pixel de un objeto coincide en posición con un pixel de otro, se produce un evento de colisión entre estos objetos. El usuario debe programar lo que el objeto hará en respuesta a este evento, recibiendo como parámetro el objeto con el cual colisionó.

Los eventos se definen en el editor gráfico, al editar un objeto, se agrega un evento indicando el tipo, en este caso sería colisión, se indica el objeto con el que al colisionar se disparará el evento, y entonces se agregan las acciones (bloques arrastrables o código) a ejecutar.

Para las colisiones, se detectan en base a los sprites asociados a los objetos, todos los sprites tienen una máscara de colisión, la forma o tipo de máscara depende de algunas opciones:

  • Precise collision checking (por defecto), la máscara corresponde con toda la imagen (los pixeles no transparentes).
  • Bounding box, la máscara es una caja de colisión de diferentes formas regulares (rectángulo, disco, rombo) o una que se introduzca de manera manual (se dibuja sobre el editor de sprites).

También, al editar los objetos, se puede indicar si se desea usar un sprite diferente al asignado para dibujar como máscara para colisión.

Básicamente es así, si alguien está más fresco con GM que lo rectifique :).
La imaginación es el límite.
Visita mi blog en inglés o en español.
Geo
 
Mensajes: 244
Registrado: Jue Ago 10, 2006 3:51 am
Ubicación: México

Re: ¿Que tan buenas son las colisiones de GameMaker?

Notapor hugoruscitti » Sab Sep 18, 2010 3:29 am

Geo escribió:Básicamente es así, si alguien está más fresco con GM que lo rectifique :).


Muchas gracias Geo, me viene super bien tu explicación, gracias.
Avatar de Usuario
hugoruscitti
Site Admin
 
Mensajes: 1242
Registrado: Dom Jul 30, 2006 3:57 am
Ubicación: Buenos Aires, Argentina

Re: ¿Que tan buenas son las colisiones de GameMaker?

Notapor carlostex » Sab Sep 18, 2010 5:15 am

Se puede asociar un evento de colicion entre dos objetos, por que en pilas hasta ahora no tiene modo grafico, pero con una linea de codigo se puede especificar que accion lanzar al colicionar dos entidades, lo de la mascara es lo mismo que yo uso, solo que yo lo tengo hecho para que se especifiquen los puntos, pues usar una mascara de la forma de la imagen es muy ineficiente, y preciso. Sin embargo es buena la idea de crear un editor de mascaras para los sprites, entonces ya tenemos solucionado el problema de como poner los puntos en pilascpp
El conocimiento de unos es conocimiento de todos.
Avatar de Usuario
carlostex
 
Mensajes: 249
Registrado: Mar Jul 14, 2009 4:13 am
Ubicación: mexico

Re: ¿Que tan buenas son las colisiones de GameMaker?

Notapor yasser_001200 » Mar Nov 30, 2010 9:07 pm

Yo lo sé ya que he usado game maker. Su deteccion de colisionbes es casi perfecta. POdríuas crear una imagen png con 5 personajes(los cinco en la misma imagen) y el game maker solo detecta la colision si tu sprite choca con uno de los personajes. O sea, gamemaker solo detecta colisiones en areas dibujadas y no en los espacios no dibujados.

UNa mejor explicacion: Una vez hice un plataformas "single-screen" en el que mi personaje quedo enganchado por la barbilla. Sí, las detecciones de colisiones en GameMaker son simplemente geniales (y me disculpan todos) pero son superiores a las del pygame (y me disculpan otra vez, yo tambien soy un asiduo programador de pygame)
Vienbeni2 a mi mundo....WAJAJAJAJAJA
yasser_001200
 
Mensajes: 46
Registrado: Lun May 19, 2008 3:28 pm


Volver a General

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 1 invitado

cron