Jump to content

Recent Forum Posts

- - - - -

TERA Anti-Aliasing Guide

Steps for easily improving TERA anti-aliasing using SweetFX, MSAA, and Downsampling for both ATI and NVidia based GPUs. Make your TERA look awesome!

TERA Anti-Aliasing Guide

This guide was originally written by Koroem on the En Masse TERA forums. All credit goes to this individual. We have cleaned up the formatting, made it easier to read and reposted it for your convenience.

Looking for the settings used in the guide preview image above? Find them here. All value settings for each option are default. This includes more settings then just AA.

Have you had good results with the following methods? Why not post your configuration in the comments for others to use as well?

TERA Anti Aliasing Introduction

Hello all. Not sure if i'll be here after the game goes free to play so I figured I'd try to do something nice for the community while I can.

If you are like me, you want Antialiasing in games. Tera has an ingame AA feature but it is bottom of the barrel at best. It is a post process AA shader much like FXAA or SMAA. However it introduces so much blur in its stock form it is a headache to use and most avoid it.

With that said, if you have an Nvidia video card I can offer you 3 solutions. Of these 3 solutions two will work with ATI/AMD. If there are other solutions for ATI/AMD that work, someone else will have to post them for me to include because I haven't owned ATI/AMD in over 12 years.

The three solutions are:

Post process injection (Beginner)

This is easy to accomplish, but due to its nature might not technically be allowed by EME. In all the discussions I have seen about it, it has never been outright said this is not permitted. This is the weakest form of AA, but it is the least performance demanding (ATI/AMD/NVIDIA compatible).

MSAA/SGSSAA/SSAA (Experienced)

This is a medium difficulty solution. MSAA stands for Multisampling Anti-Aliasing. SGSSAA stands for Sparse Grid Super Sampling Anti-Aliasing. SSAA is Super Sampling AntiAliasing. Using these methods involves using a 3rd party program to unlock features hidden in the Nvidia drivers. (Nvidia only).

Downsampling (Pro)

This is a high difficulty solution and not recommended for novice users. It involves some trial and error and tweaking that has potential to damage monitors if done incorrectly. This method is essentially a form of SSAA but is far less performance demanding. The quality of this method depends on your monitor and its maximum allowed downsampled resolution. (ATI/AMD/NVIDIA compatible).

Now that I have outlined each I will explain how to accomplish them:

Post Process Injection (ATI/AMD/NVidia Compatible)

This is easy to accomplish, but due to its nature might not technically be allowed by EME. In all the discussions I have seen about it, it has never been outright said this is not permitted. This is the weakest form of AA, but it is the least performance demanding (ATI/AMD/NVIDIA compatible). USE AT YOUR OWN RISK.

For this method you will need what is called a post process injector. Currently the one I recommend is SweetFX. What is Sweet FX? Here is a snippet from the creator himself:

What is it?

So in case you're new to SweetFX Shader Suite (or just SweetFX), it's a mod built on the InjectSMAA shader injector, that allows you to apply a suite of post processing shader effects to your games.

You may have tried another shader injection mod before, like InjectFXAA, InjectSMAA or FXAAtool. SweetFX improves upon all of these.

You can add SMAA anti-aliasing , sharpening and tweak the color, gamma , exposure and more.
It's meant to allow you to improve the look of your games and change the look and mood of it to your liking.

If you use SMAA antialiasing instead of MSAA or an even more expensive antialaliasing technique you can also make the game run faster (than with MSAA)

Effects included:

  • SMAA Anti-aliasing : Anti-aliases the image using the SMAA technique - see http://www.iryoku.com/smaa/
  • LumaSharpen : Sharpens the image, making details easier to see
  • Bloom : Makes strong lights bleed their light into their surroundings
  • HDR : Mimics an HDR tonemapped look
  • Technicolor : Makes the image look like it was processed using a three-strip Technicolor process - see http://en.wikipedia.org/wiki/Technicolor
  • Cineon DPX : Makes the image look like it was converted from film to Cineon DPX. Can be used to create a "sunny" look.
  • Lift Gamma Gain : Adjust brightness and color of shadows, midtones and highlights (avoids clipping)
  • Tonemap : Adjust gamma, exposure, saturation, bleach and defog. (may cause clipping)
  • Vibrance : Intelligently saturates (or desaturates if you use negative values) the pixels depending on their original saturation.
  • Curves : Contrast adjustments using S-curves.
  • Sepia : Sepia tones the image - see http://en.wikipedia.org/wiki/Sepia_tone#Sepia_toning
  • Vignette : Darkens the edges of the image to make it look more like it was shot with a camera lens. - see http://en.wikipedia.org/wiki/Vignetting
  • Dither : Applies dithering to simulate more colors than your monitor can display. This lessens banding artifacts - see http://en.wikipedia.org/wiki/Dithering#Digital_photography_and_image_processing
  • Splitscreen : Enables the before-and-after splitscreen comparison mode.

It works with all 32bit DirectX 9 , 10 and 11 games (and many applications).

It works with all graphics cards as long as they support at least shader model 3.

Sounds complicated but it isn't. Here is a link directly to the guru3d forums discussion on it along with download links: http://forums.guru3d.com/showthread.php?t=368880

I recommend using the SweetFX configurator because it is stupidly simple to use:
Download link is here: http://sweetfx.thelazy.net/?cat=3

To use it:
Download and extract the zip file where ever you want. Next run the program. You will have an empty window. The first task will be to add the Tera game executable to the the games list. To do this, press the "Add new game" button on the lower left side of the window.

tera-anti-aliasing-guide-1.png

Then browse to the directory with the Tera.exe file. This is usually:
C: Drive \ Program Files \ TERA \ Client \ Binaries
Click Tera.exe then open. Once you do that, Tera will be listed on the left:

tera-anti-aliasing-guide-2.png

Next on the far right of the screen click the button labeled "Add Sweet FX." This will add the configuration files to the game folder, and allow you to make all kinds of neat changes to the look of Tera or any other game you use this on.

tera-anti-aliasing-guide-3.png

Now the middle of the window will have all kinds of options the only one we are interested in at the moment is the SMAA anti aliasing. Make sure it is the only one checked, along with the check box at the bottom labeled "Automatically save on changes." The auto save feature allows you to make changes this program, then tab into Tera and test them on the fly. If you don't like them, just tab back out, make a change, and tab back in to see it instantly.

tera-anti-aliasing-guide-4.png

Once this is done, you now have basically free AA in Tera that doesn't blur the screen to hell. It isn't the best AA in the world, but it does ok. To see the before and after effects of how it helped, press the scroll lock key on your keyboard (next to Prt Scr) while in game. This will turn the effect on and off.

That is basically it. The easiest working method you will find. You can play with the settings to get a more customized look, but that is beyond the scope of this guide and you should read more on the guru3d forums link above for more info.

Post Process Injection Alternative Method(ATI/AMD/NVidia Compatible)

If you find that the SMAA method above makes the UI hard to look at, or just doesn't give enough AA for your liking, this next method might help. This is almost the same as above, but instead of using SMAA, you use the in game AA with the LUMASHARPEN shader in SweetFX. This will be a better quality AA, but will keep a little blur to help with jaggies, and will not effect the UI as much.

To do this:

Set the ingame video option Lighting Enrichment to 2

tera-anti-aliasing-guide-5.png

Then disable SMAA in SweetFX, and enable LumaSharpen:

tera-anti-aliasing-guide-6.png

That is it. A higher quality AA, that doesn't effect the UI but still retains a bit of blur on the 3d rendered portion of the screen. You can play with the highlighted setting in sweetfx called sharp_strength to get more or less sharpening to suit your tastes. By default it is set to 0.60. Raising it will add more sharpening, and reduce the blur, but will also have the adverse affect of showing up on the UI as speckle-like noise. You can also lower it to get a little blur back, helping to smooth out the jagged edges. The setting you choose here is preference. The default values will likely be ok for most people though.

FFXA - (Non-Injection Method - NVidia Only)

Also of note those familiar with the Nvidia control panel can use the FXAA option instead of the ingame AA along with Luma Sharpening. FXAA is a similar post process anti-aliasing shader as SMAA discussed above, but it uses a different method to achieve its screen anti-aliasing. Some people like SMAA, some people like FXAA. Its all preference.

About FXAA (info found here: http://www.codinghorror.com/blog/2011/12/fast-approximate-anti-aliasing-fxaa.html)

FXAA stands for Fast Approximate Anti-Aliasing, and it's an even more clever hack than MSAA, because it ignores polygons and line edges, and simply analyzes the pixels on the screen. It is a pixel shader program documented in this PDF that runs every frame in a scant millisecond or two. Where it sees pixels that create an artificial edge, it smooths them. It is, in the words of the author, "the simplest and easiest thing to integrate and use".

FXAA has two major advantages:

  1. FXAA smooths edges in all pixels on the screen, including those inside alpha-blended textures and those resulting from pixel shader effects, which were previously immune to the effects of MSAA without oddball workarounds.
  2. It's fast. Very, very fast. Version 3 of the FXAA algorithm takes about 1.3 milliseconds per frame on a $100 video card. Earlier versions were found to be double the speed of 4x MSAA, so you're looking at a modest 12 or 13 percent cost in framerate to enable FXAA -- and in return you get a considerable reduction in aliasing.

The only downside, and it is minor, is that you may see a bit of unwanted edge "reduction" inside textures or in other places. I'm not sure if it's fair to call this a downside, but FXAA can't directly be applied to older games; games have to be specifically coded to call the FXAA pixel shader before they draw the game's user interface, otherwise it will happily smooth the edges of on-screen HUD elements, too.

To clarify the above quote, FXAA can be injected into a game, or forced via drivers, the downside to this is as outlined above, it effects the HUD/UI. This can be a major negative for some people. Tera's ingame AA uses a before the hud/ui method of implementation so it doesn't effect those elements. Still some people prefer this method so I will outline it.

FXAA can be enabled in the Nvidia Driver control panel. In the manage 3d settings section, go to the Program settings tab to call up the profile for Tera. It is likely that the profile isn't listed automatically. In this case press the ADD GAME button and browse to the Tera.exe file. It is likely here for you: C: Drive \ Program Files \ TERA \ Client \ Binaries

tera-anti-aliasing-guide-7.png

Once you have the profile active in the driver control panel, simply turn on FXAA by changing the option to on.

tera-anti-aliasing-guide-8.png

That should be it. Alternatively you can also activate FXAA using nvidia inspector. Doing it this way also gives you the option of turning on a indication on the screen that tells you when FXAA is on.

tera-anti-aliasing-guide-9.png

This concludes the section on POST PROCESS INJECTION and the shared method of AA that both NVIDIA and ATI/AMD can use. Everything following this section will be Nvidia only:

MSAA/SGSSAA/SSAA - NVidia Inspector (NVidia GPU Only)

First here is a a little explanation about types of AA.

MSAA - Multisampling Antialiasing is the most common method of AA these days. It works by detecting and cleaning up the edges of objects in a 3d space. Well it was the most common until the introduction of deferred rendering engines like Unreal Engine 3 (which Tera uses). I won't go into much detail here, but basically in order for this to work in Tera, it needs to be brute forced, meaning it robs a lot of power. Depending on your resolution, even high end cards can be brought to their knees at settings of 4x.

SGSSAA - Sparse Grid Super Sampling Anti-Aliasing is kind of like super sampling. It works on the whole screen but it is actually a hack which resulted from a bug in earlier video drivers. Nvidia implemented TRSSAA as an alpha test that supersampled pixels that passed. A bug was present in one of the drivers they released for the new fermi cards that caused the alpha test to always pass and therefore apply SGSSAA to all pixels. They fixed the bug in the next release but many users said that they liked the look of full scene SGSSAA and complained about its removal. This caused nvidia to release a tool that allowed the bug to be re-enabled.

SSAA - Super Sampling Anti-Aliasing is one of the oldest methods. It basically renders the video at double, triple, or quadruple the set resolution, then shrinks the image back down to your screen. This method requires a lot of power and in games today, it isn't an ideal solution anymore. It is far too performance robbing, But it is one of the best looking methods. There is a similar way to achieve this called downsampling, which I will speak about more in another section.

You can read more about AA types here: http://naturalviolence.webs.com/nvidia.htm

Anyways on to how to use it in Tera!

This is a medium difficulty solution. MSAA stands for Multisampling Anti-Aliasing. SGSSAA stands for Sparse Grid Super Sampling Anti-Aliasing. SSAA is Super Sampling AntiAliasing. Using these methods involves using a 3rd party program to unlock features hidden in the Nvidia drivers. (Nvidia only).

The program you will need is called Nvidia inspector. It is an advanced tool that can be downloaded here: http://www.guru3d.com/files_details/nvidia_inspector_download.html

Once downloaded and run you will see a small window that gives all kinds of information about your video card. What you will want to do is click the profile configuration button on the middle right of the window next to the driver version field.

tera-anti-aliasing-guide-10.png

This will open a new window with a lot of options. It might seem overwhelming, but what we are going to do is fairly simple. First you must get to the tera profile. So in the field at the top that says _GLOBAL_DRIVER_PROFILE (Base Profile) just type the game name, in this case Tera. As you type you notice the program will narrow down the list of games using the characters you enter.

tera-anti-aliasing-guide-11.png

Once the Tera profile is selected, you want to edit the following fields:

Under Compatibility heading:

  • Antialiasing compatibility = 0x000100C5 (MSAA) or 0x000010C1 (SGSSAA)

Under Antialiasing heading:

  • Antialiasing - Behavior flags = None ( DO NOT MISS THIS SETTING)
  • Antialiasing - Mode = Override Any application settings

Those are the must have settings. Below are the settings that you must test yourself to find which is best performance and image quality wise. I wouldn't recommend anything over 4x AA of any type in UE3 engine games. It becomes far to demanding for little gain.

  • Antialiasing - Setting = Choose your setting (higher is better at cost of performance)
  • Antialiasing - Transparency Supersampling = Choose your setting (higher is better at cost of performance)

Here is an image showing you exactly where to find these settings in the list:

tera-anti-aliasing-guide-12.png

VERY IMPORTANT! Make sure to click the Apply Changes button in the upper right corner of the window! This will save your settings for use in the game!

tera-anti-aliasing-guide-13.png

I will provide a sample screen shot of my settings. Personally I use SGSSAA because I find it to be a nice balance between quality and performance, and it also helps to clean up the UI a bit since it is a full screen AA method. In order for SGSSAA to work, it must be set to the same setting as the MSAA setting. So 2x MSAA must be used with 2x SGSSAA. 4x MSAA must be used with 4x SGSSAA. ect.

tera-anti-aliasing-guide-14.png

Nvidia inspector is a great tool. There is a growing list of compatibility flags for many games that don't have AA options here: http://forums.guru3d.com/showthread.php?t=357956

Downsampling - (ATI/AMD/NVidia Compatible)

Downsampling is a method to basically render the game at a higher resolution and scale it down to fit your screen. You can think of it like super sampling. but it doesn't need a compatibility flag, and it isn't effected by post processing effects that can glitch out.

This is a high difficulty solution and is not recommended for novice users. It involves some trial and error and tweaking that has potential to damage monitors if done incorrectly. This method is essentially a form of SSAA but is far less performance demanding depending on how you set it up. The quality of this method depends on your monitor and its maximum allowed downsampled resolution. As such I will not be detailing it in full here because the process needs a lot of explanation.

I will instead link you to a well written guide on how to accomplish it:

For Nvidia GPU : http://forums.guru3d.com/showthread.php?t=346325

For AMD GPU : http://forums.guru3d.com/showthread.php?t=366244

Once you have created your custom resolution as detailed in this guide, simply select it once inside Tera using the in game options and enjoy your AA.

As an added bonus. Downsampling can be combined with the either of the two methods above at an additional performance cost. Many people combine downsampling with post processing AA such as SMAA/FXAA as provided by SweetFX. Try it out and see how it works for you.



0 Comments