Hola a todos:
Mi pregunta va dirijida a todos vosotros:
Como calculais el Frustum Culling ( la piramide de vision, no como se hace el culling ).
Conozco dos formas:
Utilizando trigonometria para sacar los planos a partir del Vector Direccion de la camara, y el otro es sacando las matrices MODELVIEW y PROJECTION para luego multiplicarlas y sacar los planos de corte a partir de la matriz resultante.
Quería saber que metodo es el más rapido.
Muchas gracias a todos.
Un saludo!!
< MChiz >
Quizas te toque la moral ... pero me puedes indicar la web donde hable de los dos metodos que comentas??
Gracias.
Yo utilizo el primer método. Sin embargo la velocidad no radica aquí, puesto que esto sólo lo haces una vez cada fotograma. Donde tienes que optimizar es al comparar los planos del frustum con los Bounding Box de los objetos. Pero es muy sencillo:sólo tienes que saber si un punto está a un lado a otro del plano, y esto es trivial! Pero si necesitas código...¡sólo dilo!
Hola _Grey:
La WEB donde utilizan el metodo de las matrices lo he encontrado aqui:
http://www.gametutorials.com/Tutorials/Ope...SpacePartioningEn la web de Lord Trancos tambien lo puedes ver.
Sobre el otro metodo no he encontrado nada, me lo explico mi profesor
Hola Dracula:
Asi que da igual un metodo u otro? No es uno mejor que otro?
Sobre lo de las BBox, ya conocia el truquillo, muchas gracias :sonriendo: Y la verdad es que si me pudieses pasar codigo para ver como calculas el frustum, me harias un gran favor!
Un saludo y gracias a los dos!
< MChiz >
Hmmmm, yo no lo hago cada fotograma... solo cuando se modifica la posicion de la cámara.
Salu2.
Estaba buscando alguna rutina para comprobar colisiones entre un AABB y una línea (un segmento) y me he encontrado con un ejemplo sobre el frustum culling que creo que usa el primer metodo que comentas:
http://www.cs.unc.edu/~hoff/research/vfcul...xvfc/boxvfc.cpphttp://www.cs.unc.edu/~hoff/research/vfcul...vfc/boxvfc.htmlPD: Si alguien tiene alguna rutina rapida para lo que busco que me lo diga, plz! :ojo:
SaludoteZ!
_________________
SaludoteZ de Lord Trancos!
www.dxlab.tk - programación de DirectX con Delphi.[ Este Mensaje fue editado por: Lord Trancos el 2002-05-31 11:28 ]
Gracias a todos por la info, pero, sabeis cual es el metodo mas rapido?
Gracias!
< MChiz >
Generar los planos a partir de la matriz es bastante mas rapido.
Muchas gracias por todo!!!
< MChiz >
hola, esta misma pregunta( exactamente la misma) la hice yo hace un tiempo ( 1 o 2 meses) y ni dios contesto... en fin, por q el metodo de calcular todos esos productos es mas rapido? hay alguna explicacion un poco mas tecnica ?(matematica en este caso). Por otro lado la tecnica en la q tienes los vectores de la camara es solo calcular una tangente y cuatro planos..
saludos
[ Este Mensaje fue editado por: ethernet el 2002-06-01 15:53 ]
Hola Ethernet:
Parece que nadie contesta...
La verdad es que no se porque se supone que es mas rapido, por algo pregunte.
Nadie del foro lo sabe?
< MChiz >
Creo q es pq un método usa calculos con angulos (cosa q dicen q es bastante lenta), mientras que el otro no.
Pero no me hagais mucho caso....
probare lo efectivo que es desde el punto de vista de operacones por segundo, no desde el punto de vista de optimizacion para la tarjeta grafica. Matlab tiene la respuesta. A ver si mac^3pixel responde...