CINXE.COM
libGDX - libGDX
<!doctype html> <!-- Minimal Mistakes Jekyll Theme 4.26.2 by Michael Rose Copyright 2013-2024 Michael Rose - mademistakes.com | @mmistakes Free for personal and commercial use under the MIT license https://github.com/mmistakes/minimal-mistakes/blob/master/LICENSE --> <html lang="en" class="no-js"> <head> <meta charset="utf-8"> <!-- begin _includes/seo.html --><title>libGDX - libGDX</title> <meta name="description" content="libGDX is a cross-platform Java game development framework based on OpenGL (ES) that works on Windows, Linux, macOS, Android, your browser and iOS."> <meta property="og:type" content="website"> <meta property="og:locale" content="en_US"> <meta property="og:site_name" content="libGDX"> <meta property="og:title" content=""> <meta property="og:url" content="https://libgdx.com/"> <meta property="og:description" content="libGDX is a cross-platform Java game development framework based on OpenGL (ES) that works on Windows, Linux, macOS, Android, your browser and iOS."> <meta property="og:image" content="https://libgdx.com/assets/images/index.jpg"> <link rel="canonical" href="https://libgdx.com/"> <script type="application/ld+json"> { "@context": "https://schema.org", "@type": "Person", "name": null, "url": "https://libgdx.com/" } </script> <meta name="google-site-verification" content="qc0iys9Aweas1z8EhICO-0Ohwh6Iq1GDV6K75e0ToO8" /> <!-- end _includes/seo.html --> <link href="/feed.xml" type="application/atom+xml" rel="alternate" title="libGDX Feed"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <script type="text/javascript"> document.documentElement.className = document.documentElement.className.replace(/\bno-js\b/g, '') + ' js '; window.enable_copy_code_button = true; </script> <link rel="stylesheet" href="/assets/css/main.css"> <meta name="color-scheme" content="light dark"> <style> @import url("/assets/css/main2.css") (prefers-color-scheme: dark); </style> <link rel="preload" href="https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@latest/css/all.min.css" as="style" onload="this.onload=null;this.rel='stylesheet'"> <noscript><link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@latest/css/all.min.css"></noscript> <link rel="apple-touch-icon" sizes="180x180" href="/assets/icons/apple-touch-icon.png"> <link rel="icon" type="image/png" sizes="32x32" href="/assets/icons/favicon-32x32.png"> <link rel="icon" type="image/png" sizes="16x16" href="/assets/icons/favicon-16x16.png"> <link rel="manifest" href="/assets/icons/site.webmanifest"> <link rel="mask-icon" href="/assets/icons/safari-pinned-tab.svg" color="#5bbad5"> <link rel="shortcut icon" href="/assets/icons/favicon.ico"> <meta name="msapplication-TileColor" content="#da532c"> <meta name="msapplication-config" content="/assets/icons/browserconfig.xml"> <meta name="theme-color" content="#ffffff"> </head> <body class="layout--splash"> <nav class="skip-links"> <ul> <li><a href="#site-nav" class="screen-reader-shortcut">Skip to primary navigation</a></li> <li><a href="#main" class="screen-reader-shortcut">Skip to content</a></li> <li><a href="#footer" class="screen-reader-shortcut">Skip to footer</a></li> </ul> </nav> <div class="masthead"> <div class="masthead__inner-wrap"> <div class="masthead__menu"> <nav id="site-nav" class="greedy-nav"> <a class="site-logo" href="/"> <picture> <source srcset="/assets/brand/logo_dark.svg" media="(prefers-color-scheme: dark)"> <img src="/assets/brand/logo.svg" alt=" "> </picture> </a> <a class="site-title" href="/"> </a> <ul class="visible-links"><li class="masthead__menu-item"> <a href="/news/" >News</a> </li><li class="masthead__menu-item"> <a href="/features/" >Features</a> </li><li class="masthead__menu-item"> <a href="/showcase/" >Showcase</a> </li><li class="masthead__menu-item"> <a href="/dev/" >Documentation</a> </li><li class="masthead__menu-item"> <a href="/community/" >Community</a> </li></ul> <button class="greedy-nav__toggle hidden" type="button"> <span class="visually-hidden">Toggle menu</span> <div class="navicon"></div> </button> <ul class="hidden-links hidden"></ul> </nav> </div> </div> </div> <div class="initial-content"> <div class="page__hero--overlay" style="background-color: #000; background-image: linear-gradient(rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.1)), url('/assets/images/index.jpg');" > <div class="wrapper"> <h1 id="page-title" class="page__title" itemprop="headline"> libGDX </h1> <p class="page__lead">libGDX is a cross-platform Java game development framework based on OpenGL (ES) that works on Windows, Linux, macOS, Android, your browser and iOS. </p> <p> <a href="/dev/" class="btn btn--light-outline btn--large">Get started</a> </p> </div> <span class="page__hero-caption">Photo credit: <a href="https://store.steampowered.com/app/249630/Delver/"><strong>Delver by Priority Interrupt</strong></a> </span> </div> <div id="main" role="main"> <article class="splash" itemscope itemtype="https://schema.org/CreativeWork"> <meta itemprop="description" content="libGDX is a cross-platform Java game development framework based on OpenGL (ES) that works on Windows, Linux, macOS, Android, your browser and iOS."> <section class="page__content" itemprop="text"> <style> .splash { max-width: 1060px; margin: 0 auto; } .page__title { display: none; } .intro_text .archive__item-body { max-width: 700px; width: auto; } </style> <div class="intro_text"> <div class="feature__wrapper"> <div class="feature__item--center"> <div class="archive__item"> <div class="archive__item-body"> <div class="archive__item-excerpt"> <p><em>libGDX provides a well-tried and robust environment for rapid prototyping and fast iterations. libGDX does not force a specific design or coding style on you; it rather gives you the freedom to create a game the way you prefer.</em> <!-- Place this tag where you want the button to render. --> <br /><br /><a class="github-button" href="https://github.com/libgdx/libgdx" data-size="large" data-show-count="true" aria-label="Star libgdx/libgdx on GitHub">Star</a> <a class="github-button" href="https://github.com/libgdx/libgdx/fork" data-icon="octicon-repo-forked" data-size="large" data-show-count="true" aria-label="Fork libgdx/libgdx on GitHub">Fork</a></p> </div> </div> </div> </div> </div> </div> <div style="max-width: 600px !important; margin-left: auto; margin-right: auto;"> <div class="carousel__holder"> <div class="carousel"> <input class="carousel__activator" type="radio" name="carousel" id="a" checked="checked" /> <input class="carousel__activator" type="radio" name="carousel" id="b" /> <input class="carousel__activator" type="radio" name="carousel" id="c" /> <input class="carousel__activator" type="radio" name="carousel" id="d" /> <input class="carousel__activator" type="radio" name="carousel" id="e" /> <input class="carousel__activator" type="radio" name="carousel" id="f" /> <div class="carousel__controls"> <label class="carousel__control carousel__control--backward" for="f"></label> <label class="carousel__control carousel__control--forward" for="b"></label> </div> <div class="carousel__controls"> <label class="carousel__control carousel__control--backward" for="a"></label> <label class="carousel__control carousel__control--forward" for="c"></label> </div> <div class="carousel__controls"> <label class="carousel__control carousel__control--backward" for="b"></label> <label class="carousel__control carousel__control--forward" for="d"></label> </div> <div class="carousel__controls"> <label class="carousel__control carousel__control--backward" for="c"></label> <label class="carousel__control carousel__control--forward" for="e"></label> </div> <div class="carousel__controls"> <label class="carousel__control carousel__control--backward" for="d"></label> <label class="carousel__control carousel__control--forward" for="f"></label> </div> <div class="carousel__controls"> <label class="carousel__control carousel__control--backward" for="e"></label> <label class="carousel__control carousel__control--forward" for="a"></label> </div> <div class="carousel__track"> <ul> <li class="carousel__slide" style="background-image: url('assets/images/index_showcase/game0.png');"> <div class="overlay-fade-content" style="height: 100%;"> <a href="https://store.steampowered.com/app/546430/Pathway/">Pathway <br/>by Robotality</a> </div> </li> <li class="carousel__slide" style="background-image: url('assets/images/index_showcase/game1.png');"> <div class="overlay-fade-content" style="height: 100%;"> <a href="https://store.steampowered.com/app/1290780/Residual/">Residual <br/>by Orangepixel</a> </div> </li> <li class="carousel__slide" style="background-image: url('assets/images/index_showcase/game2.png');"> <div class="overlay-fade-content" style="height: 100%;"> <a href="https://store.steampowered.com/app/979110/Space_Haven/">Space Haven <br/>by Bugbyte Ltd.</a> </div> </li> <li class="carousel__slide" style="background-image: url('assets/images/index_showcase/game3.png');"> <div class="overlay-fade-content" style="height: 100%;"> <a href="https://store.steampowered.com/app/249630/Delver/">Delver <br/>by Priority Interrupt</a> </div> </li> <li class="carousel__slide" style="background-image: url('assets/images/index_showcase/game4.png');"> <div class="overlay-fade-content" style="height: 100%;"> <a href="https://store.steampowered.com/app/1290750/Transfinite_Dungeon/">Transfinite Dungeon <br/>by icefill</a> </div> </li> <li class="carousel__slide" style="background-image: url('assets/images/index_showcase/game5.png');"> <div class="overlay-fade-content" style="height: 100%;"> <a href="https://store.steampowered.com/app/1338220/Forsaken_Portals/">Forsaken Portals <br/>by Pottgames</a> </div> </li> </ul> </div> <div class="carousel__indicators"> <label class="carousel__indicator" for="a"></label> <label class="carousel__indicator" for="b"></label> <label class="carousel__indicator" for="c"></label> <label class="carousel__indicator" for="d"></label> <label class="carousel__indicator" for="e"></label> <label class="carousel__indicator" for="f"></label> </div> </div> </div> <style> .carousel__holder {width: 100%; position: relative; padding-bottom: 337px; margin: 1rem 0 1rem;} .carousel { height: 100%; width: 100%; overflow: hidden; text-align: center; position: absolute; padding: 0; } .carousel__controls, .carousel__activator { display: none; } .carousel__activator:nth-of-type(1):checked ~ .carousel__track { -webkit-transform: translateX(-000%); transform: translateX(-000%); } .carousel__activator:nth-of-type(1):checked ~ .carousel__slide:nth-of-type(1) { transition: opacity 0.5s, -webkit-transform 0.5s; transition: opacity 0.5s, transform 0.5s; transition: opacity 0.5s, transform 0.5s, -webkit-transform 0.5s; top: 0; left: 0; right: 0; opacity: 1; -webkit-transform: scale(1); transform: scale(1); } @media (prefers-reduced-motion) { .carousel__activator:nth-of-type(1):checked ~ .carousel__slide:nth-of-type(1) { transition: none; } } .carousel__activator:nth-of-type(1):checked ~ .carousel__controls:nth-of-type(1) { display: block; opacity: 1; } .carousel__activator:nth-of-type(1):checked ~ .carousel__indicators .carousel__indicator:nth-of-type(1) { opacity: 1; } .carousel__activator:nth-of-type(2):checked ~ .carousel__track { -webkit-transform: translateX(-100%); transform: translateX(-100%); } .carousel__activator:nth-of-type(2):checked ~ .carousel__slide:nth-of-type(2) { transition: opacity 0.5s, -webkit-transform 0.5s; transition: opacity 0.5s, transform 0.5s; transition: opacity 0.5s, transform 0.5s, -webkit-transform 0.5s; top: 0; left: 0; right: 0; opacity: 1; -webkit-transform: scale(1); transform: scale(1); } @media (prefers-reduced-motion) { .carousel__activator:nth-of-type(2):checked ~ .carousel__slide:nth-of-type(2) { transition: none; } } .carousel__activator:nth-of-type(2):checked ~ .carousel__controls:nth-of-type(2) { display: block; opacity: 1; } .carousel__activator:nth-of-type(2):checked ~ .carousel__indicators .carousel__indicator:nth-of-type(2) { opacity: 1; } .carousel__activator:nth-of-type(3):checked ~ .carousel__track { -webkit-transform: translateX(-200%); transform: translateX(-200%); } .carousel__activator:nth-of-type(3):checked ~ .carousel__slide:nth-of-type(3) { transition: opacity 0.5s, -webkit-transform 0.5s; transition: opacity 0.5s, transform 0.5s; transition: opacity 0.5s, transform 0.5s, -webkit-transform 0.5s; top: 0; left: 0; right: 0; opacity: 1; -webkit-transform: scale(1); transform: scale(1); } @media (prefers-reduced-motion) { .carousel__activator:nth-of-type(3):checked ~ .carousel__slide:nth-of-type(3) { transition: none; } } .carousel__activator:nth-of-type(3):checked ~ .carousel__controls:nth-of-type(3) { display: block; opacity: 1; } .carousel__activator:nth-of-type(3):checked ~ .carousel__indicators .carousel__indicator:nth-of-type(3) { opacity: 1; } .carousel__activator:nth-of-type(4):checked ~ .carousel__track { -webkit-transform: translateX(-300%); transform: translateX(-300%); } .carousel__activator:nth-of-type(4):checked ~ .carousel__slide:nth-of-type(4) { transition: opacity 0.5s, -webkit-transform 0.5s; transition: opacity 0.5s, transform 0.5s; transition: opacity 0.5s, transform 0.5s, -webkit-transform 0.5s; top: 0; left: 0; right: 0; opacity: 1; -webkit-transform: scale(1); transform: scale(1); } @media (prefers-reduced-motion) { .carousel__activator:nth-of-type(4):checked ~ .carousel__slide:nth-of-type(4) { transition: none; } } .carousel__activator:nth-of-type(4):checked ~ .carousel__controls:nth-of-type(4) { display: block; opacity: 1; } .carousel__activator:nth-of-type(4):checked ~ .carousel__indicators .carousel__indicator:nth-of-type(4) { opacity: 1; } .carousel__activator:nth-of-type(5):checked ~ .carousel__track { -webkit-transform: translateX(-400%); transform: translateX(-400%); } .carousel__activator:nth-of-type(5):checked ~ .carousel__slide:nth-of-type(5) { transition: opacity 0.5s, -webkit-transform 0.5s; transition: opacity 0.5s, transform 0.5s; transition: opacity 0.5s, transform 0.5s, -webkit-transform 0.5s; top: 0; left: 0; right: 0; opacity: 1; -webkit-transform: scale(1); transform: scale(1); } @media (prefers-reduced-motion) { .carousel__activator:nth-of-type(5):checked ~ .carousel__slide:nth-of-type(5) { transition: none; } } .carousel__activator:nth-of-type(5):checked ~ .carousel__controls:nth-of-type(5) { display: block; opacity: 1; } .carousel__activator:nth-of-type(5):checked ~ .carousel__indicators .carousel__indicator:nth-of-type(5) { opacity: 1; } .carousel__activator:nth-of-type(6):checked ~ .carousel__track { -webkit-transform: translateX(-500%); transform: translateX(-500%); } .carousel__activator:nth-of-type(6):checked ~ .carousel__slide:nth-of-type(6) { transition: opacity 0.5s, -webkit-transform 0.5s; transition: opacity 0.5s, transform 0.5s; transition: opacity 0.5s, transform 0.5s, -webkit-transform 0.5s; top: 0; left: 0; right: 0; opacity: 1; -webkit-transform: scale(1); transform: scale(1); } @media (prefers-reduced-motion) { .carousel__activator:nth-of-type(6):checked ~ .carousel__slide:nth-of-type(6) { transition: none; } } .carousel__activator:nth-of-type(6):checked ~ .carousel__controls:nth-of-type(6) { display: block; opacity: 1; } .carousel__activator:nth-of-type(6):checked ~ .carousel__indicators .carousel__indicator:nth-of-type(6) { opacity: 1; } .overlay-fade-content:hover { opacity: 1; background-color: rgba(255,255,255,0.4); transition: all 0.25s ease-in; } .overlay-fade-content { opacity: 0; background-color: rgba(255,255,255,0); } .overlay-fade-content a { box-sizing: border-box; text-decoration: none; display: block; color: #eeeeee; background-color: #ff3b05; border-radius: 3px; text-align: center; margin: auto; left: 0; right: 0; top: 0; bottom: 0; width: 200px; height: 60px; line-height: 25px; position: absolute; font-size: 14px; font-weight: bold; padding-top: 5px; padding-bottom: 5px; } .carousel__control { height: 30px; width: 30px; margin-top: -15px; top: 50%; position: absolute; display: block; cursor: pointer; border-width: 5px 5px 0 0; border-style: solid; border-color: #fafafa ; opacity: 0.35; opacity: 1; outline: 0; z-index: 3; } .carousel__control:hover { opacity: 1; } .carousel__control--backward { left: 20px; -webkit-transform: rotate(-135deg); transform: rotate(-135deg); } .carousel__control--forward { right: 20px; -webkit-transform: rotate(45deg); transform: rotate(45deg); } .carousel__indicators { position: absolute; bottom: 20px; width: 100%; text-align: center; } .carousel__indicator { height: 15px; width: 15px; border-radius: 100%; display: inline-block; z-index: 2; cursor: pointer; opacity: 0.35; margin: 0 2.5px 0 2.5px; } .carousel__indicator:hover { opacity: 0.75; } .carousel__track { position: absolute; top: 0; right: 0; bottom: 0; left: 0; padding: 0; margin: 0; transition: -webkit-transform 0.5s ease 0s; transition: transform 0.5s ease 0s; transition: transform 0.5s ease 0s, -webkit-transform 0.5s ease 0s; } .carousel__track .carousel__slide { display: block; top: 0; left: 0; right: 0; opacity: 1; } .carousel__track .carousel__slide:nth-of-type(1) { -webkit-transform: translateX(000%); transform: translateX(000%); } .carousel__track .carousel__slide:nth-of-type(2) { -webkit-transform: translateX(100%); transform: translateX(100%); } .carousel__track .carousel__slide:nth-of-type(3) { -webkit-transform: translateX(200%); transform: translateX(200%); } .carousel__track .carousel__slide:nth-of-type(4) { -webkit-transform: translateX(300%); transform: translateX(300%); } .carousel__track .carousel__slide:nth-of-type(5) { -webkit-transform: translateX(400%); transform: translateX(400%); } .carousel__track .carousel__slide:nth-of-type(6) { -webkit-transform: translateX(500%); transform: translateX(500%); } .carousel__slide { height: 100%; position: absolute; opacity: 0; overflow: hidden; } .carousel__slide .overlay {height: 100%;} .carousel--thumb .carousel__indicator { height: 30px; width: 30px; } .carousel__indicator { background-color: #fafafa ; } .carousel__slide:nth-of-type(1), .carousel--thumb .carousel__indicators .carousel__indicator:nth-of-type(1) { background-size: cover; background-position: center; } .carousel__slide:nth-of-type(2), .carousel--thumb .carousel__indicators .carousel__indicator:nth-of-type(2) { background-size: cover; background-position: center; } .carousel__slide:nth-of-type(3), .carousel--thumb .carousel__indicators .carousel__indicator:nth-of-type(3) { background-size: cover; background-position: center; } .carousel__slide:nth-of-type(4), .carousel--thumb .carousel__indicators .carousel__indicator:nth-of-type(4) { background-size: cover; background-position: center; } .carousel__slide:nth-of-type(5), .carousel--thumb .carousel__indicators .carousel__indicator:nth-of-type(5) { background-size: cover; background-position: center; } .carousel__slide:nth-of-type(6), .carousel--thumb .carousel__indicators .carousel__indicator:nth-of-type(6) { background-size: cover; background-position: center; } </style> <script> function isVisible(el) { while (el) { if (el === document) { return true; } var $style = window.getComputedStyle(el, null); if (!el) { return false; } else if (!$style) { return false; } else if ($style.display === 'none') { return false; } else if ($style.visibility === 'hidden') { return false; } else if (+$style.opacity === 0) { return false; } else if (($style.display === 'block' || $style.display === 'inline-block') && $style.height === '0px' && $style.overflow === 'hidden') { return false; } else { return $style.position === 'fixed' || isVisible(el.parentNode); } } } if (!window.matchMedia('(prefers-reduced-motion: reduce)').matches) { setInterval(function(){ var j=0; var elements = document.querySelectorAll('.carousel__control--forward'); for(i=(elements.length - 1);i>-1;i--) { if(isVisible(elements[i])) j=i; } elements[j].click(); },7000); } </script> </div> <div class="feature__wrapper"> <div class="feature__item--center"> <div class="archive__item"> <div class="archive__item-body"> <div class="archive__item-excerpt"> <p>Head over to our showcase section to see some games!</p> </div> <p><a href="/showcase/" class="btn btn--primary">Show me more</a></p> </div> </div> </div> </div> <div class="feature__wrapper"> <div class="feature__item"> <div class="archive__item"> <div class="archive__item-body"> <h2 class="archive__item-title">Cross Platform</h2> <div class="archive__item-excerpt"> <p>Publish your games on Windows, macOS, Linux (including the RPi!), Android, iOS, and HTML5, all with the <a href="/features/">same code base</a>.</p> </div> </div> </div> </div> <div class="feature__item"> <div class="archive__item"> <div class="archive__item-body"> <h2 class="archive__item-title">Open Source</h2> <div class="archive__item-excerpt"> <p>libGDX is licensed under Apache 2.0 and maintained by the community. <a href="/dev/#contributing-to-libgdx">Contribute today!</a></p> </div> </div> </div> </div> <div class="feature__item"> <div class="archive__item"> <div class="archive__item-body"> <h2 class="archive__item-title">Feature Packed</h2> <div class="archive__item-excerpt"> <p>libGDX comes with <a href="/features/">batteries included</a>. Write 2D or 3D games and let libGDX worry about low-level details.</p> </div> </div> </div> </div> </div> <div class="feature__wrapper"> <div class="feature__item"> <div class="archive__item"> <div class="archive__item-body"> <h2 class="archive__item-title">Super Fast</h2> <div class="archive__item-excerpt"> <p>Heavy emphasis is put on avoiding garbage collection for ART/JavaScript by careful API design and the use of custom collections.</p> </div> </div> </div> </div> <div class="feature__item"> <div class="archive__item"> <div class="archive__item-body"> <h2 class="archive__item-title">Well Proven</h2> <div class="archive__item-excerpt"> <p>libGDX is a well proven and reliable framework with a sound base and <a href="/wiki/">documentation</a>. Furthermore, there are <a href="/showcase/">plenty of games</a> built on top of libGDX, many of which are open source.</p> </div> </div> </div> </div> <div class="feature__item"> <div class="archive__item"> <div class="archive__item-body"> <h2 class="archive__item-title">Active Community</h2> <div class="archive__item-excerpt"> <p>Get great support from a very welcoming <a href="/community/">community</a> of game and application developers or take a look at our extensive <a href="https://github.com/rafaskb/awesome-libgdx#readme">third-party ecosystem</a>.</p> </div> </div> </div> </div> </div> <br/> <div class="feature__wrapper"> <div class="feature__item--left"> <div class="archive__item"> <div class="archive__item-teaser"> <img src="/assets/images/update.jpeg" alt="Latest version"> </div> <div class="archive__item-body"> <h2 class="archive__item-title">libGDX 1.13.1</h2> <div class="archive__item-excerpt"> <p> <!--If you are looking for past changelogs, check out this page.Hot off the press: libGDX 1.13.1 brings a few pressing bugfixes as well as a couple of interesting new features. Check out the full list below to find out mo...--> We are proud to present a new release of libGDX: version 1.13.1! </p> </div> <p><a href="/news/2025/01/gdx-1-13-1" class="btn btn--primary">See the full changelog</a></p> </div> </div> </div> </div> <div class="feature__wrapper"> <div class="feature__item--right"> <div class="archive__item"> <div class="archive__item-teaser"> <img src="/assets/images/discord.svg" alt="Discord"> </div> <div class="archive__item-body"> <h2 class="archive__item-title">The libGDX Community</h2> <div class="archive__item-excerpt"> <p>libGDX has a very active community on various platforms, including Discord, Reddit and Stack Overflow. If you are looking for a place to start, our Discord server is most definitely the right place.</p> </div> <p><a href="/community/" class="btn btn--primary">Find out more</a></p> </div> </div> </div> </div> <div class="feature__wrapper"> <div class="feature__item--left"> <div class="archive__item"> <div class="archive__item-teaser"> <img src="/assets/images/jams.jpeg" alt="Game Jams"> </div> <div class="archive__item-body"> <h2 class="archive__item-title">Game Jams</h2> <div class="archive__item-excerpt"> <p>Our community regularly offers game jams for libGDX centered around different themes. These are ideal opportunities to get to know both libGDX and our community.</p> </div> <p><a href="/community/jams/" class="btn btn--primary">Read More</a></p> </div> </div> </div> </div> <br/> <h1>Latest News</h1> <div class="grid__wrapper"> <div class="grid__item"> <article class="archive__item" itemscope itemtype="https://schema.org/CreativeWork"> <div class="archive__item-teaser"> <img src="/assets/images/posts/2025-03-10/header.jpg" alt=""> </div> <h2 class="archive__item-title no_toc" itemprop="headline"> <a href="/news/2025/03/jam-march-2025" rel="permalink">libGDX Jam March 2025 </a> </h2> <p class="page__meta"> <span class="page__meta-date"> <i class="far fa-calendar-alt" aria-hidden="true"></i> <time datetime="2025-03-10T00:00:00+00:00">March 10, 2025</time> </span> <span class="page__meta-sep"></span> </p> <p class="archive__item-excerpt" itemprop="description">With our 32nd collaboration, the libGDX Jam continues the time-honoured tradition of making awesome games using the best framework out there. We encourage ca...</p> </article> </div> <div class="grid__item"> <article class="archive__item" itemscope itemtype="https://schema.org/CreativeWork"> <div class="archive__item-teaser"> <img src="/assets/images/update.jpeg" alt=""> </div> <h2 class="archive__item-title no_toc" itemprop="headline"> <a href="/news/2025/01/gdx-1-13-1" rel="permalink">libGDX 1.13.1 </a> </h2> <p class="page__meta"> <span class="page__meta-date"> <i class="far fa-calendar-alt" aria-hidden="true"></i> <time datetime="2025-01-08T00:00:00+00:00">January 8, 2025</time> </span> <span class="page__meta-sep"></span> </p> <p class="archive__item-excerpt" itemprop="description">We are proud to present a new release of libGDX: version 1.13.1! </p> </article> </div> <div class="grid__item"> <article class="archive__item" itemscope itemtype="https://schema.org/CreativeWork"> <div class="archive__item-teaser"> <img src="/assets/images/posts/2024-12-10/header.jpg" alt=""> </div> <h2 class="archive__item-title no_toc" itemprop="headline"> <a href="/news/2024/12/jam-december-2024" rel="permalink">libGDX Jam December 2024 </a> </h2> <p class="page__meta"> <span class="page__meta-date"> <i class="far fa-calendar-alt" aria-hidden="true"></i> <time datetime="2024-12-10T00:00:00+00:00">December 10, 2024</time> </span> <span class="page__meta-sep"></span> </p> <p class="archive__item-excerpt" itemprop="description">With our 31st collaboration, the libGDX Jam continues the time-honoured tradition of making awesome games using the best framework out there. We encourage ca...</p> </article> </div> <div class="grid__item"> <article class="archive__item" itemscope itemtype="https://schema.org/CreativeWork"> <div class="archive__item-teaser"> <img src="/assets/images/update.jpeg" alt=""> </div> <h2 class="archive__item-title no_toc" itemprop="headline"> <a href="/news/2024/10/gdx-1-13" rel="permalink">libGDX 1.13.0 </a> </h2> <p class="page__meta"> <span class="page__meta-date"> <i class="far fa-calendar-alt" aria-hidden="true"></i> <time datetime="2024-10-17T00:00:00+00:00">October 17, 2024</time> </span> <span class="page__meta-sep"></span> </p> <p class="archive__item-excerpt" itemprop="description">We are proud to present a new release of libGDX: version 1.13.0! </p> </article> </div> </div> <script async defer src="/assets/js/buttons.js"></script> </section> </article> </div> </div> <div id="footer" class="page__footer"> <footer> <!-- start custom footer snippets --> <!-- end custom footer snippets --> <div class="page__footer-follow"> <ul class="social-icons"> <li><a href="https://github.com/libgdx/libgdx" rel="nofollow noopener noreferrer"><i class="fab fa-fw fa-github" aria-hidden="true"></i> GitHub</a></li> <li><a href="/community/discord/" rel="nofollow noopener noreferrer"><i class="fab fa-fw fa-discord" aria-hidden="true"></i> Discord</a></li> <li><a href="/wiki/" rel="nofollow noopener noreferrer"><i class="fas fa-fw fa-link" aria-hidden="true"></i> Wiki</a></li> <li><a href="https://www.patreon.com/libgdx" rel="nofollow noopener noreferrer"><i class="fab fa-fw fa-patreon" aria-hidden="true"></i> Patreon</a></li> <li><a href="/feed.xml"><i class="fas fa-fw fa-rss-square" aria-hidden="true"></i> Feed</a></li> </ul> </div> <div class="page__footer-copyright">© 2025 libGDX • <a href="/legal/">Legal</a> • <a href="/history/">History</a> • <a href="/brand/">Branding Guidelines</a> </div> </footer> </div> <script src="/assets/js/main.min.js"></script> </body> </html>