Diseño de un algoritmo para rendering eficiente de estructuras proteicas de gran escala

Thumbnail Image

Date

2014-11-19

Journal Title

Journal ISSN

Volume Title

Publisher

Pontificia Universidad Católica del Perú

Abstract

El software de gráficos por computadora en 3D de hoy en día nos da la capacidad de modelar y visualizar objetos en situaciones o tamaños que antes no habría sido posible, incluso nos dan la capacidad de que la visualización de estos objetos sea generada en tiempo real lo que otorga la posibilidad de crear aplicaciones que hagan uso de esta capacidad para agregar interactividad con los objetos modelados. Es muy importante la capacidad de poder dotar al usuario de una capacidad de interactividad con el gráfico generado, pero esto no se logra si es que el tiempo de respuesta de la aplicación es muy grande, por ejemplo una consola de videojuegos exigen como mínimo 30fps (cuadros por segundo) un valor menor ocasiona que los movimientos no fueran fluidos y se pierda la sensación de movimiento. Esto hace que la experiencia de usuario fluida sea una de las metas principales del rendering interactivo. Uno de los mayores problemas que se encuentran en esta área es el de visualizar gran cantidad de polígonos, debido a limitaciones de memoria o capacidad de procesamiento, mientras mayor sea la cantidad de polígonos que se desea dibujar en pantalla, mayor será el tiempo de procesamiento que será necesario para generar las imágenes. Una aplicación en particular es el de visualización de la estructura de proteínas. Existen proteínas que poseen una gran estructura, por la cantidad de polígonos que se requieren para representar todos los elementos y conexiones que poseen estas moléculas y adicionalmente la necesidad de visualizar grandes cantidades de moléculas simultáneamente, ocasiona que se disminuya el rendimiento y la interactividad al momento de la visualización. El presente proyecto plantea utilizar una estructura algorítmica para realizar rendering eficiente de gran cantidad de proteínas haciendo uso de un visualizador 3D, que muestre la estructura tridimensional de estas y permita la interacción en tiempo real con el modelo. La estructura propuesta en este proyecto hace uso de la aceleración por hardware presente en las tarjetas gráficas modernas a través de un API de generación de gráficos en tiempo real que es OpenGL con el cual se aplican optimizaciones que aprovechan la estructura planteada. Para que el proceso de renderizado sea más veloz, se mantiene un número bajo de polígonos en los modelos. Debido a que los elementos son repetitivos (esferas y cilindros) se reutiliza la geometría de estos elementos haciendo uso de una estructura como el Scene Graph de modo que el uso de memoria sea menor y de otra estructura como el Octree que permite discriminar los elementos que deben ser procesados durante el rendering. Combinando todo lo mencionado anteriormente, la estructura propuesta permite que se visualicen proteínas de gran estructura o gran cantidad de estas, manteniendo el grado necesario de interactividad para facilitar su estudio así como también manteniendo un aspecto estético que permita reconocer los elementos sin reducir el rendimiento.

Description

Keywords

Algoritmos, Gráficos por computadoras, Diseño gráfico, Programas para computadoras

Citation

Endorsement

Review

Supplemented By

Referenced By

Creative Commons license

Except where otherwised noted, this item's license is described as Atribución-NoComercial-SinDerivadas 2.5 Perú