Acerca de objetos 3D texturizados en ArcGlobe
Los objetos 3D texturizados son entidades que poseen tanto geometría como datos de imagen 3D en cada cara mostrada. Entre los ejemplos de objetos 3D texturizados se incluyen edificios, aviones, mobiliario urbano y vehículos. Por lo general, se utilizan para agregar foto realismo a una vista 3D. En ArcGIS, los objetos 3D texturizados se almacenan como entidades multiparche.
Uno de los inconvenientes más comunes a la hora de utilizar entidades multiparche texturizadas en ArcGlobe es que la navegación 3D se puede ver ralentizada. El problema puede agravarse cuando una clase de entidad multiparche incorpora multitud de entidades texturizadas o los tamaños de la textura son demasiado grandes (por ejemplo: mayor a 1.024 píxeles en una cara).
Con el fin de evitar este problema, las entidades multiparche texturizadas ajustan su resolución de textura de imagen automáticamente en función de la distancia a la que se encuentran con respecto a la posición de la cámara de la vista actual. Cada entidad calcula de forma individual la distancia 3D con respecto a la cámara, y, por tanto, los objetos cercanos muestran sus texturas con una resolución mayor que los más lejanos, incluso dentro de la misma capa y clase de entidad.
Existen dos métodos adicionales que se utilizan para bajar más el coste del uso de los objetos 3D texturizados en ArcGlobe. El primero de ellos es sacar el mayor provecho posible a la tarjeta gráfica para comprimir las texturas de las que ella se encarga. El segundo método es reducir la resolución de las texturas utilizadas en las entidades multiparche. Ambas soluciones limitan la calidad máxima de las texturas mostradas en la capa multiparche, lo que reduce el uso de memoria y mejora el rendimiento de navegación.
Consulte Simbolizar multiparches para obtener más información acerca de establecer las propiedades de visualización de las capas multiparche texturizadas.
Texturas y memoria
Para presentar texturas en pantalla se utiliza tanto la memoria principal (RAM) como la memoria de textura de la tarjeta gráfica. Las texturas se cargan primero en la memoria principal y se envían posteriormente a la tarjeta gráfica para presentarlas en pantalla. Cuando se agote la memoria de textura de la tarjeta gráfica, el sistema operativo comenzará a ubicarlas en el disco duro, lo que provocará un descenso considerable del rendimiento. Esto significa que el uso de memoria reducido en la memoria de textura tanto de la RAM como de la tarjeta gráfica mejora el rendimiento de la aplicación y permite la carga de datasets mayores.
Compresión de textura por hardware
La compresión de textura por hardware optimiza la compatibilidad nativa de las texturas comprimidas en tarjetas gráficas 3D para mejorar el rendimiento de la representación en pantalla de objetos 3D texturizados.
Desde ArcGIS 9, las texturas de los materiales se conservan en el disco duro en formato de compresión JPEG. Durante la carga, se descomprimen las texturas comprimidas en JPEG y se envían a la tarjeta gráfica para su representación en pantalla, consumiendo así la memoria de textura de la tarjeta gráfica. Sin embargo, las tarjetas gráficas no son compatibles originalmente con el formato JPEG, y se produce una sobrecarga de rendimiento cuando se descomprimen las texturas. Además, las texturas descomprimidas pueden ser muchísimo más grandes en la memoria que sus respectivas versiones comprimidas en JPEG del disco duro.
Las tarjetas gráficas son compatibles con un conjunto específico de formatos de compresión de textura. Dichos formatos se encuentran actualmente expuestos por medio de las extensiones OpenGL. Las extensiones se normalizan tras un periodo de tiempo y las extensiones de compresión de textura pronto formarán parte del OpenGL estándar. Las texturas que se comprimen en formatos compatibles pueden enviarse directamente a la tarjeta gráfica.
En ArcGIS 9.2, ArcGlobe puede utilizar el formato DXT compatible con OpenGL para comprimir y conservar las texturas en lugar de la compresión JPEG. Con esto se elimina la sobrecarga de descompresión y los tamaños inflados tanto en la memoria RAM como en la memoria de textura. Cabe mencionar que tanto JPEG como DXT son formatos de compresión con pérdida de información, por lo que se producirá un cierto deterioro de la calidad de la imagen cuando se haga uso de texturas comprimidas. Mientras que el tamaño de textura comprimida en JPEG depende de la configuración de calidad, DXT posee una tasa de compresión fija (1:6 para RGB y 1:4 para RGBA).
La compresión de textura por hardware puede habilitarse a nivel de capa en ArcGlobe.
Reducir la resolución de textura
Puede reducir el volumen de los píxeles de textura (téxeles) que se envían a la tarjeta gráfica disminuyendo la resolución de texturas. Por ejemplo, una textura con una resolución de 640 x 480 puede reducirse a 320 x 240, disminuyendo su tamaño en memoria por un factor de 4.
La reducción máxima que puede aplicarse a una textura, sin reducir demasiado la calidad de visualización, variará de una textura a otra. Por ejemplo, una textura de ventana repetitiva absorberá una mayor reducción en cuanto a resolución que una señal de parada.
La reducción de textura se aplica como una propiedad de capa y sólo se aplica a capas multiparche. La configuración de la reducción de textura de una capa disminuirá los requisitos en memoria para representarla en pantalla, liberándose así recursos para otras tareas como la navegación. De manera opcional, puede mantener la resolución de textura reducida cuando utilice la herramienta de geoprocesamiento De capa 3D a clase de entidad, con el fin de exportar la capa a una nueva clase de entidad. La función estándar Datos > Exportar Datos no incluye los ajustes de reducción de textura en la clase de entidad de salida.
La biblioteca GLU de OpenGL, que se encuentra disponible para todas las plataformas que admiten ArcGIS, se utiliza para reducir las texturas.
- También puede optar por deshabilitar completamente las texturas de la capa. La geometría seguirá mostrándose, y el uso de colores simples podrá utilizarse como simbología.