LibGDX – ¿Cómo Gdx.graphics.getWidth () devuelve el ancho de la superficie de visualización?

Quiero entender más sobre el mundo interior de LibGDX.

Por ejemplo dentro de Graphics.java , encuentro lo siguiente:

 /** @return the width in pixels of the display surface */ public int getWidth (); 

Sin embargo, no puedo encontrar el código fuente del método getWidth() .

¿Dónde puedo encontrar el código fuente del método getWidth() ?

2 Solutions collect form web for “LibGDX – ¿Cómo Gdx.graphics.getWidth () devuelve el ancho de la superficie de visualización?”

Hay una implementación diferente de esa interfaz para cada uno de los backends / plataformas disponibles.

  • AndroidGraphics : Para el backend Android.
  • LwjglGraphics : Para el backend de escritorio.
  • GwtGraphics : Para el backend del navegador
  • IOSGraphics : para el backend de iOS.
  • MockGraphics : para el servidor backend.
  • JglfwGraphics : para el backend de escritorio alternativo.

En el backend LWJGL, la implementación se ve así por ejemplo:

 public int getWidth () { if (canvas != null) return Math.max(1, canvas.getWidth()); else return (int)(Display.getWidth() * Display.getPixelScaleFactor()); } 

La implementación real se delega una vez más en el AWT Canvas o en el LWJGL Display.

La idea general detrás de este tipo de interfaces se puede encontrar en todas partes en LibGDX. También puede hacer código específico de la plataforma usted mismo. Se descibed en el wiki .

Desde los documentos libgdx (Graphics.java):

Esta interfaz encapsula la comunicación con el procesador gráfico. Dependiendo del hardware disponible y de la configuración actual de la aplicación, aquí se proporciona acceso a GL20 y GL30 .

Básicamente, Graphics.java representa una interfaz. El método getWidth es un método abstracto en la interfaz que debe anularse en todas las clases que implementan la interfaz.

Si desea ver el código dentro del método getWidth , debe buscar en una de las clases que implementan la interfaz gráfica.

  • Proyecto de LibGDX no puede encontrar la carpeta de activos
  • Java.lang.RuntimeException: eglSwapBuffers falló: informe EGL_SUCCESS
  • Obtención de información desde el teclado en pantalla mediante libgdx
  • ¿Qué tipo de efectos secundarios tiene libgdx numSamples?
  • Ejecución de aplicaciones Java en Android Studio
  • Márgenes y rellenos entre elementos en LibGDX
  • Manejo de colisión en Bullet a través de los archivos .g3db
  • Textura de texturepacker en LibGDX
  • ¿Libgdx es utilizable para juegos 2d?
  • Libgdx | ¿Cómo crear minimap?
  • Dibujar una línea suave
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.