Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Menu

Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menu

Mensajes - DVM

#1
General Programadores / Problemas geometricos
01 de Enero de 1970, 01:00:00 AM
                                Hola de nuevo!
Malandrin, ese es el metodo q mas o menos intuia, y creo que ya se un metodo para conocer si un punto está dentro de un cuadrilatero. Tambien imaginaba, que los cuadrilateros (o regiones) estarían almacenados de alguna forma para poder aplicar un pathfind a nivel de cuadrilatero. Un problema al que no encuentro una solucion muy adecuada es, controlar los puntos de paso de un cuadrilatero a otro. He pensado en definir yo mismo esos puntos de paso, pero lo ideal sería conocer la región de corte de un cuadrilatero con otro, o algo parecido ¿Sabes algo de esto?
                               
#2
General Programadores / Problemas geometricos
01 de Enero de 1970, 01:00:00 AM
                                Hola a todos de nuevo.
¿Nadie puede echarme una mano?, no necesito codigo, ni nada de eso, solo un poco de orientacion. Por favor, si sabeis algo relacionado con la duda, o teneis alguna idea os agradeceria muchisimo que me contestarais.                                
#3
General Programadores / Problemas geometricos
01 de Enero de 1970, 01:00:00 AM
                                Hola a todos!!

He estado informandome sobre pathfinding, y en la mayoria de los documentos, se utiliza el metodo de un bitmap con dos colores (pisable, no pisable). Pero observando algunos juegos (sobre todo aventuras graficas), he visto que utilizan cuadrilateros. La forma en que los utilizan es la siguiente, definen los cuadrilateros por sus cuatro puntos y todo lo que este en los cuadrilateros es pisable. Por ejemplo:

(0,0)---------------Pantalla-----------------------
|                 a4
|                /
|              //
|            / /     b4
|       b4|/--/-------/c4
|        /|  /       /    
|      /  | /       /     /c3
| a1 /    |/   B   /  C  /
|  /   A  /b1    /c1  /
|  _____/      /    /
|  a2   a3     /    /c2
|             /b2

He dibujado 3 cuadrilateros A (a1,a2,a3,a4), B (b1,b2,b3,b4), C (c1,c2,c3,c4) (espero que se vean bien). Bien, pues los puntos pisables, son aquellos que están dentro de cualquier cuadrilatero. Aqui es donde me surgen las dudas:

- Si yo selecciono un punto de la pantalla de coordenadas (x,y) con el raton, ¿como puedo saber si ese punto esta en un cuadrilatero o no?. Si fueran rectangulos, o cuadrados, es muy sencillo, pero con cuadrilateros, no consigo solucionar el problema.

- Si un un punto (x,y) no esta dentro de un cuadrilatero, ¿como se localiza el cuadrilatero mas cercano?.

- En cuanto a aplicar el pathfinding, cuando utilizas un bitmap bicolor, ya tienes todos los puntos para realizar el pathfindig, pero con cuadrilateros, ¿Tendrias que comprobar si cada punto esta o no en uno de los cuadrilateros?. Si esto fuera asi, el costo del pathfinding sería muy alto, a no ser que la funcion para comprobar si un punto esta en un cuadrilatero fuera de costo minimo.

Existe otro sistema similar, pero en vez de utilizar cuadrilateros, utiliza triangulos. Y me surgen las mismas dudas.

Espero que podais ayudarme. Y muchas gracias de antemano.

[ Este Mensaje fue editado por: DVM el 2002-08-29 19:20 ]

[ Este Mensaje fue editado por: DVM el 2002-08-29 19:21 ]                                





Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.