LibGDX antialiasing

To smooth any line or shape use multi sampling anti aliasing

replace:
Gdx.gl.glclear()

with:
Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT | GL20.GL_DEPTH_BUFFER_BIT | (Gdx.graphics.getBufferFormat().coverageSampling?GL20.GL_COVERAGE_BUFFER_BIT_NV:0))

and for Android, open AndroidLauncher.java file and put : config.numSamples = 2 2 is a good value

for desktopsconfig.samples=3 this will do your work...


You can also put the filter in the texture itself

bg = new TextureRegion(new Texture(
            Gdx.files.internal("data/bg.png")));
//bg.getTexture().setFilter(GL_LINEAR_MIPMAP_LINEAR, GL_LINEAR);
bg.getTexture().setFilter(TextureFilter.Linear, TextureFilter.Linear); 

Set the number of samples in your Lwjgl3ApplicationConfiguration. It defaults to 0, try something higher:

final Lwjgl3ApplicationConfiguration config = new Lwjgl3ApplicationConfiguration();
int samples = 2; // you can also play around with hiher values like 4
config.setBackBufferConfig(8, 8, 8, 8, 16, 0, samples); // 8, 8, 8, 8, 16, 0 are default values