Description

Updated to v1.1.0 on 2015-02-01

A simple to use FXAA (Fast Approximate Anti Aliasing) shader for your project. It is based on NVIDIA's FXAA method and as a result is very efficient. Use it to replace the default Anti Aliasing method that comes with GameMaker:Studio.

For more details on FXAA, read this Wikipedia article.

Using the shader:

Included in the package is a premade object that does post processing effects in the simplest possible way with GameMaker:Studio. Just drop it in your project and it works.

Alternate use:

Otherwise, to use the shader on something else than post processing, simply use it like this:

shader_set(sha_fxaa);
var tex = sprite_get_texture(sprite_index, image_index); // REPLACE THIS WITH THE SPRITE YOU WANT TO DRAW
shader_set_uniform_f(shader_get_uniform(sha_fxaa, "u_texel"), texture_get_texel_width(tex), texture_get_texel_height(tex));
shader_set_uniform_f(shader_get_uniform(sha_fxaa, "u_strength"), 4);
draw_self(); // REPLACE THIS WITH THE SPRITE YOU WANT TO DRAW
shader_reset();

Contributing:

The project is hosted on GitHub and open to contributions.

Keep in mind that the YYG Marketplace EULA still applies.

Patch Notes:

1.1.0

  • Added a uniform to allow the strength of the effect to be changed

End User Licence Agreement (EULA).

Version 1.1.0. Published February 2, 2015

Created with GameMaker: Studio v1.99.344

Age Rating: 4+

Average Rating

Your review

You can only review assets you've bought.


Gravatar

Nathan A 26 November 2018


Gravatar

Anonymous 20 November 2018


Gravatar

orbis s 12 July 2018


Gravatar

Associação F 23 March 2018


Gravatar

Magnus R 08 March 2018


Gravatar

Sol B 04 March 2018


Gravatar

YunSeong J 31 December 2017


Gravatar

Ali A 14 November 2017

its good

I am uses for my 3D game for mobile platforms


Gravatar

Yihang X 06 July 2017


Gravatar

Anonymous 05 March 2017


Gravatar

Christoffer K 09 February 2017

Great! Works with GameMaker Studio 2

Good to have while the one build in to gamemaker 2 does not work :)


Gravatar

Sergey P 08 August 2016

Good


Gravatar

Thiago D 28 July 2016

It does what promises

It's very easy to add this to your game. Performance: Good, How it looks: Ok-ish, some textures might be blurried on the wrong parts, but there's no perfect FXAA, it's been always a trade between more performance/best graphics.

It could have an script that can allow the developer to implement more easily, an option both FXAA and Built-in AA or noone, it would save some time for the developers, but tbh, that would just be an bonus and is not hard to do that for yourself.

Do I recommend this asset? Definitely, it works, it's nice, it's free.


Gravatar

Chreech O 11 February 2015

Not that impressive..

Well i am not here to disappoint you but this is no match for gm inbuilt display_reset() function. I ran your shader in full strength in a 3d fps game and it aided a very little to jagged edges while when i use inbuilt display_reset() at level 8 it renders the whole 3d model very precisely there by making each and every edge look smooth. However it consumes way too much power. Therefore i am looking forward towards an improved version of edge smoothing shader specially for 3d models that consume less power than GM inbuilt function or at least is compatible with other shaders unlike gm inbuilt display_reset().

Logo

Pyramind Beyond (Publisher) 23 February 2015

Thank you for taking your time to post a review!

I want to say first that running the shader at full strength has pros and cons. To put it as simple as possible, a higher strength means edges that are closer to 90° (Or 0°, 180°, 270°) will get AA'd more, but as a result angles that are closer to 45° (Or 135°, 225°, 315°) will get unnecessary blur. Find a middle ground for that value that fits your artistic vision.

The difference between the built-in AA is at which level they work. The default AA works by using extra sample whiles in the middle of the rendering process. FXAA waits for the whole scene to be rendered and then runs an edge detection algorithm and blurs those edges. It will therefor sometimes catch edges that shouldn't be AA'd but will also catch edges that conventional AA can't do.

As you said, the default AA necessitates much more power. FXAA is very efficient for the result it gives.

The main thing people usually complain about with FXAA is unwanted blur.


Gravatar

Brendan F 30 January 2015

Works great, looks great, Very easy to implement!

I tried this with my puzzle platformer. From a distance it looked really good and made all the larger sprites look really great. However my game features some sprites that are only 4 or 5 pixels tall, and my grass is only a pixel wide. These small sprites became really blurred and just looked bad. However if your game uses sensible sized assets or is in anyway 3-D this shader will make your game look a lot better than GMs built in AA. (which I don't think is even worth using)

This review was left for a previous version of this asset.

Logo

Pyramind Beyond (Publisher) 30 January 2015

Hi and thanks for your review!

To make things clear, the reason small things become blurry is because of the algorithm used. In other words, that's just what FXAA looks like.

Package contents

Loading, please wait

What is the issue?

Back to Top