Why oh why does my game look horrible?

So yeah, I'm attempting to create a 2d game using quads with transparent textures, but everything look like expletive. What gives? It looks like there's severe aliasing issues, but i'm totally lost.

It looks ok if i switch to a debug state and get close with the camera, but even then the edges look horrible.



That's supposed to be a hexagon BTW.

Maybe you don't alpha blending turned on?  I'm not sure if this is turned on by default for JME since it not that useful for 3d models.

What's alpha blending? Is there a setting somewhere? I have the Texture and Blend states set up correctly (I think):

Texture texture = TextureManager.loadTexture(
            ChainState.class.getClassLoader().getResource(
                  "assets/Hex 512.png"),
                  Texture.MinificationFilter.Trilinear,
                  Texture.MagnificationFilter.Bilinear, Image.Format.GuessNoCompression, 0.0f, true);
TextureState ts2 = DisplaySystem.getDisplaySystem().getRenderer().createTextureState();
      ts2.setTexture(texture);
      ts2.setEnabled(true);

BlendState as = DisplaySystem.getDisplaySystem().getRenderer().createBlendState();
      as.setBlendEnabled(true);
      as.setSourceFunction(BlendState.SourceFunction.SourceAlpha);
      as.setDestinationFunction(BlendState.DestinationFunction.SourceColor);
      as.setTestEnabled(true);
      as.setTestFunction(BlendState.TestFunction.GreaterThan);
      as.setEnabled(true);



did u check dxt texture compression I think they call it, is suppose to be enabled by default

No Dice, I'm already passing Image.Format.GuessNoCompression when loading the textures, so setting TextureManager.COMPRESS_BY_DEFAULT = false; makes no difference. :frowning:

You can try updateRenderState(), before rendering.

Nope, it's still looks identical. I'm using StandardGame, if that makes any difference.

DisplaySystem.getDisplaySystem().setMinSamples(4);

Still no change.

DisplaySystem.getDisplaySystem().setMinSamples(4);

seems to do absolutely nothing.

:?











WOO! I fixed it!

I was using an incorrect blend state option. I Should have been using

setDestinationFunction(BlendState.DestinationFunction.OneMinusSourceAlpha);