OGLplus é um cabeçalho somente livre e open source software biblioteca que implementa uma fachada orientada a objetos fina sobre a OpenGL C-language API (Application Programming Interface), bem como para as APIs OpenAL e EGL.
O projeto foi projetado para suportar a versão 3 ou superior da API OpenGL, versão 1.1 ou maior do API OpenAL (Open Library Audio), bem como a versão 1.4 ou posterior do API EGL.
configurável, tipo de seguro e gestão de recursos automática características s; It & rsquo
OGLplus é configurável, tipo de seguro, e dispõe de gerenciamento automático de recursos, de erro de diagnóstico e tratamento, bem como a interoperabilidade com OpenGL C API e classes relacionadas-CG adicionais.
Além disso, o software oferece descrição opcional de recursos e objetos, é altamente configurável, e inclui os seguintes utilitários: utilitários de texto renderização, carregadores de malha e geradores, e carregadores de imagem e geradores
.Começando com OGLplus
Para instalar e utilizar o software OGLplus em seu sistema operacional GNU / Linux, baixe a última versão do projeto a partir de qualquer seu site oficial (veja o link homepage no final do artigo) ou Softoware, guardar o arquivo no seu diretório home.
Use uma ferramenta de gerenciamento de arquivo para extrair o conteúdo do arquivo e navegue para a localização dos ficheiros de arquivo extraídos através de qualquer programa emulador de terminal usando o & lsquo; cd & rsquo; de comando (por exemplo cd /home/softoware/oglplus-0.57.0).
Execute o & lsquo; ./ configure.sh & rsquo; comando para configurar e otimizar o projeto para a sua arquitetura de CPU e sistema operacional. Então, conforme as instruções, executar o & lsquo; cd _build & amp; & amp; make -f 5 & rsquo; comando para compilar o programa. Instalá-lo com o & lsquo; sudo make install & rsquo; de comando.
Suportado no GNU / Linux, Microsoft Windows e FreeBSD
O projeto OGLplus é oficialmente suportado em todas as distribuições GNU / Linux, bem como sobre os sistemas operacionais FreeBSD e Microsoft Windows. Ele foi testado com sucesso em plataformas de computador de 32 bits e de 64 bits.
O que é novo nesta versão:
- A classe DeferredHandler eo modelo Outcome foram refeitos.
- New sobrecarga de textura :: Wrap foi adicionado.
- O ClientContext e suas classes auxiliares SettingStack foram atualizados.
- verificações de alocação Libpng foram adicionados para o carregador de imagem PNG.
- O GL3W caminho de inclusão foi corrigido.
- Pequenas correções no sistema de compilação foram feitas.
- A documentação Quickbook foi atualizado.
O que é novo na versão 0.66.0:
- A classe DeferredHandler eo modelo Outcome foram refeitos.
- New sobrecarga de textura :: Wrap foi adicionado.
- O ClientContext e suas classes auxiliares SettingStack foram atualizados.
- verificações de alocação Libpng foram adicionados para o carregador de imagem PNG.
- O GL3W caminho de inclusão foi corrigido.
- Pequenas correções no sistema de compilação foram feitas.
- A documentação Quickbook foi atualizado.
O que é novo na versão 0.63.0:
- Alguns avisos de compilação -Weverything clang foram corrigidos.
- Novas sobrecargas de funções CameraMatrix :: perspectiva.
- Os internos do OALplus e EGLplus foram refeitos.
- foi adicionado suporte para objetos de buffer Shader de armazenamento.
- Um bug nos geradores de imagem Nuvem e BrushedMetal foram corrigidos.
- Um problema com a enumeração de comando caminho NV foi corrigido.
foram adicionados
O que é novo na versão 0.61.0:
- A detecção de versão GL no sistema de compilação foi atualizado para funcionar melhor em MacOS.
- Uma chave pré-processador para ativar / foi adicionado desativação de Boost.Config.
- foram adicionados invólucros para ARB_clip_control.
- Exceções no OALplus foram atualizados.
- foram adicionados enumerações código de erro.
- foi adicionado ErrorAL.
- A função de membro do Código foi adicionado ao ErrorAL, ErrorALC e ErrorALUT.
- Alguns avisos do compilador foram silenciados.
- foram adicionados As classes SizeType e BigSizeType e algumas ocorrências de GLsizei e GLsizeiptr foram substituídos por eles.
- A documentação Quickbook foi atualizado.
O que é novo na versão 0.60.0:
- O invólucro booleana foi atualizado, ~ foi adicionado o operador.
- Foi adicionada a função de objeto :: HasInstance.
- Os invólucros de contexto GL nativa foram atualizados.
- A textura DSA, Tampão e Framebuffer foram parcialmente reformulado.
- foi adicionado A enumeração SingleFace.
- Foram adicionados os typedefs FragmentData e FragmentDataSlot.
- Um novo exemplo autônomo foi adicionado.
- A classe oalplus :: CurrentContext foi renomeado para ContextMadeCurrent.
- #ifdefs falta foram adicionados ao redor especializações de EnumAssocType.
- A documentação Quickbook foi atualizado.
O que é novo na versão 0.59.0:
- Problemas com a construção Mover e mova-atribuição de objetos foram corrigidos.
- Foram adicionados os invólucros booleanas.
- A documentação Quickbook foi atualizado.
O que é novo na versão 0.58.0:
- especificadores Noexcept foram adicionados a algumas funções.
- foi adicionado A função oalplus :: GetALName.
- Pequenas mudanças foram feitas para oalplus :: ouvinte e do dispositivo wrappers.
- várias atribuições construtores foram fixados para evitar problemas com a auto atribuição.
- Os invólucros objeto GL / AL foram refeitos.
- A maioria dos exemplos independentes foram portadas para MSVC.
- Alguns avisos MSVC foram corrigidos.
- As colisões entre macros de pré-processamento e nomes de variáveis foram corrigidos.
- Um problema que causou violações de acesso em testes de funcionalidade GL foi corrigido.
- A documentação Quickbook foi atualizado.
O que é novo na versão 0.57.0:
- A classe oglplus :: ClientContext foi atualizado, a pilha de configuração foi reimplantado não usar recipientes alocados dinamicamente para armazenar os valores empurrado.
- O script para auto-geração dos cabeçalhos de enumeração foi atualizado, agora quase tudo relacionado com as enumerações é gerado automaticamente.
- Um erro na definição das sobrecargas de EnumValueRange foi corrigido.
- Menor problemas nos shaders GLSL nos exemplos foram corrigidos.
- A documentação Quickbook foi atualizado.
- especificadores Noexcept foram adicionados a algumas funções.
O que é novo na versão 0.42.0:
- O formato ea InternalFormat typedef foram adicionados à textura.
- As imagens :: class ImageSpec foi adicionado.
- O ClearImage, ClearSubImage, InvalidateImage, InvalidateSubImage e Imagem funções foram adicionadas à textura.
- Uma sobrecarga de Renderbuffer :: imagens aceitando armazenamento :: ImageSpec foi adicionado.
- foram adicionados Vários operadores sintaxe-açúcar para especificar os atributos e simples manipulação da textura, Tampão, Framebuffer e Renderbuffer.
- foram adicionados As enumerações ContextFlagBit e ContextProfileBit.
- O ProfileMask e bandeiras ea NumShadingLanguageVersion, funções ShadingLanguageVersion e ShadingLanguageVersion foram adicionados ao contexto.
- funções relacionadas com Multisampling foram adicionados ao contexto.
- A enumeração ProgramResourceProperty foi atualizado.
- Um bug na classe GLSLSource, relacionadas com a leitura GLSL de fluxos de entrada foi fixada.
- As alterações ao sistema de compilação:
- Atualizado detecção de versão GL.
- Atualizado o script configure.py usar a variável LD_LIBRARY_PATH.
- Adicionaram-se dois exemplos e vários dos exemplos existentes foram atualizados para mostrar o uso dos novos recursos.
- Um dos exemplos mais antigos foi removido.
- Foram feitas diversas atualizações de documentação.
O que é novo na versão 0.41.0:
- foi adicionado A classe ShaderProgram.
- A enumeração BufferMapAccess foi atualizado.
- Os unmap, FlushRange e FlushElements funções foram adicionadas aos mapas do buffer.
- As funções InvalidateData e InvalidateSubData foram adicionados ao tampão;
- foi adicionado A enumeração FramebufferBuffer.
- A função Invalidate foi adicionado ao Framebuffer.
- foi adicionado O modelo EnumArray para passagem de matrizes de valores enum.
- foram adicionados invólucros para as funções glClearBuffer.
- foi adicionado um novo arnês para exemplos OGLplus usando Qt5.
- Uma implementação não-oficial com sede em GLX X11 / da API EGL, com várias extensões foi adicionado.
- O suporte para extensões de cliente foram adicionadas ao EGLplus.
- eglplus :: Contexto foi atualizado, foi adicionada uma nova sobrecarga do MakeCurrent, e a função de membro lançamento foi adicionado.
- Vários exemplos foram atualizados para mostrar os novos recursos.
- Foi adicionado um novo roteiro para a prestação de vídeos a partir de exemplos OGLplus.
- Vários problemas no sistema de compilação foram corrigidos.
O que é novo na versão 0.40.0:
- foi adicionado suporte experimental para OpenGL ES 3.0.
- Um primeiro exemplo para a plataforma Android, utilizável com o Android NDK com GLESv3 foi adicionado.
- foi adicionado A função Textura :: GetImage.
- O modelo Tampão :: TypedMap foi re-consignado em duas classes de nível de namespace:. BufferRawMap e BufferTypedMap
- Novos construtores foram adicionados a Vector.
- As imagens :: FilteredImage classe base modelo foi reimplantado.
- As imagens :: class Transformado foi renomeado para imagens :: TransformComponents.
- foi adicionado o filtro de imagens :: FlipImageAxes.
- O carregador XPMImage foi atualizado para suportar imagens XPM 3D não-padrão.
- Implementações de múltiplas funções foram transferidas para o diretório / implementar.
- Vários erros foram corrigidos.
- O sistema de compilação foi atualizado:
- A detecção de versão GL foi atualizado, foi adicionado o arquivo automaticamente gerado oglplus / fix_gl_version.hpp.
- Problema com detecção Pango / Cairo foi corrigido.
- Um problema com a construção da biblioteca OGLplus foi corrigido.
- Vários outros insetos foram correções.
O que é novo na versão 0.38.0:
- O modelo de classe Grupo para agrupar objetos gerenciados externamente foi adicionado, juntamente com especializações execução ARB_multi_bind operações no buffer, Sampler, e textura.
- O DSAFramebufferEXT, DSARenderbufferEXT e DSAVertexArrayEXT classes que implementam as operações de estado de acesso directo.
- Um novo exemplo foi adicionado, e um dos exemplos mais antigos foi atualizado para mostrar a utilização das classes de estado de acesso directo.
- As propriedades da pasta foram adicionados ao sistema de construção para colocar metas em pastas de solução quando eles são suportados.
foram adicionados
O que é novo na versão 0.37.0:
- Esta versão traz DSABufferEXT - a alternativa de acesso direto do Estado de buffer, e suporte para várias extensões GL, incluindo ARB_buffer_storage, ARB_bindless_texture, ARB_seamless_cubemap_per_texture, ARB_texture_stencil8 e ARB_texture_mirror_clamp_to_edge .
- Ele também adicionou suporte para GLFW3, o SimpleSubdivSphere e SubdivSphere construtores de forma paramétrica, vários exemplos que mostram a nova funcionalidade e documentação atualizada.
O que é novo na versão 0.36.0:
- Um código de limpeza geral foi realizada, ea implementação das funções mais complexas foi movido em arquivos separados para fazer os cabeçalhos menos desordenado.
- foi adicionado um wrapper para a extensão KHR_debug.
- callbacks reutilizáveis / filtros foram adicionados para as extensões debug_output.
- ferramentas ShapeAnalyzer para analisar geometria da malha, juntamente com um exemplo de uso.
- Foi adicionado um exemplo independente do uso do carregador de arquivo .blend do Blender.
- A documentação foi atualizada.
foram adicionados
O que é novo na versão 0.35.0:
- Isto é mais uma versão de correções, mas também traz uma mais robusta GL versão e extensão de detecção, e outras melhorias para o sistema de compilação.
O que é novo na versão 0.34.0:
- Esta versão traz várias melhorias para o sistema de construção, incluindo suporte para GL 4.4 de detecção.
- Uma classe DSATextureEXT pode ser utilizado como um substituto mais conveniente / eficiente para a textura se a extensão EXT_direct_state_access está disponível.
- Suporte para permitir filtragem anisotrópica foi adicionada a textura.
- Vários operadores sintaxe-açúcar foram adicionados para mais conveniente ativação / desativação das capacidades GL.
- O modelo AutoBind permitir a ligação automática de vários tipos de objeto foi reposta e foram adicionados vários novos exemplos que mostram os novos recursos.
O que é novo na versão 0.33.0:
- Esta versão traz vários novos exemplos OGLplus e OALplus, atualizações para o sistema de compilação, o CamMatrix :: construtor LookingAt, as funções get e set textura :: maxLevel, transversal à base de gama de cordas de extensão GL, e atualizações para o Cube gerador de forma e carregador de malha OBJ, o gerador de textura verificador, etc.
- O cabeçalho / glcorearb.h GL também foi adicionado ao terceiro include para conveniência.
O que é novo na versão 0.32.0:
- foram adicionados EGLplus, um invólucro em torno EGL, e vários exemplos de seu uso.
- O sistema de compilação foi atualizado.
- O VertexAttrib :: configuração e VertexAttrib :: Ponteiro funções foram reimplemented, e foram adicionadas novas sobrecargas.
- As classes QuickProgram e HardwiredProgram foram reimplemented.
O que é novo na versão 0.30.0 Beta:
- Um carregador ficheiro.obj foi adicionado.
- foram adicionados dois novos exemplos que mostram o uso do carregador.
- Alguns problemas no sistema de compilação foram fixados, e gerenciamento de dependência / exigência foi atualizado.
- Um wrapper para glTextureView foi adicionada a textura, e glGetShaderPrecisionFormat foi adicionado ao Shader.
O que é novo na versão 0.29.0 Beta:
- O sistema de compilação foi parcialmente reimplemented e atualizado, e vários problemas foram corrigidos.
- Os tipos AtomicCounterBindingPoint e ShaderStorageBufferBindingPoint e as funções BindBaseAtomicCounter BindBaseShaderStorage e foram adicionados ao tampão e foram adicionados três novos exemplos.
O que é novo na versão 0.28.0 Beta:
- Esta versão traz várias mudanças maiores: o vetor e Matrix modelos foram reimplemented, algumas das funções de configuração VertexAttribute foram reimplemented, uma nova prestação de utilitário de texto (com base em stb_truetype.h) e um tipo de apagamento para utilitários de processamento de texto foram adicionadas, uma estrutura de teste, foram adicionados os primeiros casos de teste, e diversos novos exemplos que mostram os novos recursos, e muito mais.
O que é novo na versão 0.27.0 Beta:
- Um erro na construção de matrizes de perspectiva foi corrigido.
- Vários erros nos exemplos e exemplos de arreios foram corrigidos.
- foi adicionado A consulta :: class Activator.
- O suporte para renderização instanced foi adicionada à forma geradores / carregadores.
Comentários não encontrado