Optimizando el render del cargador de archivos 3ds

Estaba tratando de recordar qué métodos había visto para optimizar el renderizado del modelo cargado desde el archivo 3ds (o el que sea). Creí interesante exponerlos aquí. Por supuesto, hay que tener en cuenta que los mismos son efectivos únicamente para meshes estáticos, si tienes un modelo animado no te serivrán de mucho. Algunos formatos como md2 incluyen una optimización que consiste en ordenar los vértices de forma que se pueda dibujar el modelo con triangle strips de una sola pasada (que alguien me corrija si me equivoco).
En primer lugar, puedes utilizar listas de Open GL. Una lista agrupa un conjunto de operaciones de dibujo, una vez que realizas esas operaciones pro primera vez y las guardas en la lista, sólo tienes que ordenar a Open GL que vuelva a ejecutar la lista. Es un método muy básico y debe funcionar en cualquier tarjeta de video.
Una variante más avanzada consisten en usar la extensión GL_EXT_compiled_vertex_array, estoprecompila y cachea los vértices para un renderizado más eficiente. Creo recordar que esta extensión no estaba disponible en mi antigua Nvidia Vanta Lt, pero sí en mi ATI Radeon 7000.
La tercera variante podría ser usar la extensión GL_ARB_vertex_buffer_object, que cachea datos en la memoria de video para un renderizado más rápido.

Tags: ,

Comentarios

  1. heyyy!!!! no hay manera de mandarteun mail o algo por el estilo???? con eso de que eres maestro en todo pues podrias sacare de algunas dudillas con respeto a la creacion de videojuegos, gracias

    ResponderEliminar

Publicar un comentario