CINXE.COM

Graphics - 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>Graphics - libGDX</title> <meta name="description" content="REWRITE THIS This page needs to be rewritten. Introduction The Graphics module provides information about the current device display and application window as well as information about and access to..."> <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="Graphics"> <meta property="og:url" content="https://libgdx.com/wiki/graphics/graphics"> <meta property="og:description" content="REWRITE THIS This page needs to be rewritten. Introduction The Graphics module provides information about the current device display and application window as well as information about and access to..."> <meta property="og:image" content="https://libgdx.com/assets/images/logo.png"> <link rel="canonical" href="https://libgdx.com/wiki/graphics/graphics"> <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"> <link rel="stylesheet" href="/assets/css/wiki.css"> </head> <body class="layout--wiki" dir="ltr"> <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="/wiki/"> <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="/" >Back to Main Site</a> </li><li class="masthead__menu-item"> <a href="/wiki/" >Wiki Home</a> </li></ul> <a href="/wiki/search"> <svg class="icon" width="16" height="16" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 15.99 16"> <path d="M15.5,13.12L13.19,10.8a1.69,1.69,0,0,0-1.28-.55l-0.06-.06A6.5,6.5,0,0,0,5.77,0,6.5,6.5,0,0,0,2.46,11.59a6.47,6.47,0,0,0,7.74.26l0.05,0.05a1.65,1.65,0,0,0,.5,1.24l2.38,2.38A1.68,1.68,0,0,0,15.5,13.12ZM6.4,2A4.41,4.41,0,1,1,2,6.4,4.43,4.43,0,0,1,6.4,2Z" transform="translate(-.01)"></path> </svg> </a> <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 id="main" role="main"> <header> <h1 id="page-title" class="page__title" itemprop="headline">Graphics </h1> <div class="header-meta"> <a href="https://github.com/libgdx/libgdx.github.io/commits/dev/wiki/graphics/graphics.md">View revision history</a> • <a href="https://github.com/libgdx/libgdx.github.io/edit/dev/wiki/graphics/graphics.md">Edit on GitHub</a> </div> </header> <article class="page h-entry" itemscope itemtype="https://schema.org/CreativeWork"> <div class="page__inner-wrap"> <section class="page__content e-content markdown-body" itemprop="text"> <h1 id="rewrite-this">REWRITE THIS</h1> <p>This page needs to be rewritten.</p> <h1 id="introduction">Introduction</h1> <p>The <a href="https://javadoc.io/doc/com.badlogicgames.gdx/gdx/latest/com/badlogic/gdx/Graphics.html">Graphics</a> module provides information about the current device display and application window as well as information about and access to the current OpenGL context. Specifically, information regarding screen size, pixel density, and frame-buffer properties such as color-depth, depth/stencil buffers, and anti-aliasing capabilities can all be found within this class. As with other common modules, access is provided via static fields of the <a href="https://javadoc.io/doc/com.badlogicgames.gdx/gdx/latest/com/badlogic/gdx/Gdx.html">Gdx class</a>.</p> <h1 id="opengl-context">OpenGL Context</h1> <p>A particular use of this module concerns more direct access to the current OpenGL context for lower-level commands and queries.</p> <p>The following example accesses the context in an OpenGL ES2 application to set the viewport and clear the frame and depth buffers:</p> <div class="language-java highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nc">Gdx</span><span class="o">.</span><span class="na">gl20</span><span class="o">.</span><span class="na">glViewport</span><span class="o">(</span> <span class="mi">0</span><span class="o">,</span> <span class="mi">0</span><span class="o">,</span> <span class="nc">Gdx</span><span class="o">.</span><span class="na">graphics</span><span class="o">.</span><span class="na">getWidth</span><span class="o">(),</span> <span class="nc">Gdx</span><span class="o">.</span><span class="na">graphics</span><span class="o">.</span><span class="na">getHeight</span><span class="o">()</span> <span class="o">);</span> <span class="nc">Gdx</span><span class="o">.</span><span class="na">gl20</span><span class="o">.</span><span class="na">glClearColor</span><span class="o">(</span> <span class="mi">0</span><span class="o">,</span> <span class="mi">0</span><span class="o">,</span> <span class="mi">0</span><span class="o">,</span> <span class="mi">1</span> <span class="o">);</span> <span class="nc">Gdx</span><span class="o">.</span><span class="na">gl20</span><span class="o">.</span><span class="na">glClear</span><span class="o">(</span> <span class="no">GL20</span><span class="o">.</span><span class="na">GL_COLOR_BUFFER_BIT</span> <span class="o">|</span> <span class="no">GL20</span><span class="o">.</span><span class="na">GL_DEPTH_BUFFER_BIT</span> <span class="o">);</span> </code></pre></div></div> <p>Note the use of <code class="language-plaintext highlighter-rouge">getWidth()</code> / <code class="language-plaintext highlighter-rouge">getHeight()</code> to access the current application window dimensions in setting the viewport as well as the use of constants from the <code class="language-plaintext highlighter-rouge">GL20</code> class just as one would do in a regular OpenGL program. A key advantage in libGDX is the ability to access low level functionality whenever higher level abstraction does not suffice.</p> <p>Each version of OpenGL ES is available through its own respective interface as well as a GLCommon ( <strong>that doesn’t exist, this article needs to be rewritten!</strong> ) interface for version agnostic commands. Note that use of <a href="https://javadoc.io/doc/com.badlogicgames.gdx/gdx/latest/com/badlogic/gdx/graphics/GL20.html">GL20</a> requires instructing the application to use OpenGL ES2 upon start-up.</p> <p>Access to the OpenGL Utility class ( <strong>that doesn’t exist, this article needs to be rewritten!</strong> ) is also provided, although this functionality may be better handled through Libgdx’s own <a href="https://github.com/libgdx/libgdx/tree/master/gdx/src/com/badlogic/gdx/graphics/OrthographicCamera.java">Orthographic</a> and <a href="https://github.com/libgdx/libgdx/tree/master/gdx/src/com/badlogic/gdx/graphics/PerspectiveCamera.java">Perspective</a> camera classes. There is also a simple method for querying support for named extensions in <code class="language-plaintext highlighter-rouge">supportsExtension()</code>. Just supply the name of the extension to determine support on the current device.</p> <h1 id="frame-time">Frame Time</h1> <p>One particularly useful method in the Graphics class is <code class="language-plaintext highlighter-rouge">getDeltaTime()</code>, which provides the time elapsed since the last rendered frame. This can be useful for time-based animation when frame independence is not necessary. For instance <a href="https://github.com/libgdx/libgdx/tree/master/gdx/src/com/badlogic/gdx/scenes/scene2d/Actor.java">Actor</a> or <a href="https://github.com/libgdx/libgdx/tree/master/gdx/src/com/badlogic/gdx/#gdx%2Fscenes%2Fscene2d%2Fui">UI</a> animation in a <a href="https://github.com/libgdx/libgdx/tree/master/gdx/src/com/badlogic/gdx/scenes/scene2d/Stage.java">Stage</a> instance might be controlled by a call such as the following in the application’s render method:</p> <div class="language-java highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="n">stage</span><span class="o">.</span><span class="na">act</span><span class="o">(</span> <span class="nc">Math</span><span class="o">.</span><span class="na">min</span><span class="o">(</span> <span class="nc">Gdx</span><span class="o">.</span><span class="na">graphics</span><span class="o">.</span><span class="na">getDeltaTime</span><span class="o">(),</span> <span class="mi">1</span><span class="o">/</span><span class="mi">30</span> <span class="o">)</span> <span class="o">);</span> </code></pre></div></div> <p>Notice the use of a maximum time step of 1/30 seconds. This is to avoid potentially large jerks in the resulting animation. This illustrates the fact that while <code class="language-plaintext highlighter-rouge">getDeltaTime()</code> can be useful for simple animations, it is still frame dependent and more sensitive actions such as game logic or physics simulation may benefit from <a href="https://gafferongames.com/post/fix_your_timestep/">other timing strategies</a>.</p> <p>Another useful method is <code class="language-plaintext highlighter-rouge">getFramesPerSecond()</code>, which returns a running average of the current frame-rate for simple diagnostic purposes. However for more serious profiling efforts, the use of <a href="https://github.com/libgdx/libgdx/tree/master/gdx/src/com/badlogic/gdx/graphics/FPSLogger.java">FPSLogger</a> is recommended.</p> <h1 id="platform-differences">Platform Differences</h1> <p>On the desktop, the Graphics class also provides the ability to set a window’s icon and title values. Obviously these methods have no effect on platforms which lack an icon or title.</p> <p>The methods <code class="language-plaintext highlighter-rouge">setDisplayMode()</code> and <code class="language-plaintext highlighter-rouge">setVSync()</code> set the display mode to full-screen/windowed and enable/disable vertical display sync respectively. Keep in mind these methods have effects only on certain platforms.</p> <aside class="sidebar__right"> <div class="toc"> <div class="wiki_toc__menu"> <input id="wiki_ac-toc" name="accordion-toc" type="checkbox" /> <label for="wiki_ac-toc">Toggle Menu</label> <div class="wiki_nav__items"> <h1 id="table-of-contents">Table of Contents</h1> <h2 id="getting-started">Getting Started</h2> <ul> <li><a href="/wiki/start/setup">Setting Up a Dev Environment</a></li> <li><a href="/wiki/start/project-generation">Creating Your First libGDX Project</a></li> <li><a href="/wiki/start/import-and-running">Importing &amp; Running It</a></li> <li><a href="/wiki/start/a-simple-game">A Simple Game</a></li> <li><a href="/wiki/start/simple-game-extended">Extending the Simple Game</a></li> <li><a href="/wiki/start/demos-and-tutorials">Demos &amp; Tutorials</a></li> </ul> <h2 id="developers-guide">Developer’s Guide</h2> <details><summary>The Application Framework</summary> <div> <ul> <li><a href="/wiki/app/the-application-framework">The Application Framework</a></li> <li><a href="/wiki/app/the-life-cycle">The life-cycle</a></li> <li><a href="/wiki/app/modules-overview">Modules overview</a></li> <li><a href="/wiki/app/starter-classes-and-configuration">Starter classes and configuration</a></li> <li><a href="/wiki/app/querying">Querying</a></li> <li><a href="/wiki/app/logging">Logging</a></li> <li><a href="/wiki/app/threading">Threading</a></li> <li><a href="/wiki/app/interfacing-with-platform-specific-code">Interfacing with platform specific code</a></li> </ul> </div> </details> <details><summary>Audio</summary> <div> <ul> <li><a href="/wiki/audio/audio">Audio</a></li> <li><a href="/wiki/audio/playing-pcm-audio">Playing PCM audio</a></li> <li><a href="/wiki/audio/recording-pcm-audio">Recording PCM audio</a></li> <li><a href="/wiki/audio/sound-effects">Sound effects</a></li> <li><a href="/wiki/audio/streaming-music">Streaming music</a></li> </ul> </div> </details> <details><summary>Deployment</summary> <div> <ul> <li><a href="/wiki/deployment/deploying-your-application">Deploying Your Application</a></li> <li><a href="/wiki/deployment/bundling-a-jre">Bundling a JRE</a></li> </ul> </div> </details> <details><summary>Extensions</summary> <div> <ul> <li><a href="/wiki/extensions/physics/physics">Physics</a> <ul> <li><a href="/wiki/extensions/physics/bullet/bullet-physics">Bullet Physics</a> <ul> <li><a href="/wiki/extensions/physics/bullet/bullet-wrapper-contact-callbacks">Bullet Wrapper Contact callbacks</a></li> <li><a href="/wiki/extensions/physics/bullet/bullet-wrapper-custom-classes">Bullet Wrapper Custom classes</a></li> <li><a href="/wiki/extensions/physics/bullet/bullet-wrapper-debugging">Bullet Wrapper Debugging</a></li> <li><a href="/wiki/extensions/physics/bullet/bullet-wrapper-setup">Bullet Wrapper Setup</a></li> <li><a href="/wiki/extensions/physics/bullet/bullet-wrapper-using-models">Bullet Wrapper Using models</a></li> <li><a href="/wiki/extensions/physics/bullet/bullet-wrapper-using-the-wrapper">Bullet Wrapper Using the wrapper</a></li> </ul> </li> <li><a href="/wiki/extensions/physics/box2d">Box2d</a></li> </ul> </li> <li><a href="/wiki/extensions/artificial-intelligence">Artificial Intelligence</a></li> <li><a href="/wiki/extensions/gdx-freetype">Gdx freetype</a></li> <li><a href="/wiki/extensions/gdx-pay">gdx pay</a></li> </ul> </div> </details> <p><a href="/wiki/file-handling">File handling</a></p> <details><summary>Graphics</summary> <div> <ul> <li><a href="/wiki/graphics/graphics">Graphics</a></li> <li>2D Graphics <ul> <li>Bitmap Fonts <ul> <li><a href="/wiki/graphics/2d/fonts/bitmap-fonts">Bitmap fonts</a></li> <li><a href="/wiki/graphics/2d/fonts/color-markup-language">Color Markup Language</a></li> <li><a href="/wiki/graphics/2d/fonts/distance-field-fonts">Distance field fonts</a></li> </ul> </li> <li>Scene2d <ul> <li><a href="/wiki/graphics/2d/scene2d/scene2d-ui">Scene2d.ui</a></li> <li><a href="/wiki/graphics/2d/scene2d/scene2d">Scene2d</a></li> <li><a href="/wiki/graphics/2d/scene2d/skin">Skin</a></li> <li><a href="/wiki/graphics/2d/scene2d/table">Table</a></li> </ul> </li> <li><a href="/wiki/graphics/2d/2d-animation">2D Animation</a></li> <li><a href="/wiki/graphics/2d/2d-particleeffects">2D ParticleEffects</a></li> <li><a href="/wiki/graphics/2d/clipping-with-the-use-of-scissorstack">Clipping, with the use of scissorstack</a></li> <li><a href="/wiki/graphics/2d/imgui">ImGui</a></li> <li><a href="/wiki/graphics/2d/masking">Masking</a></li> <li><a href="/wiki/graphics/2d/ninepatches">Ninepatches</a></li> <li><a href="/wiki/graphics/2d/orthographic-camera">Orthographic camera</a></li> <li><a href="/wiki/graphics/2d/packing-atlases-at-runtime">Packing atlases at runtime</a></li> <li><a href="/wiki/graphics/2d/pixmaps">Pixmaps</a></li> <li><a href="/wiki/graphics/2d/spritebatch-textureregions-and-sprites">SpriteBatch, TextureRegions, and Sprites</a></li> <li><a href="/wiki/graphics/2d/texture-compression">Texture Compression</a></li> <li><a href="/wiki/graphics/2d/tile-maps">Tile maps</a></li> </ul> </li> <li><a href="/wiki/graphics/3d/3d-graphics">3D Graphics</a> <ul> <li><a href="/wiki/graphics/3d/3d-animations-and-skinning">3D animations and skinning</a></li> <li><a href="/wiki/graphics/3d/3d-particle-effects">3D Particle Effects</a></li> <li><a href="/wiki/graphics/3d/3d-picking">3D Picking</a></li> <li><a href="/wiki/graphics/3d/decals">Decals</a></li> <li><a href="/wiki/graphics/3d/importing-blender-models-in-libgdx">Importing Blender models in LibGDX</a></li> <li><a href="/wiki/graphics/3d/material-and-environment">Material and environment</a></li> <li><a href="/wiki/graphics/3d/modelbatch">ModelBatch</a></li> <li><a href="/wiki/graphics/3d/modelbuilder-meshbuilder-and-meshpartbuilder">ModelBuilder, MeshBuilder and MeshPartBuilder</a></li> <li><a href="/wiki/graphics/3d/modelcache">ModelCache</a></li> <li><a href="/wiki/graphics/3d/models">Models</a></li> <li><a href="/wiki/graphics/3d/quick-start">Quick start</a></li> <li><a href="/wiki/graphics/3d/virtual-reality">Virtual Reality (VR)</a></li> </ul> </li> <li>OpenGL Utility Classes <ul> <li><a href="/wiki/graphics/opengl-utils/frame-buffer-objects">Frame buffer objects</a></li> <li><a href="/wiki/graphics/opengl-utils/meshes">Meshes</a></li> <li><a href="/wiki/graphics/opengl-utils/rendering-shapes">Rendering shapes</a></li> <li><a href="/wiki/graphics/opengl-utils/shaders">Shaders</a></li> </ul> </li> <li><a href="/wiki/graphics/clearing-the-screen">Clearing the screen</a></li> <li><a href="/wiki/graphics/continuous-and-non-continuous-rendering">Continuous and Non Continuous Rendering</a></li> <li><a href="/wiki/graphics/integrating-libgdx-and-the-device-camera">Integrating libgdx and the device camera</a></li> <li><a href="/wiki/graphics/opengl-es-support">OpenGL (ES) Support</a></li> <li><a href="/wiki/graphics/profiling">Profiling</a></li> <li><a href="/wiki/graphics/querying-and-configuring-graphics">Querying and Configuring Graphics (monitors, display modes, vsync, display cutouts)</a></li> <li><a href="/wiki/graphics/taking-a-screenshot">Taking a Screenshot</a></li> <li><a href="/wiki/graphics/viewports">Viewports</a></li> </ul> </div> </details> <p><a href="/wiki/html5-backend-and-gwt-specifics">HTML5 Backend and GWT Specifics</a></p> <details><summary>Input Handling</summary> <div> <ul> <li><a href="/wiki/input/input-handling">Input Handling</a></li> <li><a href="/wiki/input/accelerometer">Accelerometer</a></li> <li><a href="/wiki/input/back-and-menu-key-catching">Back and menu key catching</a></li> <li><a href="/wiki/input/compass">Compass</a></li> <li><a href="/wiki/input/configuration-and-querying">Configuration and Querying</a></li> <li><a href="/wiki/input/controllers">Controllers</a></li> <li><a href="/wiki/input/cursor-visibility-and-catching">Cursor Visibility and Catching</a></li> <li><a href="/wiki/input/event-handling">Event handling</a></li> <li><a href="/wiki/input/gesture-detection">Gesture detection</a></li> <li><a href="/wiki/input/gyroscope">Gyroscope</a></li> <li><a href="/wiki/input/mouse-touch-and-keyboard">Mouse, Touch and Keyboard</a></li> <li><a href="/wiki/input/polling">Polling</a></li> <li><a href="/wiki/input/simple-text-input">Simple text input</a></li> <li><a href="/wiki/input/vibrator">Vibrator</a></li> </ul> </div> </details> <p><a href="/wiki/internationalization-and-localization">Internationalization and Localization</a></p> <details><summary>Using libGDX With Other JVM Languages</summary> <div> <ul> <li><a href="/wiki/jvm-langs/using-libgdx-with-other-jvm-languages">Using libGDX With Other JVM Languages</a></li> <li><a href="/wiki/jvm-langs/using-libgdx-with-clojure">Using libgdx with Clojure</a></li> <li><a href="/wiki/jvm-langs/using-libgdx-with-kotlin">Using libGDX with Kotlin</a></li> <li><a href="/wiki/jvm-langs/using-libgdx-with-python">Using libgdx with Python</a></li> <li><a href="/wiki/jvm-langs/using-libgdx-with-scala">Using libgdx with Scala</a></li> </ul> </div> </details> <p><a href="/wiki/managing-your-assets">Managing your assets</a></p> <details><summary>Math Utilities</summary> <div> <ul> <li><a href="/wiki/math-utils/math-utilities">Math Utilities</a></li> <li><a href="/wiki/math-utils/circles-planes-rays-etc">Circles, planes, rays, etc.</a></li> <li><a href="/wiki/math-utils/interpolation">Interpolation</a></li> <li><a href="/wiki/math-utils/path-interface-and-splines">Path interface and Splines</a></li> <li><a href="/wiki/math-utils/vectors-matrices-quaternions">Vectors, matrices, quaternions</a></li> </ul> </div> </details> <p><a href="/wiki/networking">Networking</a></p> <p><a href="/wiki/preferences">Preferences</a></p> <details><summary>Third Party Services</summary> <div> <ul> <li><a href="/wiki/third-party/admob-in-libgdx">Admob in libgdx</a></li> <li><a href="/wiki/third-party/firebase-in-libgdx">Firebase in libGDX</a></li> <li><a href="/wiki/third-party/google-mobile-ads-in-libgdx">Google Mobile Ads in Libgdx (replaces deprecated AdMob)</a></li> <li><a href="/wiki/third-party/google-play-games-services-in-libgdx">Google Play Games Services in LibGDX</a></li> <li><a href="/wiki/third-party/pollfish-in-libgdx">Pollfish in libgdx</a></li> <li><a href="/wiki/third-party/proguard-dexguard-and-libgdx">ProGuard DexGuard and libGDX</a></li> <li><a href="/wiki/third-party/smaato-in-libgdx">Smaato in libGDX</a></li> </ul> </div> </details> <details><summary>Tools</summary> <div> <ul> <li><a href="/wiki/tools/2d-particle-editor">2D Particle Editor</a></li> <li><a href="/wiki/graphics/3d/3d-particle-effects">Flame</a></li> <li><a href="/wiki/tools/hiero">Hiero</a></li> <li><a href="/wiki/tools/overlap2d">Overlap2D</a></li> <li><a href="/wiki/tools/skin-composer">Skin Composer</a></li> <li><a href="/wiki/tools/texture-packer">Texture packer</a></li> </ul> </div> </details> <details><summary>Utilities</summary> <div> <ul> <li><a href="/wiki/utils/collections">Collections</a></li> <li><a href="/wiki/utils/jnigen">jnigen</a></li> <li><a href="/wiki/utils/reading-and-writing-json">Reading and writing JSON</a></li> <li><a href="/wiki/utils/reading-and-writing-xml">Reading and writing XML</a></li> <li><a href="/wiki/utils/reflection">Reflection</a></li> <li><a href="/wiki/utils/saved-game-serialization">Saved game serialization</a></li> </ul> </div> </details> <h2 id="articles">Articles</h2> <ul> <li><a href="/wiki/articles/getting-help">Getting Help</a></li> <li><a href="/wiki/articles/external-tutorials">External Tutorials</a></li> <li><a href="/wiki/articles/coordinate-systems">Coordinate Systems</a></li> <li><a href="/wiki/articles/memory-management">Memory Management</a></li> <li><a href="/wiki/articles/updating-libgdx">Updating Your libGDX Version</a></li> <li><a href="/wiki/articles/dependency-management-with-gradle">Dependency Management with Gradle: Adding Extensions and Third-Party Libraries</a></li> <li><a href="/wiki/articles/maven-integration">Maven Integration</a></li> <li><a href="/wiki/articles/creating-a-separate-assets-project-in-eclipse">Creating Asset Project in Eclipse</a></li> <li><a href="/wiki/articles/java-development-kit-selection">Java Development Kit - Selection</a></li> <li><a href="/wiki/articles/console-support">Console Support?</a></li> </ul> </div> </div> </div> </aside> <div class="copyright_footer"> <p style="font-size: 13px;margin-bottom: 0px !important;"> <b>© 2025 libGDX</b> • This wiki is a community effort. If you find information out of date or want to add some more in-depth explanations, you are very welcome to do the necessary changes. Before contributing, please take a look at our <a href="/wiki/misc/wiki-style-guide">Wiki Style Guide</a>. <br/> <br/> <b>If you need additional help, check out our community on <a href="/community/discord/">Discord</a>!</b> </p> </div> </section> </div> </article> </div> </div> <script src="/assets/js/main.min.js"></script> </body> </html>

Pages: 1 2 3 4 5 6 7 8 9 10