libGDX - Le Bottin des Jeux Linux

libGDX

Specifications

Title: libGDX Type: Tool
Genre: Development Status:
Category: Development ➤ Framework & Tool ➤ Game Framework Commercial:
Tags: Development; Frameworks; Java; libGDX Framework; Prototyping; Multi-platform Demo:
Released: Latest : 1.9.11 / Dev : 1e51bc8 Package Name:
Date: 2020-09-26 Extern Repo:
License: Code : Apache 2.0 / Artwork : CC BY-SA 3.0 Repo:
Perspective: Third person Package:
Visual: 2D & 3D Binary: ✓
Pacing: Real Time Source: ✓
Played: Single & Multi PDA:
Quality (record): 5 stars Quality (game):
Contrib.: Goupil & Louis ID: 13754
Created: 2013-08-09 Updated: 2020-10-01

Summary

[fr]: Un framework libre et multi-plateforme pour le développement de jeux en Java, fournissant un environnement de prototypage rapide et d'itérations rapides. Au lieu de déployer sur chaque plateforme cible après un changement de code, l'utilisateur débogue son jeu sur le bureau, de manière native. [en]: A libre & multi-platform Java game development framework, providing a fast prototyping environment and fast iterations. Instead of deploying on each target platform after a change of code, the user debugs his game on the desktop, natively.

Videos

Trailer / Gameplay [en] / [en] / [fr] :


Présentation des développeurs / Dev presents :


Présentation des utilisateurs / Users presents :


Quelques exemples de jeux / Some examples of games (Showcase) :

Links

Website & videos
[Homepage] [Dev site] [Features/About] [Screenshots] [Videos t ts gd id r lp ht ht ht d d d d d d d g[fr] g[de] g[ru] g[pl] g[cz] g[sp] g[pt] g[it] g[tr] g] [WIKI] [FAQ] [RSS] [Changelog 1 2 3]

Commercial : [Support their work (Donate)]

Resources
• SuperMario example, thanks to Brent Aureli : [GitHub (Source Code from my Creating Super Mario Bros) (on YouTube)]
• PhysicsShmup (a 2D shooter) example, thanks to LetsMakeAnIndieGame : [GitHub (A 2D shooter made with LibGDX) (on YouTube)]
Technical informations
[Open Hub] [PCGamingWiki] [MobyGames] [libGDX (Gallery)] [Mod DB (Games)] [William Mora (LibGDX Tutorial - A Running Game with libGDX)]

Social
(libGDX) Devs (libGDX Team 1 2 3] [fr] [en]) : [Site 1 2 3] [Patreon] [Forums] [mastodon] [twitter] [PeerTube] [YouTube] [Interview 1 2]
(libGDX) Devs (Mario Zechner (Badlogic Games) [fr] [en]) : [Site 1 2] [Forums] [mastodon] [twitter] [PeerTube] [YouTube] [Interview 1 2]
(libGDX) Devs (Nathan Sweet [fr] [en]) : [Site 1 2] [mastodon] [twitter] [PeerTube] [YouTube] [Interview 1 2]
Game : [Blog 1 2] [Forums] [twitter] [YouTube]

On other sites
[Wikipedia (libGDX) [fr] [en] [de]]
[Mod DB] [Indie DB]

Reviews
[GameFromScratch]

News / Source of this Entry (SotE) / News (SotN)
[Changes with v. 1.9.10 (20190719)]

Description [fr]

Un framework pour le développement de jeux en Java, par la libGDX Team (Mario Zechner aka Badlogic Games, Nathan Sweet & contributeurs).
En Java.

libGDX est un framework libre et multi-plateforme pour le développement de jeux en Java, fournissant un environnement de prototypage rapide et d'itérations rapides. Au lieu de déployer sur chaque plateforme cible après un changement de code, l'utilisateur débogue son jeu sur le bureau, de manière native.

Utilisé par ces jeux & outils / Used by these games & tools : Bladecoder Adventure Engine, Deadweight, Defender Story, Desert Stormfront, Tropical Stormfront, Wizards of Yore,


LibGDX est un framework de développement de jeux multi-plateformes libre, open source, et de niveau relativement bas. L'objectif du projet est de vous aider à créer des jeux / applications et à les déployer sur des plates-formes de bureau et mobiles sans vous perdre en cours de route et vous permettre de concevoir comme vous le souhaitez.

LibGDX est libre, sous licence Apache 2, permettant à tout le monde d’utiliser ce projet.

Il existe de nombreux outils de niveau supérieur dans ce framework pour vous permettre de démarrer rapidement, et vous disposez d'un accès complet aux API de bas niveau si et quand vous en avez besoin.

Libgdx est un framework de développement de jeux en Java qui fournit une API unifiée fonctionnant sur toutes les plates-formes prises en charge.

Le framework fournit un environnement de prototypage rapide et d'itérations rapides. Au lieu de déployer sur Android / iOS / Javascript après chaque changement de code, vous pouvez exécuter et déboguer votre jeu sur le bureau, de manière native. Les fonctionnalités JVM (NdT : Java Virtual Machine) de bureau tel que le hotswapping de code réduisent considérablement vos temps d'itération.

Libgdx n'essaie pas d'être la solution "end all, be all" (NdT : la meilleure / ultime). Il ne vous force pas à une conception spécifique.

Description [en]

LibGDX is a relatively low level, free, open source cross platform game development framework. The goal of the project is to assist you in creating games/applications and deploy to desktop and mobile platforms without getting in the way and letting you design however you like.

LibGDX is free, licensed with Apache 2 open source software license, allowing everyone to use this project.

There are plenty of higher level tools in the framework to get you started quickly, and there is full access to low level API if and when you need to use them.


Libgdx is a Java game development framework that provides a unified API that works across all supported platforms.

The framework provides an environment for rapid prototyping and fast iterations. Instead of deploying to Android/iOS/Javascript after each code change, you can run and debug your game on the desktop, natively. Desktop JVM features like code hotswapping reduce your iteration times considerably.

Libgdx tries not be the "end all, be all" solution. It does not force a specific design on you. Pick and choose from the features below.


Wikipedia:

libGDX is a free and open-source game-development application framework written in the Java programming language with some C and C++ components for performance dependent code. It allows for the development of desktop and mobile games by using the same code base. It is multi-platform, supporting Windows, Linux, Mac OS X, Android, iOS, BlackBerry and web browsers with WebGL support.

History

(...)

libGDX Jam

(...)

Architecture

libGDX allows the developer to write, test, and debug their application on their own desktop PC and use the same code on Android. It abstracts away the differences between a common Windows/Linux application and an Android application. The usual development cycle consists of staying on the desktop PC as much as possible while periodically verifying that the project still works on Android. Its main goal is to provide total compatibility between desktop and mobile devices, the main difference being speed and processing power.

Backends

The library transparently uses platform-specific code through various backends to access the capabilities of the host platform. Most of the time the developer does not have to write platform-specific code, except for starter classes (also called launchers) that require different setup depending on the backend.

• On the desktop the Lightweight Java Game Library (LWJGL) is used. There is also an experimental JGLFW backend that is not being continued any more. In Version 1.8 a new LWJGL 3 backend was introduced, intended to replace the older LWJGL 2 backend.
• The HTML5 backend uses the Google Web Toolkit (GWT) for compiling the Java to JavaScript code, which is then run in a normal browser environment. libGDX provides several implementations of standard APIs that are not directly supported there, most notably reflection.
• The Android backend runs Java code compiled for Android with the Android SDK.
• For iOS a custom fork of RoboVM is used to compile Java to native iOS instructions. Intel's Multi-OS Engine has been provided as an alternative since the discontinuation of RoboVM.

Other JVM languages

While libGDX is written primarily in Java, the compiled bytecode is language-independent, allowing many other JVM languages to directly use the library. The documentation specifically states the interoperability with Ceylon, Clojure, Kotlin, Jython, JRuby and Scala.

Extensions

Several official and third-party extensions exist that add additional functionality to the library.

gdxAI

An artificial intelligence (AI) framework that was split from the main library with version 1.4.1 in October 2014 and moved into its own repository. While it was initially made for libGDX, it can be used with other frameworks as well. The project focuses on AI useful for games, among them pathfinding, decision making and movement.

gdx freetype

Can be used to render FreeType fonts at run time instead of using static bitmap images, which do not scale as well.

Box2D

A wrapper for the Box2D physics library was introduced in 2010 and moved to an extension with the 1.0 release.

packr

A helper tool that bundles a custom JRE with the application so end users do not have to have their own one installed.

Features

☑ multi-platform

A single API to target:

• Windows
• Linux
• Mac OS X
• Android (2.2+)
• BlackBerry
• iOS
• Java Applet (requires JVM to be installed)
• Javascript/WebGL (Chrome, Safari, Opera, Firefox, IE via Google Chrome Frame)

☑ 3rd Party Support

Libgdx can be integrated with many 3rd party tools. We love:

• Spine - 2D Skeletal Animation
• Nextpeer - Mobile multiplayer made easy
• Saikoa - makers of ProGuard and DexGuard

☑ Audio

• Streaming music and sound effect playback for WAV, MP3 and OGG
• Direct access to audio device for PCM sample playback and recording (unsupported in Javascript backend)

☑ Input Handling

• Abstractions for mouse and touch-screen, keyboard, accelerometer and compass
• Gesture detector, detects taps, panning, flinging and pinch zooming

☑ Math & Physics

• Matrix, vector and quaternion classes. Matrix and vector operations are accelerated via native C code where possible
• Bounding shapes and volumes
• Frustum class, for picking and culling
• Catmull-Rom splines
• Common interpolators
• Concave polygon triangulator
• Intersection and overlap testing
• 2D physics: JNI wrapper for Box2D physics. So awesome, other engines use it as well
• 3D physics: JNI Wrapper for bullet physics

☑ File I/O & Storage

• File system abstraction for all platforms
• Read-only file system emulation for Javascript backend
• Binary file support for Javascript backend
• Preferences for lightweight setting storage

☑ Graphics

• Rendering through OpenGL ES 2.0 on all platforms
• Custom OpenGL ES 2.0 bindings for Android 2.0 and above
• Low-Level OpenGL helpers:
⚬ Vertex arrays and vertex buffer objects
⚬ Meshes
⚬ Textures
⚬ Framebuffer objects (GLES 2.0 only)
⚬ Shaders, integrating easily with meshes
⚬ Immediate mode rendering emulation
⚬ Simple shape rendering
⚬ Automatic software or hardware mipmap generation
⚬ ETC1 support (not available in Javascript backend)
⚬ Automatic handling of OpenGL ES context loss. Restores all textures, shaders and other OpenGL resources
• High-level 2D APIs:
⚬ Custom CPU side bitmap manipulation library
⚬ Orthographic camera
⚬ High-performance sprite batching and caching
⚬ Texture atlases, with whitespace stripping support. Either generated offline or online
⚬ Bitmap fonts (does not support complex scripts like Arabic or Chinese). Either generated offline or loaded from TTF files (unsupported in Javascript backend)
⚬ 2D Particle system
⚬ TMX tile map support
⚬ 2D scene-graph API
⚬ 2D UI library, based on scene-graph API, fully skinable
• High-Level 3D APIs:
⚬ Perspective camera
⚬ Decal batching, for 3D billboards or particle systems
⚬ Basic loaders for Wavefront OBJ and MD5
⚬ 3D rendering API with materials and lighting system and support for loading FBX models via fbx-conv

☑ Utilities

• Custom collections, with primitive support
• Json writer and reader, with POJO (de-)serialization support
• Xml writer and reader


☑ Tools

• 2D Particle editor
• 3D Particle editor
• Texture packer
• Bitmap font generator