Pages

injectSMAA

Download
injectSMAA v1.2

Description
  • adds "Subpixel Morphological Antialiasing" to an application
  • is based on "injectFXAA" (written by "some dude")
  • is supposed to work only with directx 9, directx 10, directx 11, x86 applications
  • may be incompatible with any other form of antialiasing
  • may be incompatible with overlays (Steam Overlay, MSI Afterburner, Fraps, ...)
SMAA is a very efficient GPU-based MLAA implementation, capable of handling subpixel features seamlessly, and featuring an advanced pattern detection & handling mechanism.
http://www.iryoku.com/smaa/

Changelog

v1.2
  • Add: Configuration file
  • Change: Internal modularisation
  • Change: (d3d9) Improved state handling
  • Fix: (d3d10) Possible memory leak
  • Fix: (d3d9) Steam overlay via "weird_steam_hack"
v1.1
  • Fix: (d3d9) GTA4 AlphaTest issue
  • Fix: (d3d9) GTA4 DepthStencil issue
v1.0
  • Add: SMAA 1x

Older Versions
injectSMAA v1.1
injectSMAA v1.0


Screenshots (left: no antialiasing, right: smaa)

GTA4
 Halo 1
 Portal 1
Unigine Heaven (DX9)
Unigine Heaven (DX10)
Unigine Heaven (DX11)


256 Kommentare:

  1. Section 8: Prejudice has menu graphical errors:
    http://i.imgur.com/hJfHT.png
    http://i.imgur.com/nfEwf.png

    Donno if this is with all UE3 games, need some testing.

    AntwortenLöschen
  2. Tested it on TESV:Skyrim.

    Performace and image quality is really good.
    Runs at least as good as FXAA, and looks much better.

    AntwortenLöschen
  3. Any ideas why this d3d9.dll file makes my Skyrim look like this? :p

    http://img443.imageshack.us/img443/965/tesv2011113017113938.jpg

    AntwortenLöschen
    Antworten
    1. activate "weird_steam_hack" in confic file ;)

      Löschen
  4. Not sure man.
    May be faulty drivers, or maybe you are forcing another things that are not compatible with SMAA in your control panel.
    I don't even know what if you got amd or nvidia.

    AntwortenLöschen
  5. I'm using GTX 460 on driver 285.38. Not forcing any settings through nvidia cpanel. Using some mods and edited ini files slightly though but I've seen another guy having the same issue so I'm not alone. But yea I'm thinking it's either driver related, some setting or mod that causes a conflict, just wish I knew what exactly it is as this AA method seems to be the best out there atm.

    AntwortenLöschen
  6. Dieser Kommentar wurde vom Autor entfernt.

    AntwortenLöschen
  7. Didn't unfortunately fix it for me. I also tested it with other games and it worked fine. So at least the driver should be ok.

    AntwortenLöschen
  8. Also tested disabling all mods and deleted the skyrim ini config files for it to revert to default settings and tried modifying some settings in MSAA.fx without luck.

    AntwortenLöschen
  9. Not working with my Skyrim, just get a "Skyrim has stopped working" whenever I try to start it, can't even get to the main menu. Administrator or not, can't get it to work... Also disabled all Control Panel forced settings like AA etc.

    AntwortenLöschen
  10. Nice work. Any plans on implementing T2X?

    AntwortenLöschen
  11. Awesome work... tried it on Saints Row 3 and it crashes the game. Here is the log file:

    redirecting CreateDXGIFactory
    redirecting D3D11CreateDeviceAndSwapChain
    redirecting IDXGIFactory->CreateSwapChain

    AntwortenLöschen
  12. Doesn't work quite right with Sonic Generations, it runs but looks like this:
    http://shadowdane.com/public/SonicGenerations_DX9_SMAA_Bug.jpg

    AntwortenLöschen
  13. Just confirmed, it doesn't work on BF3 here either. Here is the log:

    redirecting CreateDXGIFactory1
    redirecting D3D11CreateDeviceAndSwapChain
    redirecting IDXGIFactory1->CreateSwapChain
    redirecting CreateDXGIFactory
    redirecting IDXGIFactory->CreateSwapChain
    redirecting IDXGIFactory1->CreateSwapChain
    redirecting D3D11CreateDeviceAndSwapChain
    redirecting CreateDXGIFactory1
    redirecting IDXGIFactory->CreateSwapChain
    redirecting IDXGIFactory1->CreateSwapChain

    AntwortenLöschen
  14. Found out the issues I was having, this doesn't work at all with any overlays. I had to turn off the Steam Overlay, MSI Afterburner and Fraps. Once those were turned off it worked fine.

    AntwortenLöschen
  15. Confirmed Shadowdane's comment. The injector does not seem to play nicely with other overlays.

    I was trying to use it with Skyrim. I use EVGA Precision to monitor framerate. Having that running with the injector caused the game to crash immediately on startup.

    I shut that down and while the game ran, it was significantly washed out like the screenshot RPGWiZaRD posted. Turns out that is the result of the Steam overlay. If you disable that (Right click on Skyrim in Steam Library -> Properties -> disable "Steam Community In Game") it will look as shown.

    I think FRAPs by itself works ok judging by some other people's shots, but I haven't had a chance to try myself.

    AntwortenLöschen
  16. Sweetz I love you! It was the Steam overlay for me, FRAPS works fine here though. Sweet! ;P

    AntwortenLöschen
  17. Yup I also got around to downloading FRAPS and found it works fine even though other types of overlays don't.

    I kind of miss the Steam overlay though, hopefully the developer can find a way around that problem.

    In any case this algorithm seems awesome. AA quality matches or exceeds FXAA with significantly less pronounced full screen blurring, and yet it still performs exceptionally well.

    AntwortenLöschen
  18. Here some shots of Skyrim comparing normal 4x MSAA to SMAA. The framerate is more or less meaningless, I'm completely CPU bound here and the framerate fluctuates between 42-45 even with no AA applied.

    Barely any discernible difference in sharpness (check out the inn sign closely if you want to see it), yet AA quality is pretty much exactly the same and SMAA covers edges that MSAA can't because of lighting methods (check out the sword edge). Plus, as with other post-process AA methods, you basically get transparency AA for "free"; check out the leaves/needles on the tree in the right side foreground.

    I am incredibly impressed - if they can fix the incompatibility with certain overlays, I'd be willing to accept this as a perfect replacement for MSAA in everything.

    4xMSAA: http://img39.imageshack.us/img39/1756/skyrim4xmsaa.jpg

    SMAA: http://img72.imageshack.us/img72/6568/skyrimsmaa.jpg

    AntwortenLöschen
  19. Yea it's great cuz it only affects edges as it should. FXAA is like putting a blur-filter over the entire screen and MSAA provides a little too much GPU performance overhead especially at 4-8x, 2x is not very useful. I do admit AA8x looks great but it does have quite some FPS hit in most games. This has at least MSAA4x quality IMO but with less FPS hit.

    AntwortenLöschen
  20. Ahmad Saleem : yes, it works both for NVIDIA and ATI/AMD cards.

    AntwortenLöschen
  21. Can someone upload to another server host, cant dowload from Google docs, thx

    AntwortenLöschen
  22. cant download from google docs
    reupload please

    AntwortenLöschen
  23. Nice work. :) It would be nice to see a version with T2x as Swartz already said. ;)

    Ich hab grad gsehen das du aus Deutschand kommst? :)

    AntwortenLöschen
  24. Wow super nice work dude!!!, is there any chance to add others post process effects like in the FXAA hook?, there will be awesome to add the sharpen, blur and ETC post process effects like they do there http://www.assembla.com/spaces/fxaa-pp-inject/documents with the FXAA injector :D

    And also in the future A UI for an easy customization will be really awesome ^^

    Cheers!

    AntwortenLöschen
  25. @RPGWiZaRD that whiteout/high gamma bug your getting seems to be from the steam overly or any overly for that matter minus fraps I have the same problem but not all the time

    injectSMAA 1.1
    World of Tanks = Good
    Deus Ex: Human Revolution = Good
    Super Meat Boy = Good
    Borderlands = bugged menu and hud
    GRAW = Good
    GRAW2 = Good
    Enemy Territory: Quake Wars = Good
    Limbo = Black Screen
    Risen = Good
    Company of Heroes DX10 = Good but needs some blur
    Trackmania United Forever = Good but needs stronger AA and with steam overly you get black skybox and/or land

    AntwortenLöschen
  26. @id: thank you, nice report.
    "Limbo = Black Screen" (funny, because this is the usual case with the game).
    If "Black Screen" is no pun but a bug report, I wasn't able to reproduce it. On my machine inectSMAA works but reports no visual aliasing.
    "Borderlands = bugged menu and hud" I will investigate it. Maybe this is the same issue as with "Section 8: Prejudice"(SauS).
    Also on my investigation list are "Saints Row 3", "Serious Sam HD", "Need For Speed Hot Pursuit".

    AntwortenLöschen
  27. @id: With ET:QW, do you mean that SMAA actually works with OpenGL engines? I was under the impression that it works only for DirectX games.

    Cheers,
    7

    AntwortenLöschen
  28. thanks dude, this SMAA shit works fine for me. Its way better than FXAA. I love it :)

    AntwortenLöschen
  29. holy crap how did I do that I tested Frontlines: Fuel of War but typed Enemy Territory: Quake Wars sorry about that
    So....
    Frontlines: Fuel of War = Good
    Enemy Territory: Quake Wars = Face palm

    AntwortenLöschen
  30. I tested in Dx9 games and this SMAA really do an awesome job compared to MSAA (better performance with almost same quality) and FXAA (better quality with almost same performance) but unfortunately in Dx11 games like Battlefield 3, alpha textures are more blurred compared to FXAA and theres no gain in performance.

    I noticed an issue in Crysis 2 in Dx9, where some textures and corners are flickering when using SMAA.

    Im pretty sure that if you fix those issues people are having, SMAA will be the best AA solution on the market.

    Thank you guys.

    AntwortenLöschen
  31. thanks a lot! it works very nice with assassin's creed brotherhood!

    AntwortenLöschen
  32. Andrej, wäre es möglich, das Verfahren auf OpenGL zu portieren? Ich brauche es vor allem für Doom 3, Quake 4 und The Dark Mod. Mit Bildverbesserungen wie Sikkmod oder JCDentons Mod wird das interne AA irgendwie zerschossen, und bei SMAA sollten diese Probleme nicht auftauchen. Danke im Voraus!

    Hi Andrej, is it possible to port your incjector to OpenGL (mainly for Doom 3, Quake 4 and The Dark Mod). Regular AA doesn't seem to work with mods like Sikkmod and JCDeonton's mod (on ATI cards).

    AntwortenLöschen
  33. To add to the game list:

    It works very well with STALKER: Call of Pripyat.

    :)

    AntwortenLöschen
  34. To add to the game list[2]:

    It works with Grand Theft Auto Episodes From Liberty City ( EFLC ) the change is visible but the saturation, brightness and contrast change dramatically and now the game is ugly.

    * http://imgur.com/DddQM,WM6a5,yKfFv#0
    - First and Second images, change to see the diference.

    * http://i.imgur.com/yKfFv.gif
    - Third image, the image with zoom.

    I hope that this can be fixed

    :)

    AntwortenLöschen
  35. My #1 priority is game compatibility. Unfortunately I don't have "Borderlands" (and can't get it anytime soon). However I was tweaking the injector and figured one possible cause for image corruption.
    Here is a temporary beta for you guys to test on "Borderlands" (and maybe "Section 8: Prejudice" or "EFLC"). Report whether it works or not.
    https://docs.google.com/open?id=0B-Ne94cwHPx_MzQ4Mzk5MGMtNjc0Ny00ZjViLWJkOWQtYTUxOGY2OTM2OGYx

    AntwortenLöschen
  36. Andrej Dudenhefner : please write me an email to spajdr@centrum.cz, i can offer you a way to test Borderlands. Make sure you have STEAM installed :-).

    AntwortenLöschen
  37. Amazing work on the injector!
    Any news on SMAA T2x ??

    AntwortenLöschen
  38. Andrej : i just tested Borderlands and didnt find any problems
    But one small problem that was ok with version 1.1
    Im playing Rift and no intro video is seen or loading screen with loading bar graph when moving from zone to zone, it just blackscreen, otherwise game works fine. Its not really important.

    AntwortenLöschen
  39. José: I wasn't able to reproduce the image corruption in EFLC (seems to work here). Also tried to max everything out and adjust brightness/contrast everything worked fine.
    Make sure not to have any mods, overlays curstom driver settings activated.
    spajdr: Blackscreen regression will be fixed in the next stable release. Don't use the beta.

    AntwortenLöschen
  40. Andrej: Yes, yes. Everything is fine now. Thanks.

    AntwortenLöschen
  41. I'm experiencing some crashes in saints row the third when trying to use SMAA.
    I made it work once, but the performance was terrible.
    It actually made my driver crash.

    AntwortenLöschen
  42. Hi there, it is possible for the next releases to make an easy way to change the presets low/medium/high/ultra, or at least make different releases for each profile?.

    AntwortenLöschen
  43. Alright, I got SMAA to work with saint's row the third.

    All I did was use the dx11 version and run the game in DX11.

    Works like a charm now.

    AntwortenLöschen
  44. wow, this is the best AA solution, works great in Mass Effect and Halo PC, testing with other games, great work, also if you make a guide for SMAA.h tweaking or a little app, it was amazing, hope still developing this AA

    AntwortenLöschen
  45. I would really love to see the T2x version, whitepaper shows that it is the best version of SMAA. Hope You will bring this for us soon.

    AntwortenLöschen
  46. I tried this with Battlefield 1942 (XP, DX9) and couldn't get it to work

    Shame, as that game really needs better AA!

    AntwortenLöschen
  47. Just took a look into the dll a little while ago and found that that the preset being used is SMAA_PRESET_ULTRA.

    For those wanting to edit the functions of the SMAA, go into SMAA.h with notepad or whatever and find SMAA_PRESET_ULTRA near the top of the file. Just change the values defined under it to experiment with it.

    AntwortenLöschen
  48. I heard T2x isn't possible to implement into an Injector. 2x mode maybe for games that doesn't support regular AA modes.

    AntwortenLöschen
  49. What problems does it have with the Steam overlay? I've been injecting SMAA into Just Cause 2 with the Steam overlay turned on and it ran just fine.

    AntwortenLöschen
  50. Thomas Schoof> Disable Steam overlay interface. Go to steam and check properties for the game, should appear on the first page there.

    AntwortenLöschen
  51. Dieser Kommentar wurde vom Autor entfernt.

    AntwortenLöschen
  52. Has anyone been able to get InjectSMAA working with Battlefield 3? I've tried all versions including the new v1.2. I extract the contents of the d3d10 folder to Origin Games\Battlefield 3, but when I'm in the game and press pause to activate/deactivate, there's no difference.

    AntwortenLöschen
  53. Just to be sure here..
    Is this compatible with any method of Anti aliasing?

    AntwortenLöschen
  54. Noticed it uses Shader Model 3 and that the SMAA.h file appears to support up to HLSL 4.1. Is there any advantage to having the injector use Shader Model 4.0 or 4.1?

    AntwortenLöschen
  55. Tried this in Battlefield 3. Despite the log.log getting created, I see no difference between on and off (pause button)

    AntwortenLöschen
  56. Tried it on a ATI 4850 Mobility (512mb version). Overclocked GPU with Afterburner to the desktop version (625/990 Mhz), which is perfectly stable. System is a late 2009 iMac.

    Resolution: 2560x1440 32bit color.
    Scene: Outdorr near Whiterun.
    Tweaks: uGrids=7, more grass

    Skyrim FRAPS Results:

    NOAA 35FPS (stable 30+ FPS in most areas)
    4xAA 23FPS (iMultiSample=4)
    FXAA 31FPS (FXAA provided by SkyrimLauncher)

    Injector results:

    SMAA_PRESET_HIGH 23FPS
    SMAA_PRESET_LOW 27FPS

    Dang :(

    I made sure 4xAA or FXAA were disabled while testing SMAA.

    Maybe it's better optimized for NVidia?

    Graphically speaking SMAA is a lot better than FXAA! I would totally play with it enabled if it was about the same performance or faster. FXAA makes everything blurry, and especially the grass and distant trees seen on the horizon look really crap. SMAA gives much better results.

    Hope this helps.

    AntwortenLöschen
  57. So i asked Steam Support if its Save to use with Vac ...

    and they Responded to me this ( Short )

    Its on our own risk to use and vac makes no false positives and detect only cheats they dont look over Third party tools and we need to ask the Dev of that tool if its Compatible with VAC

    .... so is it ? is it compatibel with vac ?

    AntwortenLöschen
  58. Thanks for creating this! Been using it with Shogun 2, BF3 plus bunch of other new stuff and works great. Plus looks good without the FXAA blurr.

    I too have gotten a bit of a performance hit with using Ultra preset from version 1.2 compared to 1.1 but im still better off then using MSAA.

    Havent been banned from pb or vac but i believe with pb u get a driver warning kick before banned. Maybe VAC does same.

    AntwortenLöschen
  59. @injected
    How did you get that working in BF3?

    HD6950 here, copied the DX10 contents to the games install dir, but when I press "pause" nothing changes - looks the same.

    The other FXAA Injector which lets to tweak colors does work nicely (yes i removed that before I added this one. :) )

    AntwortenLöschen
  60. Here is what i did:
    -Put DX10 SMAA 1.2 files into dir with the BF3 executable
    -Turned off Origin overlay
    -using newest beta drivers(nvidia gtx 460)
    -set preset to Ultra in injector ini.
    -turned off MSI Afterburner

    And so far its worked with every new release. Havent had any problems with steam overlay yet either.

    Hope that helps.

    AntwortenLöschen
  61. @injected

    Thanks!

    Seems to me that with my AMD 6950 it is always enabled.
    "pause/break" button will not disable/enable it.

    AntwortenLöschen
  62. Dieser Kommentar wurde vom Autor entfernt.

    AntwortenLöschen
  63. So i asked Steam Support if its Save to use with Vac ...

    and they Responded to me this ( Short )

    Its on our own risk to use and vac makes no false positives and detect only cheats they dont look over Third party tools and we need to ask the Dev of that tool if its Compatible with VAC

    .... so is it ? is it compatibel with vac ?

    answer pls from the dev ?

    AntwortenLöschen
  64. The readme contains the line "Do not use this tool while playing on anti cheat enabled servers (may be detected as a cheating measure)."
    The injector is not supposed to be used for any kind of cheating but it is definitely powerful enough to be abused.

    AntwortenLöschen
  65. Andrej, is it possible to port your incjector to OpenGL (mainly for Doom 3, Quake 4 and The Dark Mod). Regular AA doesn't seem to really work with mods like Sikkmod and JCDeonton's mod (on ATI cards).

    AntwortenLöschen
  66. @Andrej Dudenhefner
    Thanks for your work!!!

    Only problem I have in BF3 now is that I can either use SMAA Injector or the FXAA Injector which also lets me tweak saturation, bloom, etc. any chance to support their shaders? http://forums.electronicarts.co.uk/battlefield-3-pc/1454675-better-sharper-custom-fxaa-injector.html

    AntwortenLöschen
  67. Hi,

    Thank you very much for your work.

    Could you possibly add another empty technique (say technique custompostprocess) for the next version so we could do additional custom post processing please? This would be too kind.

    Thank you in advance
    Regards
    DoofDilla

    AntwortenLöschen
  68. For the next version, I'm working on an abstraction, so one can completely define the used buffers and techniques in the config file. I did not want to introduce one fixed technique, but a more general solution.

    AntwortenLöschen
  69. @Andrej

    Sounds very promising. The fixed technique was only an example but your way sounds much better and sophisticated. Thank you again for all your efforts. I'm looking forward to the next version then.

    regards
    DoofDilla

    AntwortenLöschen
  70. Tried this with Total War: Shogun 2 via steam. The log.log file generated this.

    "full path: d:\program files (x86)\steam\steamapps\common\total war shogun 2\
    redirecting CreateDXGIFactory1
    redirecting D3D11CreateDeviceAndSwapChain
    redirecting CreateDXGIFactory1
    redirecting CreateDXGIFactory1
    redirecting IDXGIFactory1->CreateSwapChain
    initialising shader environment
    Device->CreateDeferredContext failed"

    I assume it didn't work?

    AMD 5850
    Drivers 11.11a
    SMAA Injector 1.2 dx10

    AntwortenLöschen
  71. For anyone having problems using the pause button to toggle SMAA on and off in Battlefield 3, I discovered you need to disable the Origin overlay. In Origin, click the gear icon and go to settings > in game and uncheck "enable Origin in game".

    AntwortenLöschen
  72. hello everybody!! I'm very escited about the SMAA project.. I tryed it out with unigine heaven DX11 and it's really amazing.. I'm wishing to try it on crysis 2 retail DX11; so i disabled ANY AA via autoexec.cfg and copied dx10folder files to bin 32 directory inside game folder. I have a crash to desktop on startup.. any clues? i tried to change location for shader files but i had no luck.. ANY clues?

    AntwortenLöschen
  73. Anyone knows how to get Batman Arkham City to work with this? Nothing happens when I put the files in the .exe file directory.

    AntwortenLöschen
  74. Not working with Star Wars: The Old Republic. Crashes on launch or stucks on black screen. Unfortunately I did delete the log but if needed I can try once more and post (leaving the client running to avoid long queues or I would have done so already:P). (If I remember right it fails with Device->CreateDeferredContext failed)

    Regarding VAC: After further research, it is perfectly safe to use under Steam's VAC as VAC doesn't check the DX libraries (eg d3d9.dll ) for injection. VAC checks for known applications and modified game files via MD5 hashes. In the case of modified game files they are sent to Valve for inspection. I am running it on VAC enabled titles as we speak. :)

    AntwortenLöschen
  75. I would also like to suggest the renaming of the injector log for 2 reasons. One is to avoid possible future conflict (cases where games call their PE game.exe or client.exe and sorting out driver profiles comes to mind). Second is to be easily discernible. Something in the lines of smaa_i.log would make sense.

    AntwortenLöschen
  76. I read that SMAA T2x is not possible to implement in an injector, is that true? :(

    AntwortenLöschen
  77. Thanks for your great work, Andrej!

    But Triple Buffering/D3DOverrider does not work anymore when injectSMAA is used. Is there some way to fix that? Or could you maybe add an option to force Triple Buffering to injectSMAA yourself, so that D3DOverrider is not needed anymore?

    AntwortenLöschen
  78. for some reason bf3 gets dxgi.dll error at 1.2 version, but 1.1 works fine for me.

    AntwortenLöschen
  79. I love this antialiasing, but I'd really like to use it with D3D Overrider, unfortunately it's not compatible for now ... I hope you'll fix it soon !

    AntwortenLöschen
  80. thanks dude, but i can hardly find any difference with the low preset when i set it to ultra.what is the difference between them?

    AntwortenLöschen
  81. I have the same problem, D3DOverrider (triple buffering) does not work with InjectSMAA - it DOES work with the some dude tool (inject FXAA). Please see if you can fix this!

    AntwortenLöschen
  82. its unfortunate that the uploaded binaries are only 32bit

    AntwortenLöschen
  83. Are you still working on this project or have you abandoned it?

    AntwortenLöschen
  84. Still working (to partially support S2x) but it seems incompatible with my previous approach. So the code has again to be seriously redesigned.

    AntwortenLöschen
  85. The original crysis simply crashed when I open it if I try and use this (copied dx10 version to folder containing executable)

    AntwortenLöschen
  86. Hello Andrej, any news on next release? when we can expect it? :-)

    AntwortenLöschen
  87. i now have tried both injectFXAA beta 10 and injectSMAA 1.2 in need for speed hot pursuit. i do notice the added AA throughout the game. but the AA quality is still noticeably pixelated at the car selection screens--even with injectSMAA set to ultra quality. any better solutions?

    btw: i'm running the game at 1920x1200 resolution.

    AntwortenLöschen
  88. Der Kommentar wurde von einem Blog-Administrator entfernt.

    AntwortenLöschen
  89. This is the log output for Star Wars: The Old Republic

    full path: X:\Games\Star Wars-The Old Republic\swtor\RetailClient\
    redirecting CreateDevice
    initialising shader environment
    redirecting device->Reset
    initialising shader environment
    D3DXCreateEffectFromFile failed
    try to use "X:\Games\Star Wars-The Old Republic\swtor\RetailClient" for shader files

    If it is relative, the there is a subdirectory named shaders with a shader file inside..perhaps it can't find the game's shader file?

    AntwortenLöschen
  90. @Nodens: The "shader files" are "SMAA.fx" and "SMAA.h" which should be put into the suggested directory "X:\Games\Star Wars-The Old Republic\swtor\RetailClient".

    AntwortenLöschen
  91. Andrej :
    I also have these files in folder as Nodens and i got exactly same error in log.log file.
    Any suggestions what to do next?

    AntwortenLöschen
  92. The injector's shader files are all in the suggested directory. I was just taking a wild guess on why it's not working as I am unsure of the mechanism involved..

    AntwortenLöschen
  93. Hi there. It works great with League of Legends and Heroes 6, these games do not support any kind of AA from the start, so using this makes them look a lot better. Thanks a lot again.

    AntwortenLöschen
  94. This doesn't work for the game Stalker: Call of Pripyat in DX10/11 mode.

    The log has the following:

    full path: C:\Program Files (x86)\bitComposer Games\S.T.A.L.K.E.R. - Call of Pripyat\bin\
    redirecting CreateDevice
    initialising shader environment
    D3DXCreateEffectFromFile failed
    SMAA.h(237,27): warning X1519: 'SMAA_THRESHOLD' : macro redefinition
    SMAA.h(238,33): warning X1519: 'SMAA_MAX_SEARCH_STEPS' : macro redefinition
    SMAA.h(239,37): warning X1519: 'SMAA_MAX_SEARCH_STEPS_DIAG' : macro redefinition
    SMAA.h(240,32): warning X1519: 'SMAA_CORNER_ROUNDING' : macro redefinition
    SMAA.h(447,32): warning X1519: 'SMAATexture2D' : macro redefinition
    SMAA.h(448,81): warning X1519: 'SMAASampleLevelZero' : macro redefinition
    SMAA.h(449,85): warning X1519: 'SMAASampleLevelZeroPoint' : macro redefinition
    SMAA.h(450,63): warning X1519: 'SMAASample' : macro redefinition
    SMAA.h(451,73): warning X1519: 'SMAASamplePoint' : macro redefinition
    SMAA.h(452,103): warning X1519: 'SMAASampleLevelZeroOffset' : macro redefinition
    SMAA.h(453,91): warning X1519: 'SMAASampleOffset' : macro redefinition
    ID3DXEffectCompiler: There were no techniques
    ID3DXEffectCompiler: Compilation failed

    AntwortenLöschen
  95. Dieser Kommentar wurde vom Autor entfernt.

    AntwortenLöschen
  96. It seems I got InjectSMAA/FXAA tools to work with SWTOR.

    Seems that disabling the Large_Address_Aware Flag for executabe swtor.exe will enable SMAA.

    I can only guess that InjectSMAA tool has to explicitly pass the specific flag in order to work on such games that require higher memory addressing.

    AntwortenLöschen
    Antworten
    1. Interesting find. So we have to limit the game to 2GB address space. I'll take a wild guess and say that the injector can't handle pointers >2gb..and that could probably get fixed?

      Löschen
  97. Thanks Marctraider, that indeed worked! finally working SMAA in SWTOR.

    AntwortenLöschen
  98. Cause disabling the LAA flag is not a good idea, it is there for a reason. The game will probably crash once the 2GB limit is reached.

    AntwortenLöschen
  99. Yeh it can get fixed, i guess it just needs a recompile with passing the LAA flag. I havent found any crashes for now so I'm happy with it for now. But you never know :/

    AntwortenLöschen
  100. I got crash today when both of swtor.exe together had around 2.1GB RAM, so it could be related to disabled LAA.

    AntwortenLöschen
  101. Dieser Kommentar wurde vom Autor entfernt.

    AntwortenLöschen
  102. Easiest way to do it:
    http://www.techpowerup.com/forums/showthread.php?t=112556

    AntwortenLöschen
  103. Doesn't seem to be working correctly with Dead Space 2, menu looked really weird, as if the glow got multiplied ten fold, and the game stopped responding when trying to close it. So still no proper Antialiasing for Dead Space. :(

    AntwortenLöschen
  104. I noticed SMAA v2.7 with SMAA S2x & 4x was just released! Will the injector be updated to work with this?

    AntwortenLöschen
  105. Sweet, I hope it gets updated with those.

    Andrej, do you have any plans on making your project open source? The reason I ask is because all of the injectors so far, including the FXAA ones, have been closed source.

    It seems to me like the more people who have access to the code, the more that could be contributed by people. The more people looking through the code the quicker various problems could be solved.
    Would you please consider this?

    AntwortenLöschen
  106. @Shadowdane: It is due to the incompatibility of the previously designed injector (v1.3) and the S2x mode, that the new version is not out yet. However it is planned to support S2x (with DX10/11 games which already have support for MSAA2x, which is required).
    Basically it was planned to abstract from fixed shader injection and make it possible to do more.
    @Swartz: If I knew of the S2x injecting incompatibility with my idea (not incompatibility in general) before, I'd have published the sources earlier. Right now it is an noncompiling mess which I have no time to fix due to other projects in real life. I can't say for sure when the next stable version (maybe along with the source) will be released. But it won't be soon.

    AntwortenLöschen
  107. Hey Andrej do you know why the SMAA injector only works when with SWTOR when we disable the LAA (Large Address Aware) flag?

    I have a feeling it only requires a quick fix and hope you will look into it :) Good job with the injector so far :)

    AntwortenLöschen
  108. Is there a chance you can update the 1.2 release to use the new SMAA 2.7 textures/sources that got posted yesterday? Exchanging the SMAA.fx is unfortunately not enough, since the area/search textures have been changed.

    This should be a trivial upgrade - if you still have the sources for 1.2.

    Because of the texture upgrade, I believe there is a fair chance that the image quality of the 1x mode is improved.

    http://www.iryoku.com/smaa/
    https://github.com/iryoku/smaa/

    AntwortenLöschen
  109. About SWTOR, I can confirm that at least I, didn't need to disable the Large Adress Aware.
    I simply put the (DX9)SMAA-files in C:\Program Files\Electronic Arts\BioWare\Star Wars-The Old Republic\swtor\retailclient.
    Worked perfectly.

    AntwortenLöschen
    Antworten
    1. You must be running a 32bit operating system. Otherwise please check and report that swtor.exe in retailclient directory has the LAA PE flag enabled and report please. If you are running indeed a 32bit OS. Could you help to isolate the bug to the LAA flag by trying to run the client with 3GB user space enabled and report if it continues to run properly with the option on? Directions for toggling it on/off here: http://dwf.blogs.com/beyond_the_paper/2009/04/enabling-3gb-switch-on-windows-vista.html. Directions for Vista apply for Windows 7 as well. (To clarify: LAA flag does absolutely nothing on 32bit OS unless the user memory space is extended to 3GB. By trying to run the client with that enabled it will actually verify the bug is the LAA flag :))

      Löschen
    2. Yup like Nodens said, you are probably running a 32-bit Windows. Not sure if Swtor installation sets this flag depending on system specs/windows though.

      Löschen
  110. @BlueSteel: Great idea! Let's hope that Andrej has time to do it.

    AntwortenLöschen
  111. I was able to use the 2.7 SMAA.h file with the SMAA.fx from 2.7's DX9 Demo folder with the injector. This produced a fairly blurry picture (in Mirror's Edge), so I edited lines 480 and 481 to match the previous SMAA.h:

    from:

    #define SMAA_AREATEX_PIXEL_SIZE (1.0 / float2(160.0, 560.0))
    #define SMAA_AREATEX_SUBTEX_SIZE (1.0 / 7.0)

    to:

    #define SMAA_AREATEX_PIXEL_SIZE (1.0 / float2(160.0, 240.0))
    #define SMAA_AREATEX_SUBTEX_SIZE (1.0 / 3.0)

    Now it works very well, though I can't really tell if it's better or worse than the previous version. And I'm not even really sure if this sloppy copy/paste porting is even using the code from 2.7. Others are free to try!

    AntwortenLöschen
    Antworten
    1. As far as i know the .h file is only the header, and you're still using the old one :p

      Löschen
    2. Yea, I couldn't really find any differences between the two .h files other than those two lines, so I figured the big changes must be in some other code. Oh well, it was worth a try!

      Löschen
  112. Doesn't work for me when I use SMAA.fx and SMAA.h from 2.7.

    AntwortenLöschen
  113. From Jorge Jimenez.:

    It's unlikely the S2x and 4x modes will work with an injector, unfortunately :( There are some chances of getting S2x working through. There are several games that are going to ship with SMAA fully integrated; I think for having S2x and 4x modes on games, the best thing is to make noise and ask for them for actual integration in game dev forums.

    Cheers!
    Jorge

    AntwortenLöschen
  114. I prefer that he fix the problems and improve the compatibility with games for now than to implement new methods of AA. Just my opinion!

    AntwortenLöschen
  115. Dieser Kommentar wurde vom Autor entfernt.

    AntwortenLöschen
  116. Also, your saying the source is so messy it would be pointless releasing it for help, it would still maybe give someone else a chance to make the T2x version or something, and they could give credit to you of course for designing the original.

    AntwortenLöschen
  117. First Comment that was deleted by me i think -_-: Is T2x mode compatible with dx9, since the injector will need to support the many many games with dx9, (or dx8 too with wc3???). this or s2x is really needed for bf3 and total war shogun 2, but on those dx11 games msaa KILLS performance for them, and smaa 1x does nothing for them.

    AntwortenLöschen
  118. Let me guess: smaa developers took an arrow in the knees, and can't assist in injectsmaa development )

    AntwortenLöschen
  119. I cant download smaa . maybe link broken?

    AntwortenLöschen
  120. The link is working for me, as of this moment. Try it again.

    AntwortenLöschen
  121. What key is used for shader reload ?

    AntwortenLöschen
  122. Is there anyway you could include the .dll for x64 games? I was using the injector with Warcraft, now blizzard has updated the client to x64 and the injector no longer works.

    If you could include the x64 dll's for the injector it would be greatly, greatly appreciated ;)

    AntwortenLöschen
  123. Fantastic! Aliasing is virtually gone in Skyrim without any FPS loss and without texture and HUD blurriness/darkening of FXAA!

    Playing at 1920x1080, with SSAO in performance mode and ultra shadows, and this also allows me to keep over 30 FPS even with tree and land shadows. HW is a GTX 560 on a i5-750 with 4 GB RAM. Note to Skyrim players: install the injector version for Directx 9, not the DX10/11 version, which won't work because Skyrim doesn't use the new APIs.

    AntwortenLöschen
  124. Dieser Kommentar wurde vom Autor entfernt.

    AntwortenLöschen
  125. Confirmed, replacing SMAA.h and SMAA.fx for 2.7 versions actually disables SMAA, because the code is compiled into the DLL. I wonder if we could get the source code?

    Here are some screenshots of Skyrim comparing the same scene without AA, with MSAA x4, MSAA x8, FXAA and SMAA: http://skyrimnobolso.wordpress.com/2012/02/23/anti-aliasing/

    AntwortenLöschen
  126. Hm, I tried 1.1 and 1.2 on GTA4, also I tried some dudes FXAA Injection, but I have a wierd problem I'm unable to solve. Whenever FXAA or SMAA are switched on, the game starts to stutter very wierdly, like in a non-linear fashion. It's kind of a strong stutter every half second.. so I get like 1/10th second fluent then 1/2 second stutter, 1/10th second fluent etc.

    Strangely, it works fine in windowed mode, just not in fullscreen. I tried a lot of CLI parameter tuning for GTA4, and also playing with many options in my nVidia CPL (using two GTX480 in SLI, running on WinXP Pro x64 Edition, GeForce 285.58 WHQL), all to no avail.

    I'm out of ideas. In many other games like AvP, F.3.A.R., Dead Space 2 etc. it works just fine with minimal performance degradation.

    AntwortenLöschen
  127. I hope you read all of these comments... Xfire causes GTA:SA to crash along side this DLL. I've had it work fine with other d3d9.dll, so it might be the way it's attaching. Please look and see if you could fix this, as I use Xfire for video recording and uploading.

    AntwortenLöschen
  128. I wish the injector would allow the shader programmer to insert passes before and after SMAA, as currently it's hard to combine it with other post processing effects like sharpening or bloom.

    Would you be willing to make this change in a future injector Andrej?

    AntwortenLöschen
  129. I've tried to get this to run with Skyrim (Steam version) without success. I used the DX10 files and put them in the common/Skyrim folder, after that i tried Steam directory, both ways didn't work. Can someone please explain how the handling with Steam apps is, i figure that Steam itself would be the wrong place because you can't know if some game will use DX9 or DX10/11, am i right? But when starting Steam games, they automatically start Steam with it, and in case of skyrim it always will start the launcher with it (which shouldn't be a problem because both are in the same directory), so i'm totally lost here...

    AntwortenLöschen
    Antworten
    1. Skyrim is DX9 not DX10, so that's the problem right there - you used the wrong files.

      Löschen
  130. how can i use smaa with a nvidia optimus laptop? i cant use nvidia graphic card, only intel one and fps are horrible :(

    AntwortenLöschen
  131. Ignacio nvidia is best graphic card i think its only for pc not for laptop.
    Gift Card printing
    Scratch Cards
    Plastic Business Cards

    AntwortenLöschen
  132. I use a small compact keyboard that doesn't have a pause key.

    Is there I way I can change the key in the files or if theres a program that lets me map the pause key to a keyboard shortcut? (autohotkey might be able to do this but I don't really get how to use it)

    AntwortenLöschen
  133. The dx10 version does not work on champions online, the screen turns black only the mouse cursor stays visible. The dx9 version works fine in the dx9 mode.

    AntwortenLöschen
  134. Works GREAT with Battlefield 3!
    But it's not working with Modern Warfare 3.
    Steam overlay is Disabled.
    I put the DX9 files in "C:\Program Files\Steam\steamapps\common\call of duty modern warfare 3"
    (I'm using v1.2)

    AntwortenLöschen
  135. I can't seem to get this to work in Source-based games. Where are you placing the files for a game like Portal 2? I've tried where the executable is located as well as the bin folders, but no luck.

    AntwortenLöschen
  136. This is absolutely fabulous. Thank you so much for harnessing the power of the SMAA algorithm. The video provided by the developers (http://vimeo.com/31247769) showcases 4 SMAA levels: 1x, S2x, T2x, and 4x. I see in the injector.ini file that there are 4 quality presets. Which one corresponds to which level shown in the movie? I think T2x would be the preferred level because it had very high quality results with performance much better than S2x and 4x.

    Thanks a lot!

    AntwortenLöschen
  137. Thank you for this neat tool, i'm using it a lot especially on dx10+ games, however i've also become addicted to lumasharpen and i seriously wish i could use them in the same time. Any chance of implementing a proxy dll function (a la enb)? That would help for dx9 games (which is good) but i have no idea if the shader (ps_3 if i'm not wrong) would work on dx10/11 without lots of rewriting.
    I could try doing most of the work myself if i get some kind of direction first. Any suggestion?

    AntwortenLöschen
  138. Dieser Kommentar wurde vom Autor entfernt.

    AntwortenLöschen
    Antworten
    1. GTX680 (driver 301.42)
      AVP3 works fine,
      Crysis 2 dx11 doesn't start

      Löschen
    2. After some tweaking I was able to run Crysis 2 with SMAA.. but I need to say, it misses way too much lines, trees and vegetation for example, so it looks like without AA (the same shimmering). FXAA in Nv control panel brings the best resutls for me so far.

      Löschen
  139. any chance for upcoming version

    for those who tried to make it work with
    STALKER COP Dx10/11

    its working guys..

    i did the trick..it also works with CRYSIS

    put everything in the file except the dll put it in bin file

    AntwortenLöschen
  140. Worked beautifully with Dead Space 2 and Max Payne 3 Dx11 (IQ is uncomparably better than the Very High FXAA included with Max Payne 3). I was speechless the first time I pressed the pause button, for I had found a "jaggies remover" button for Dead Space 2, texture quality untouched! And it didn't hurt my 7950 at all at 1080p. Thank you dude!

    AntwortenLöschen
  141. Dieser Kommentar wurde vom Autor entfernt.

    AntwortenLöschen
  142. Go get RadiT 0.4 http://www.forum-3dcenter.org/vbulletin/showthread.php?t=489180

    This worked for me like a charm in L.A. Noire
    InjectSMAA works too but the game looks stil like crap with it.

    AntwortenLöschen
  143. Hi,
    For some reason I am unable to get it to work in Ghost Recon: Future Soldier. It does work only when the game isn't running with the Global Illumination option set to high, apparently.
    What gives?
    Thanks in advance!

    AntwortenLöschen
  144. Further testing as given the conclusion that is the Shadows setting, when set to high, to cancel the effect of the injector. But I can't figure how... help?

    AntwortenLöschen
  145. Does this work with XNA-based game?
    I created an xna game (of course directx 9), and put all files of this tools there but no luck.

    AntwortenLöschen
  146. This is how you make smaa injector work with Msi Afterburner:

    RTSS-> Add Profile (big + sign)-> bf3.exe->Setup (wrench)-> check Enable compatibility with modified Direct3D runtime libraries

    This will fix the overlay so that you can run smaa injector with Msi afterburner. Thanks for this, looks amazing with skyrim!

    AntwortenLöschen
  147. Dieser Kommentar wurde vom Autor entfernt.

    AntwortenLöschen
  148. I made a mod to InjectSMAA - I call it InjectSMAAmod.
    You can download it here:
    https://dl.dropbox.com/u/9942986/injectSMAAmod_1.2-1.7z

    It allows people to use their own SMAA settings.
    Just edit the included SMAA_settings.h file to change the settings.

    AntwortenLöschen
  149. I have updated InjectSMAAmod to version 0.3 :
    https://dl.dropbox.com/u/9942986/injectSMAAmod.7z

    InjectSMAAmod adds the ability to tweak the SMAA settings and to use Color edge detection.
    It also simplifies the installation, by making d3d9.dll and dxgi.dll load different .fx files so they can coexist in the same directory.
    You no longer need to find out what DirectX version you need to use, just copy the all files and the game will load the correct one.

    AntwortenLöschen
    Antworten
    1. Dieser Kommentar wurde vom Autor entfernt.

      Löschen
    2. Ack, I accidentally deleted my long comment :( I hope it sent you an email copy!

      Löschen
    3. Basically:

      - I love InjectSMAA
      - Thank you CeeJay.dk for streamlining it and making it easier to use, you are awesome :)
      - Which preset do the values in SMAA_settings.h use? (LOW/MEDIUM/HIGH/ULTRA, assuming that is what those presets actually control)
      - Do you have the skills to update InjectSMAA to use SMAA 2.7, released in January?

      Thank you for your time!

      Löschen
    4. Hi Kristoff.

      Sadly, I did not recieve an email with your long comment.

      I was asked about the meaning of the SMAA values about 2 weeks ago on the Guru3d forums and I wrote a long post explaining them and listing the values that the SMAA presets use:
      http://forums.guru3d.com/showpost.php?p=4378263&postcount=740

      I think I have the skills to update InjectSMAA (I may have to dust off some of my C knowledge, as I haven't used it for many years) , but I do not have the source code to InjectSMAA which I would need, because to update SMAA from 2.6 to 2.7 you can't just update SMAA.h - you also need to update the included textures to the versions that 2.7 needs.

      However mrhaandi choose to include the SMAA textures built into the dll and not as external dds files, which is why I need the source code to change them.

      That said, the only changes from SMAA 2.6 to 2.7 according to the SMAA changelog and the diffs on github is the added support for SMAA S2x and 4x.
      These are irrelevant to the injector because to implement the S2X and 4x modes, you need application/game support for them - they can't be added by an injector.

      BTW if you like InjectSMAAmod , you're going to love my SweetFX Shader Suite, which is InjectSMAAmod + LumaSharpen (my sharpening shader) + the effects from FXAATool combined into one übershader that can give you all the effects at once.
      It's currently out in a working beta for DX9 and I'm working on adding DX10 support.
      You can find it in the Guru3D thread I post my shader mods to: http://forums.guru3d.com/showthread.php?t=348097&page=31

      Löschen
  150. That injector causes my Optimus-based laptop to run GTA IV with the integrated intel card instead of the discret Nvidia GPU.
    The injector works pretty well for the Anti-Aliasing part (it's very cool to be able to switch it on and off with a key stroke!) but the game becomes unplayable due to the poor performance of the integrated chipset.
    The game is set to run on the Nvidia GPU in the Nvidia control panel at all times (with or without the Injector) and run perfectly at medium or high settings when I remove the injector files from the game directory.

    I have an Acer 5742G with an i5-480M, an Intel Graphics HD integrated and a Nvidia Geforce GT540M 2GB (driver version 296.10 - I can't upgrade them since the new 301.42 drivers induce a performance loss).

    I doubt that any of you know a fix for that problem, but at least the dev will be aware of it now.

    AntwortenLöschen
    Antworten
    1. I don't have an Optimus-based laptop myself, but I've read that other Optimus games have been able to force their game to use the faster Nvidia card by using these steps:

      1. Download and install the latest Nvidia Driver. The lastest is currently the 306.02 betas and they say specifically in the release notes that they run faster than 301.42 on 400M, 500M and 600M based laptops. I hope they work well for you.
      Here is a Win7/64bit link : http://www.nvidia.com/object/notebook-win8-win7-winvista-64bit-306.02-beta-driver.html

      2. Go to Control Panel -> NVIDIA Control Panel

      3. Under 3D Settings -> Manage 3D Settings -> Select a Program to Customize -> Find your game .exe

      4. Set the Preferred Graphics Processor to "HIGH Performance NVIDIA Processor"

      Hopefully this works for you.

      Löschen
  151. It's working great with Borderlands :)

    AntwortenLöschen
  152. Is there any chance for a full source code release including the source for the hooking DLLs? I'd really like to toy around with this somewhat.

    AntwortenLöschen
  153. Hey Andrej, can u update injectSMAA to build 2.7 of SMAA??
    It adds much better edge reduction by comparison

    AntwortenLöschen
  154. do i have to turn off FXAA or MSAA when using this SMAA injector ?

    AntwortenLöschen
  155. Thank you! Downloaded, not I'll try it WOT & Shogun2

    AntwortenLöschen
  156. Doesn't work for me on Mirror's Edge Steam version, the game stucked in black screen if I add the 4 files. Is there any additional settings to make?

    AntwortenLöschen
    Antworten
    1. Found the problem! I was enable the Ati Tray Tools onscreen display, disabled it and the injector works. Thanks!!

      Löschen
  157. You can disable LOG.LOG. When writing to the log I game freezes for a second. But the injector is working fine.

    AntwortenLöschen
  158. When using this with Skyrim on an m17x-r4, the game will switch from using the video card to the integrated intel hd 4000 and won't let me select my video card until I remove the files from the directory. How do I get this to run with my video card?

    AntwortenLöschen
  159. If you like InjectSMAA , then you should also try my SweetFX Shader Suite which is the same InjectSMAA injector, but with many more effects added to it than just SMAA.

    It's here :

    AntwortenLöschen
  160. Is there a way to create similar injector for DX8 games? Some of them definitely would be revived with SweetFX and SMAA.

    AntwortenLöschen
  161. And for x64 executables, of course.

    AntwortenLöschen
  162. Hey...I like your post so much.Visit my link as well.

    PHP 5 developer

    AntwortenLöschen
  163. Just wanted to add that I'm also on an Optimus based laptop and it's the same for me. When I add the injector files to the Skyrim directory the game will only find the integrated GPU instead of the Nvidia one. I haven't tried installing the drivers from Nvidia's site, but I doubt that will fix it. I have already set the game to use the "High Performance Nvidia GPU" in the Nvidia Control panel (and I also set the standard GPU to be the Nvidia one) but still it won't work.

    It's a shame because when I run it with the Intel GPU I can definitely see the improvement, especially compared to FXAA. But I can only play on low graphics settings with that GPU and even then it's not exactly smooth all the time.

    I don't think this is necessarily an issue with SMAAInjector, but probably something with Nvidia's drivers. Still I thought I should mention it here because it seems to only happen when I use the SMAA Injector, so perhaps something can be done.

    AntwortenLöschen
  164. its weird, i have nvidia optimus and when playing deus ex:hr, guild wars2 and left for dead2 with this filter all works fine, but in skyrim or dead space 1 it forces to use the integrated card, in the other games use the nvidia card :/

    im using a gt540m and all game except gw2 are steam games

    AntwortenLöschen
  165. Great work. It's odd that the frame rate actually increases with SMAA enabled! How can this be?

    AntwortenLöschen
  166. I don't even know what if you got amd or nvidia.
    www.plasticcardmonster.com

    AntwortenLöschen
  167. Dieser Kommentar wurde vom Autor entfernt.

    AntwortenLöschen
  168. Borderlands 2 just crashes if I use your injector...

    AntwortenLöschen
    Antworten
    1. you need to enable the weird overlay hack for steam games.

      Löschen
  169. Any idea on getting this working with optimus laptops? Whenever i use this on a game it uses my intel card and not the nvidia one..

    AntwortenLöschen
  170. graphics and image quality is awesome.

    http://ezeeprinting.com/

    AntwortenLöschen
  171. Can you make this work with this game : Jurassic Park Operation Genesis please ? (yes i know the game is in directx 8 ...)

    AntwortenLöschen
  172. Hi :) Can you make this work with this game : Jurassic Park : Operation Genesis please ? (yes i know the game is in directx 8 ...)

    AntwortenLöschen
  173. It's a nice blog to provide a good information. Hope more people reaching your blog because you are sharing a good information.
    I bookmarked this blog further more useful information.Thanks for sharing this."cheap web design"

    AntwortenLöschen