A OpenGL Extension Wrangler Library (GLEW) é uma biblioteca de carregamento de extensão C/C++ de código aberto e plataforma cruzada. GLEW fornece mecanismos de tempo de execução eficientes para determinar quais extensões OpenGL são suportadas na plataforma de destino. A funcionalidade principal e de extensão do OpenGL é exposta em um único arquivo de cabeçalho. GLEW foi testado em vários sistemas operacionais, incluindo Windows, Linux, Mac OS X, FreeBSD, Irix e Solaris.
http://glew.sourceforge.net/
https://github.com/nigels-com/glew
A versão atual é 2.2.0. (Registro de alterações)
Fontes disponíveis como ZIP ou TGZ.
Binários do Windows para 32 e 64 bits.
Os instantâneos podem conter novos recursos, correções de bugs ou novas extensões OpenGL antes dos lançamentos oficiais testados.
glew-20220402.tgz GLEW 2.2.0 - com correção para glCreateProgressFenceNVX
É altamente recomendável compilar a partir de um instantâneo de lançamento tgz ou zip. O fluxo de trabalho de geração de código é uma mistura complexa de gnu make, perl e python, que funciona melhor em Linux ou Mac. Sabe-se que a geração de código funciona no Windows usando MSYS2. Para a maioria dos usuários finais do GLEW os lançamentos oficiais são a melhor escolha, com suporte de primeira classe.
GNU make é o principal sistema de compilação do GLEW, historicamente. Inclui alvos para construção de fontes e cabeçalhos, para fins de manutenção.
Debian/Ubuntu/Mint: $ sudo apt-get install build-essential libxmu-dev libxi-dev libgl-dev
RedHat/CentOS/Fedora: $ sudo yum install libXmu-devel libXi-devel libGL-devel
FreeBSD: # pkg install xorg lang/gcc git cmake gmake bash python perl5
$ make
$ sudo make install
$ make clean
Alvos: all, glew.lib (sub-targets: glew.lib.shared, glew.lib.static), glew.bin, clean, install, uninstall
Variáveis: SYSTEM=linux-clang, GLEW_DEST=/usr/local, STRIP=
Nota: pode ser necessário chamar make
na pasta automática primeiro
$ sudo apt install libegl1-mesa-dev
$ make SYSTEM=linux-egl
$ sudo apt install libosmesa-dev
$ make SYSTEM=linux-osmesa
$ sudo apt install mingw-w64
$ make SYSTEM=linux-mingw32
$ make SYSTEM=linux-mingw64
A compilação cmake é mantida principalmente por contribuidores. Devido à grande variedade de casos de uso, isso é mantido com base no melhor esforço . Solicitações pull são bem-vindas.
É necessário CMake 3.16 ou superior.
Debian/Ubuntu/Mint: $ sudo apt-get install build-essential libxmu-dev libxi-dev libgl-dev cmake git
RedHat/CentOS/Fedora: $ sudo yum install libXmu-devel libXi-devel libGL-devel cmake git
$ cd build
$ cmake ./cmake
$ make -j4
Alvo | Descrição |
---|---|
brilhou | Construa a biblioteca compartilhada brilhante. |
glew_s | Construa a biblioteca estática brilhante. |
glewininfo | Construa o executável glewinfo (requer que BUILD_UTILS esteja ON ). |
informações visuais | Crie o executável visualinfo (requer que BUILD_UTILS esteja ON ). |
instalar | Instale todos os destinos habilitados em CMAKE_INSTALL_PREFIX . |
limpar | Limpe os artefatos de construção. |
todos | Crie todos os destinos habilitados (alvo padrão). |
Variáveis | Descrição |
---|---|
BUILD_UTILS | Crie os executáveis glewinfo e visualinfo . |
GLEW_REGAL | Construa no modo Regal. |
GLEW_OSMESA | Construa no modo Mesa fora da tela. |
CONSTRUIR_FRAMEWORK | Construa como MacOSX Framework. É recomendado definir CMAKE_INSTALL_PREFIX como /Library/Frameworks . |
Use o arquivo de projeto do Visual Studio fornecido em build/vc15/
Projetos para vc6, vc10, vc12 e vc14 também são fornecidos
Disponível em Mingw
Requisitos: bash, make, gcc
$ mingw32-make
$ mingw32-make install
$ mingw32-make install.all
Conjunto de ferramentas alternativo: SYSTEM=mingw-win32
Disponível em Msys2 e/ou Mingw-w64
Requisitos: bash, make, gcc
$ pacman -S gcc make mingw-w64-i686-gcc mingw-w64-x86_64-gcc
$ make
$ make install
$ make install.all
Conjunto de ferramentas alternativo: SYSTEM=msys, SYSTEM=msys-win32, SYSTEM=msys-win64
glewinfo
é uma ferramenta de linha de comando útil para inspecionar os recursos de uma implementação OpenGL e suporte GLEW para isso. Inclua glewinfo.txt
com relatórios de bugs, conforme apropriado.
---------------------------
GLEW Extension Info
---------------------------
GLEW version 2.0.0
Reporting capabilities of pixelformat 3
Running on a Intel(R) HD Graphics 3000 from Intel
OpenGL version 3.1.0 - Build 9.17.10.4229 is supported
GL_VERSION_1_1: OK
---------------
GL_VERSION_1_2: OK
---------------
glCopyTexSubImage3D: OK
glDrawRangeElements: OK
glTexImage3D: OK
glTexSubImage3D: OK
...
É necessário um ambiente Unix ou Mac para construir o GLEW do zero para incluir novas extensões ou personalizar a geração de código. Os dados de extensão são regenerados a partir do diretório de origem de nível superior com:
make extensions
Uma alternativa para gerar as fontes GLEW do zero é baixar um snapshot pré-gerado (sem suporte):
https://sourceforge.net/projects/glew/files/glew/snapshots/
GLEW é atualmente mantido por Nigel Stewart com correções de bugs, novo suporte a extensões OpenGL e novos lançamentos.
O GLEW foi desenvolvido por Milan Ikits e Marcelo Magallon. Aaron Lefohn, Joe Kniss e Chris Wyman foram os primeiros usuários e também ajudaram no processo de design e depuração.
A sigla GLEW é originária de Aaron Lefohn. Pasi Kärkkäinen identificou e corrigiu vários problemas com GLX e SDL. Nate Robins criou o utilitário wglinfo
, cujas modificações foram feitas por Michael Wimmer.
GLEW agradece contribuições da comunidade. Normalmente, eles são coordenados por meio de problemas ou solicitações pull na interface da web do GitHub.
Certifique-se de mencionar os detalhes da plataforma e do conjunto de ferramentas do compilador ao preencher um relatório de bug. O resultado do glewinfo
também pode ser bastante útil para discussão.
Geralmente, o GLEW é lançado uma vez por ano, na época da conferência de computação gráfica Siggraph. Se você não estiver usando a versão atual do GLEW, certifique-se de verificar se o problema ou bug foi corrigido lá.
GLEW é originalmente derivado do projeto EXTGL de Lev Povalahev. O código-fonte é licenciado sob a Licença BSD Modificada, a Licença Mesa 3-D (MIT) e a Licença Khronos (MIT).
Os scripts de geração automática de código são lançados sob a GNU GPL.