¿Qué es un objetivo de renderizado?
En la programación de gráficos por computadora, un objetivo de representación es un área de la memoria de la computadora en la que se dibuja el siguiente cuadro que se mostrará. Usado con mayor frecuencia para aumentar la velocidad de representación, el objetivo de representación generalmente se encuentra en un área de memoria dedicada en la tarjeta gráfica cerca de la unidad de procesamiento de gráficos (GPU). Aunque el concepto es casi el mismo, existen algunas diferencias menores en las convenciones de implementación y nomenclatura relacionadas con un destino de representación; estos dependen del lenguaje de programación o biblioteca que se esté utilizando, y algunos lenguajes lo llaman un búfer de respaldo, un objeto framebuffer o un búfer doble. También es posible, especialmente en gráficos de computadora tridimensionales (3D), utilizar el objetivo de renderizado para dibujar texturas en los objetos para ayudar a optimizar la imagen de visualización final cuando se compila. En algunos casos, es posible tener múltiples objetivos de renderizado (MRT), con diferentes partes de un marco dibujadas en diferentes superficies y luego compuestas en el objetivo final.
La idea de un objetivo de renderizado es similar al proceso utilizado con doble búfer. Esencialmente, una imagen se dibuja en una superficie fuera de la pantalla, que es realmente un área de memoria, de modo que cuando llega el momento de dibujar el siguiente cuadro en un dispositivo de visualización o pantalla, se puede hacer lo más rápido posible porque todo de las funciones de dibujo ya se han realizado. La diferencia con un objetivo de render en muchas implementaciones es que el área de memoria utilizada puede estar en la tarjeta gráfica y administrarse a través del hardware u otros aspectos de la GPU, lo que la hace mucho más eficiente y más rápida que un diseño de doble búfer administrado por software.
En el caso de la programación de gráficos por computadora en 3D, se puede usar un objetivo de renderizado para optimizar el renderizado de objetos que usan imágenes para sus texturas de superficie. El contexto de renderizado está dentro del hardware de gráficos, por lo que esto puede permitir una rasterización muy rápida de objetos 3D. Los efectos especiales también se pueden dibujar de esta manera, haciendo que el montaje de la escena final en un búfer posterior sea muy rápido porque la mayor parte de la información gráfica se mueve solo una corta distancia en la tarjeta gráfica.
El hardware de gráficos, los controladores y las bibliotecas que se utilizan pueden marcar la diferencia en el funcionamiento de un objetivo de representación. Una restricción específica es con el uso de MRT, en el que la tarjeta gráfica determina cuántos objetivos se pueden usar simultáneamente. Algunas tarjetas tampoco tienen ningún soporte de hardware para los objetivos de renderizado, aunque generalmente se puede lograr una funcionalidad similar a través de medios alternativos.