Para aclarar, cuando digo 'framebuffer predeterminado' me refiero al proporcionado por el sistema de ventanas y lo que termina en su monitor.Mezcla FBO en framebuffer predeterminado
Para mejorar mis velocidades de representación para una aplicación CAD, he logrado separar los elementos tridimensionales de los manipulados en Qt en 2D, y ahora cada uno de ellos se traduce en su propio FBO. Cuando llegue el momento de ponerlos en la pantalla, coloco el FBO 3D en el FB predeterminado, y luego quiero mezclar mi 2D FBO encima de él.
He llegado a la parte de corte fino, pero no veo cómo mezclar mi 2D FBO en ella? Ambos FBO son idénticos en tamaño y formato, y son los mismos que el FB predeterminado.
Estoy seguro de que es una operación simple, pero no puedo encontrar nada en la red, presumiblemente me falta el término correcto para lo que estoy tratando de hacer. Aunque estoy usando Qt, puedo usar comandos nativos de OpenGL sin problema.
Esto sólo parece terriblemente ineficiente sin embargo, tengo dos conjuntos de valores de píxeles (los tampones) de igual tamaño, en última instancia, todo lo que tiene que hacer es aplicar una operación matemática para combinar un elemento de uno de ellos para el elemento correspondiente del otro. ¿OpenGL realmente solo trata las FBO como texturas? – cmannett85
@ cbamber85 representar a la textura no sería tan ineficiente –
@ cbamber85: "¿OpenGL realmente solo trata las FBO como texturas?" Los FBO son solo contenedores para imágenes. Adjuntas imágenes a FBO, pero el FBO no es el propietario. Las imágenes provienen de otros objetos: texturas y renderbuffers. Y por muy "ineficiente" que parezca, renderizar una imagen encima de otra es extremadamente rápido. Ningún vértice se transforma. Nada más que el muestreo de textura en el sombreador de fragmentos. Además, la API no te ofrece otra forma de hacerlo, por lo que es lo más eficiente posible. –