Comprender libgdx

Entiendo que es un marco; aún más, una biblioteca de desarrollo de juegos multiplataforma de código abierto. Fui alpágina de inicio de libgdx y seguí las instrucciones en el video tutorial. Después de configurar correctamente mi proyecto, pude ejecutar el proyecto predeterminado my-gdx-game en las múltiples plataformas compatibles. Genial, bien y elegante ... ¿y ahora qué?

He estado rastreando los foros, wikis, javadocs y muchos más sitios en busca de procedimientos sencillos y decentes. Desafortunadamente no pude encontrar ninguno, la mayoría de la ayuda supone que tienes un conocimiento básico de esta biblioteca.

Siento que el video tutorial me mostró cómo configurar el proyecto correctamente, mojando efectivamente mis pies, luego asumí que sabía nadar y me dejó a 300 millas en el mar o algo así. Tengo problemas para digerir la biblioteca, porque ayer comencé a usarla, así que soy un recién llegado cuando se trata de libgdx.

Quiero mover mis proyectos existentes a libgdx, pero estoy acostumbrado a BufferedImages, JFrames y cosas así. Cualquier ayuda de los veteranos experimentados sería buena.

Por cierto, publiqué mi proyecto principal a continuación, para que me puedan guiar por lo que está sucediendo aquí ...

<code>
package com.me.mygdxgame;

import com.badlogic.gdx.ApplicationListener;
import com.badlogic.gdx.Gdx;
import com.badlogic.gdx.graphics.GL20;
import com.badlogic.gdx.graphics.OrthographicCamera;
import com.badlogic.gdx.graphics.Texture;
import com.badlogic.gdx.graphics.Texture.TextureFilter;
import com.badlogic.gdx.graphics.g2d.Sprite;
import com.badlogic.gdx.graphics.g2d.SpriteBatch;
import com.badlogic.gdx.graphics.g2d.TextureRegion;

public class MyGdxGame implements ApplicationListener {
    private OrthographicCamera camera;
    private SpriteBatch batch;
    private Texture texture;
    private Sprite sprite;

    @Override
    public void create() {

        float w = Gdx.graphics.getWidth();
        float h = Gdx.graphics.getHeight();

        camera = new OrthographicCamera(1, h/w);
        batch = new SpriteBatch();

        texture = new Texture(Gdx.files.internal("data/libgdx.png"));
        texture.setFilter(TextureFilter.Linear, TextureFilter.Linear);

        TextureRegion region = new TextureRegion(texture, 0, 0, 512, 275);

        sprite = new Sprite(region);
        sprite.setSize(0.9f, 0.9f * sprite.getHeight() / sprite.getWidth());
        sprite.setOrigin(sprite.getWidth()/2, sprite.getHeight()/2);
        sprite.setPosition(-sprite.getWidth()/2, -sprite.getHeight()/2);

        }

    @Override
    public void dispose() {
        batch.dispose();
        texture.dispose();
    }

    @Override
    public void render() {      
        Gdx.gl.glClearColor(1, 1, 1, 1);
        Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);

        batch.setProjectionMatrix(camera.combined);
        batch.begin();
        sprite.draw(batch);
        batch.end();
    }

    @Override
    public void resize(int width, int height) {
    }

    @Override
    public void pause() {
    }

    @Override
    public void resume() {
    }
}
</code>

Respuestas a la pregunta(1)

Su respuesta a la pregunta