Hola:
Tengo un mapa de niveles, el cual esta formado por triangulos, quiero poner unoc bichos que caminen sobre el terreno para que no floten o esten debajo del terreno.
Para ello ya hemos calculado sobre que triengulo esta parado el bicho, pero falta saber la altura esacta de ese punto.
Aqui hay un dibujo del problema.
(http://alumnos.cic.ipn.mx/maestria/eric/Terreno_Altura.png)
http://alumnos.cic.ipn.mx/maestria/eric/Te...reno_Altura.png¿Alguien ha hecho algo similar o sabe de alguna pagina?
De paso aprobecho para invitarlos al proyecto war3d,
http://war3d.sourceforge.net, buscamos modeladores, ya tenemos algunos bocetos de unidades de guerra, estamos en el canal #war3d IRC-Hispano
Saludos
Supongo que lo que necesitas es una rutina que calcule el punto de intersección entre una línea y un plano (el que forma el triángulo). Para ello puedes echarle un vistazo a esta page
http://www.acm.org/jgt/papers/MollerTrumbo...ore97/code.htmlAhí encontrarás una rutina que detecta si hay intersección o no, y si la hay, te devuelve la distancia desde el origen del rayo hasta el punto de intersección (lo devuelve en el parámetro t si no me equivoco), con lo cual ya podrás calcular el punto exacto de la intersección y por lo tanto, determinar la coordenada Y.
En tu caso, los parámetros de la función serían, el origen que sería el punto (X0, C, Z0), la dirección, que sería (0, -1, 0) y finalmente los 3 vértices que forman tu triángulo. Los otros 3 parámetros son valores que te devuelve la función. El que te interesa creo que es t, que como he dicho anteriormente es la distancia desde el origen del rayo hasta el punto de intersección, por lo que el punto de intersección lo calcularías de la forma:
Punto_Interseccion = (X0, C, Z0) + (0, -1, 0) * t
Espero no haberme colado :-?
Saludos
Mil gracias, ya esta hecho y funcionado, gracias a K-Ballo.
Si les interesa ver la solucion, el codigo esta en nuestro CVS, compilable para Linux y Windows.
http://cvs.sourceforge.net/cgi-bin/viewcvs...3d/War3DSource/Saludos.
De nuevo reitero nuestra invitacion a unirse al proyecto War3D.
Canal #war3d irc-hispano.