Sharpening The Renderer
Dear Capsuleers,
From undocking in Jita to getting in your first Titan, beauty is found in all areas of New Eden. Today, you will be introduced to one of the new features coming in the upcoming Clear vision update: Contrast Adaptive Sharpening.
The process of image sharpening is important in most visual media. Film directors, photographers and game texture artists will use it daily to get the desired result. Using it correctly takes patience, practice, and skill, but the result can be a vastly improved image when used appropriately. When used incorrectly, over-sharpening an image will make the result look unnatural or introduce artifacts.
The main reason this happens is due to the way sharpening generally works; it adds contrast between pixels, which means it becomes particularly noticeable around edges. Quite simply, as one pixel gets brighter, the other gets darker.
The image on the left below is a normal, unedited screenshot from the existing renderer within EVE Online. On the right is the same image, adjusted by using the default ‘Sharpen’ filter twice within Adobe Photoshop, to illustrate the type of issue that can occur when sharpening is applied incorrectly. There is artifacting at the edge of the planet, the gradient has lost its smoothness and the surface of the planet is starting to look too pixelated.
While it is clear from these images that sharpening can hurt image quality if not done correctly on a 2D image, in a 3D rendered environment where the camera and ships regularly move, it looks even worse. As EVE has a significant number of areas that also have large contrast differences, such as planet surfaces, ships against space, hangars, stargates, and even weapons fire, it’s been a challenge to find a solution that fully satisfied. This means that sometimes objects look slightly blurred, out of focus, or the image looks soft.
This problem is not unique to EVE, and many other games encounter similar issues. AMD noticed this and provided a free-to-use, open-source, high-quality sharpening shader called "Contrast Adaptive Sharpening" as part of their GPUOpen FidelityFX toolkit. It is graphics card agnostic, so you will see a benefit no matter what GPU you have.
As the name suggests, Contrast Adaptive Sharpening (CAS) considers the contrast of the pixels during the sharpening process. Edges and gradients no longer suffer from the same artifact problems shown above, but it still allows for areas that have large contrast differences to be sharpened accurately.
A great example of this is moon surfaces. They have craters, surface rings, mountain ranges, and flat areas that have large contrast differences by design. CAS really shines in this situation, where it successfully allows for the subtle details created by the artists to become clearer in the final render, even with the existing post-processes turned on.
It looks equally as good on ships, where CAS brings out the subtle details of the hulls. You can see this particularly well on the Orca and Naga where paneling and decals are used:
The performance cost of this enhancement is negligible relative to pre-existing post-processing. However, it has been decided that this feature will only be enabled when the ‘Post Processing’ setting within EVE is set to ‘High’ for the moment.
Work is continuing on the DirectX 12 client which will open up even more avenues to explore in the future.
Fly safe!