Foros - Stratos

Stratos => Principiantes => Mensaje iniciado por: warwolf en 23 de Octubre de 2006, 09:56:39 AM

Título: [Ichi] Documentos
Publicado por: warwolf en 23 de Octubre de 2006, 09:56:39 AM
Bueno, pues aquí espero vuestras opiniones sobre los documentos que hemos diseñado. ¿Os parce correcto el plan de trabajo o añadiriais/quitariais cosas?¿Y el diseño, os gustan las ideas?

Ya he comentado que casi tenemos la versión 0.1 pero me gustaría pulir algunos algoritmos, de todas formas ¿quereis que suba el código o los binarios?

Enga pues, opiniones opiniones :roll:
Título: [Ichi] Documentos
Publicado por: warwolf en 23 de Octubre de 2006, 12:41:42 PM
Mmmm tengo una pregunta, ¿qué es más costoso?:

- ir por todas las tiles, mirar cuales son pared y comprobar si hay colisión.
(es decir, se comprueba la colisión del jugador con todas las tiles tipo pared)

o

- calcular las tiles vecinas del jugador, mirar cuales son pared y comprobar si hay colisión.
(es decir, sólo se comprueba la colisión del jugador con las tiles vecinas de tipo pared)

Resumiendo, que en una es un "for" para todo el mapa y en la otra se hace la lógica para mirar cuales son las tiles vecinas en el mapa.
Título: [Ichi] Documentos
Publicado por: Harko en 23 de Octubre de 2006, 12:47:24 PM
Tambien podriais tener una tabla en la que estuvieran los tiles por los que puede pasar y por los que no.

Seguramente valdria la tabla en la que decis que tiles van en cada sitio, solo habria que comprobar cuales son del tipo pared y decirle que ahi no puede entrar.

Harko.
Título: [Ichi] Documentos
Publicado por: warwolf en 23 de Octubre de 2006, 12:54:20 PM
Mmmm lo que expones es básicamente lo que hago pero dicho de otra manera :P
En tu ejemplo la pregunta sería
¿compruebo si el jugador  puede pasar por una casilla mirando TODA la lista de casillas posible?
o
¿creo la lógica para mirar las casillas cercanas y miro si por dichas casillas se puede pasar?

Vamos, lo de antes, una es un "for" y la otra solo mira X casillas (pero hay que hacer la lógica para calcular la posición de estas X casillas)
Título: [Ichi] Documentos
Publicado por: comekikos en 23 de Octubre de 2006, 01:03:14 PM
yo pienso que las unicas casillas que nos interesan son las cuatro colindantes (arriba, abajo, izquierda, derecha) en el caso de que los movimientos sean unicamente verticales /horizontales. Esto es fácl de expresar en un algoritmo como:

Izquierda (X-1,Y)
Derecha (X+1,Y)
Arriba (X,Y-1)
Abajo (X,Y+1)

donde X e Y son las coordenadas de la posicion del personaje
Título: [Ichi] Documentos
Publicado por: bnl en 23 de Octubre de 2006, 01:17:05 PM
Yo miraria solo las colindantes, no tiene sentido mirar el resto si hay posibilidades de q exista colision.
Título: [Ichi] Documentos
Publicado por: warwolf en 23 de Octubre de 2006, 01:24:18 PM
Bueno, creo que finalmente cogeremos la segunda opción (mirar sólo las colindantes).
He realizado algunos tests de rendimiento con un bucle de 1000 veces, realizando la primera opción y la seguna, obtengo resultados del tipo:
Tiempo for: 0.007000
Tiempo cercanas: 0.000000
Podría hacer que el bucle hiciera más iteraciones, pero ya se ve a simple vista que es más óptimo ;)