Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
O OpenGL armazena e manipula dados de pixel em um framebuffer. O framebuffer consiste em um conjunto de buffers lógicos: cor, profundidade, acúmulo e buffers de estêncil. O buffer de cores em si consiste em um conjunto de buffers lógicos; esse conjunto pode incluir um front-left, um front-right, um back-left, um back-right e alguns buffers auxiliares. Um formato de pixel específico ou implementação do OpenGL pode não fornecer todos esses buffers. Por exemplo, a versão atual da implementação do OpenGL da Microsoft no Windows não dá suporte a imagens estereoscópicas, portanto, um formato de pixel não pode ter buffers de cores à esquerda e à direita. Além disso, a versão atual não dá suporte a buffers auxiliares. Para obter mais informações sobre buffers OpenGL e as funções OpenGL que operam neles, consulte o manual de referência OpenGL e o guia de programação OpenGL.
A implementação do OpenGL na Microsoft no Windows dá suporte ao buffer duplo de imagens. Essa é uma técnica na qual um aplicativo desenha pixels para um buffer fora da tela e, quando essa imagem está pronta para exibição, copia o conteúdo do buffer fora da tela para um buffer na tela. O buffer duplo permite alterações suaves de imagem, que são especialmente importantes para imagens animadas.
Dois buffers de cores estão disponíveis para aplicativos que usam buffer duplo: um buffer frontal e um buffer traseiro. Por padrão, os comandos de desenho são direcionados para o buffer de fundo (o buffer fora da tela), enquanto o buffer frontal é exibido na tela. Quando o buffer fora da tela estiver pronto para exibição, você chamará SwapBufferse o Windows copiará o conteúdo do buffer fora da tela para o buffer na tela.
A implementação genérica usa um DIB (bitmap independente do dispositivo) como o buffer traseiro e a tela é exibida como o buffer frontal. Os dispositivos de hardware e seus drivers podem usar abordagens diferentes.
O buffer duplo é uma propriedade em formato de pixel. Para solicitar buffer duplo para um formato de pixel, defina o sinalizador PFD_DOUBLEBUFFER na estrutura de dadosPIXELFORMATDESCRIPTOR em uma chamada para ChoosePixelFormat.
A função de núcleo OpenGL, glDrawBuffer, seleciona buffers para gravação e limpeza.
Tópicos relacionados