@Calinou said:
When performing supersampling, there is no point in going above a rendering scale factor of 2.0 because the viewport won't be displayed with mipmaps. A scale factor of 2.0 provides 4× SSAA already (2 times resolution on each axis), and it's expensive enough already :)
My game pretty much depends on solving this issue, that will make or break it as without AA it is just incredible terrible to look at.
Have you tried drawing several identical lines/polygons with lower opacity, but with slight pixel offsets? This works fairly well in my experience. I recently implemented this in another engine: https://github.com/coelckers/gzdoom/pull/1516
Simply out of curiosity, does LOD work on 2D?
That could also be an option that would also possibly save on performances, even if the impact is small, by only applying the supersampling effect to the specific sprites.
You could use the LOD to have for example the default sprite be at lets say 64x64, then a better LOD at 128x128 (for a x2 effect.), 256x256 (for a x4 effect) and so on.
This could also allow for older computers to run the game by using a crappier LOD such as 32x32 and so on.
It might take a little more work as you would need to have a high quality sprite that you'd need to scale down whilst keeping the pixels correct, but that could be a nice way to save performances to the cost of a little more disk space when exporting.
It would also allow the code and setup to remain the same with a few adjustments to include the switching of those sprites.
Otherwise, if LOD isn't in the 2D part of the engine, it could still be implemented rather easily.