Lightweight Java Game Library

biblioteca Java open-source

Lightweight Java Game Library (estilizado e abreviado como LWJGL) é uma API código aberto Java criada para auxiliar o desenvolvimento de jogos 2D ou 3D.[1] Sua principal função é a implementação de motores gráficos como OpenGL[2],Vulkan, entre várias outras.[3][4]

Lightweight Java Game Library
Logótipo
Lightweight Java Game Library
Autor Caspian Prince
Desenvolvedor LWJGL Team e contribuidores
Plataforma Multiplataforma
Modelo do desenvolvimento Código aberto
Lançamento 4 de fevereiro de 2007 (17 anos)
Versão estável 3.3.1 (21 de fevereiro de 2022; há 2 anos)
Idioma(s) Inglês
Mercado-alvo Desenvolvedores de jogos eletrônicos
Escrito em Java e Kotlin (API), C e C++ (Bibliotecas)
Sistema operacional Linux, MacOS, Windows (Qualquer sistema que suporta JVM)
Gênero(s) Sistema de criação de jogos
Licença Licença BSD
Estado do desenvolvimento Atívo
Página oficial www.lwjgl.org
Repositório github.com/lwjgl

Sobre editar

História editar

O desenvolvimento começou em 2002 com o lançamento da J2SE 1.4, que trazia várias novidades, incluindo operações de entrada/saída sem o bloqueio e acesso à memória alocada pelo programa. Isso permitia um melhor acesso à memória nativa e bibliotecas que não fazem parte do kit de desenvolvimento JDK. O desenvolvimento continuou até seu lançamento oficial em 4 de fevereiro de 2007.[5]

Em 13 de novembro de 2014, foi anunciado de que sua versão 3 estava em desenvolvimento, sendo que esta seria reescrita totalmente do zero, com várias alterações e novidades, deixando-a incompatível com lançamentos anteriores. Essa versão traria melhorias e novas implementações como o suporte ao GLFW, EGL, Objective-C e o desenvolvimento em Oculus Rift. Em 27 de abril de 2015 a versão alfa foi finalmente liberada ao público, tendo sua versão final lançada em 4 de junho de 2016, após mais de 3 anos e meio em desenvolvimento.[6][7][8]

Função editar

Seu principal objetivo é acessar métodos e funções de motores gráficos e sonoros feitos em C e C++ através do Java Native Interface (JNI) conhecidos como Bindings ou ligação de dados[2], fornecendo assim aos desenvolvedores uma maneira de obter acesso a recursos que, de outra forma, não estão disponíveis ou são mal implementados na plataforma Java3D. A filosofia principal é expor a tecnologia subjacente como um invólucro fino, criando assim uma API próxima ao original.[9]

Desde a versão 3.1, o projeto foi dividido em 51 módulos que podem ser baixados e usados separadamente. Para facilitar esse processo, é fornecido um configurador de compilação online, que permite aos usuários baixar combinações personalizadas de módulos e gerar automaticamente arquivos de configuração Maven e Gradle para facilitar sua implementação em projetos existentes.[10][11]

Uso editar

A biblioteca já foi usada em vários jogos famosos, como a versão Java do jogo Minecraft, desenvolvido pela empresa sueca Mojang Studios[12][13], e o jogo Project Zomboid desenvolvido pela empresa The Indie Stone[14]. É também a base de muitos motores de jogos como libGDX ou jMonkeyEngine.

Referências

  1. «About LWJGL - LWJGL». wiki.lwjgl.org. Consultado em 31 de dezembro de 2019 
  2. a b The LWJGL 3 Wiki. Contribute to LWJGL/lwjgl3-wiki development by creating an account on GitHub, Lightweight Java Game Library, 25 de dezembro de 2019, consultado em 31 de dezembro de 2019 
  3. «Lwjgl - Desenvolvimento de Jogos». desenvolvimentodejogos.wikidot.com. Consultado em 31 de dezembro de 2019 
  4. «LWJGL 1.0 Released». forum.lwjgl.org. Consultado em 31 de dezembro de 2019 
  5. «LWJGL 1.0 Released». forum.lwjgl.org. Consultado em 20 de julho de 2022 
  6. «LWJGL 3.0.0a released». LWJGL Blog (em inglês). 27 de abril de 2015. Consultado em 20 de julho de 2022 
  7. «Welcome to LWJGL 3». LWJGL Blog (em inglês). 13 de novembro de 2014. Consultado em 20 de julho de 2022 
  8. «Home · LWJGL/lwjgl3-wiki Wiki». GitHub (em inglês). Consultado em 20 de julho de 2022 
  9. «1.4. Bindings FAQ · LWJGL/lwjgl3-wiki Wiki». GitHub (em inglês). Consultado em 20 de julho de 2022 
  10. «LWJGL 3.1.0 Released!». LWJGL Blog (em inglês). 30 de outubro de 2016. Consultado em 20 de julho de 2022 
  11. «LWJGL - Lightweight Java Game Library». www.lwjgl.org. Consultado em 20 de julho de 2022 
  12. «Notch, what game engine are you using? - Discussion - Minecraft: Java Edition - Minecraft Forum - Minecraft Forum». www.minecraftforum.net. Consultado em 31 de dezembro de 2019 
  13. «Site oficial». Minecraft.net. 18 de dezembro de 2019. Consultado em 31 de dezembro de 2019 
  14. Will (17 de fevereiro de 2014). «APZDTISA #3: This time with LIVE MULTIPLAYER!». Project Zomboid (em inglês). Consultado em 20 de julho de 2022 

Ligações Externas editar