Search Unity

  1. We're looking for feedback on Unity Starter Kits! Let us know what you’d like.
    Dismiss Notice
  2. Unity 2017.2 beta is now available for download.
    Dismiss Notice
  3. Unity 2017.1 is now released.
    Dismiss Notice
  4. Introducing the Unity Essentials Packs! Find out more.
    Dismiss Notice
  5. Check out all the fixes for 5.6 on the patch releases page.
    Dismiss Notice
  6. Help us improve the editor usability and artist workflows. Join our discussion to provide your feedback.
    Dismiss Notice

[RELEASED] MadGoat SSAA and Resolution Scaling

Discussion in 'Assets and Asset Store' started by MadGoat, Mar 25, 2017.

  1. MadGoat

    MadGoat

    Joined:
    Jan 10, 2015
    Posts:
    53
    [​IMG]
    MadGoat brings to Unity3D the finest and most affordable super sampling anti-aliasing solution for your projects.

    Asset Store Link:
    http://u3d.as/MBg


    Documentation:
    http://madgoat-studio.com/content/MadGoatSSAA_Documentation.pdf

    What is SSAA?
    SSAA, short from super sampling anti-aliasing (not to be confused with screen space anti-aliasing) is one of the highest quality antialiasing methods, since it works by rendering the whole image at a higher resolution and down sampling it to the screen resolution.

    Then why don’t you see it in many games?
    SSAA works by directly changing the internal render resolution of your game, therefore the higher the setting is, the higher the performance hit is. Because of that, it uses more resources and needs more processing power than other anti-aliasing options, but also looks better. This AA solution is great for high end GPUs where there is performance headroom left, and also for high resolution, sharp screenshots

    [​IMG]

    Why our asset?

    MadGoat Super Sampling is the most affordable, complete and stable SSAA system on the Unity3D Market. With the help of our asset, in very easy steps, you will enhance the image quality of all your projects. The following features will help you understand why our asset is the best and most complete SSAA solution on the Unity3D market:
    • Affordable: As indie developers ourselves, we know how hard it is to fund the development of a game, especially when you invest your own money. We believe in affordable assets that do the job right.
    • High Compatibility: Compatible with Unity 5.5, 5.6 and 2017 Beta (Also compatible with older versions but not officially tested), compatible with all the major graphics APIs such as Vulkan, DX9-12 and OpenGL.
    • Easy to setup: Just drag and drop the script on your cameras, it’s that easy!
    • Resolution scale mode: Ability to scale the resolution by percent, such as seen in the settings menus of many AAA titles. This helps users to change render resolution without affecting the UI/HUD
    • 3 Image filtering modes: Nearest Neighbor, Bilinear and Bicubic
    • Full source available: You feel like changing something in order for it to fit your needs? Make it yours!
    • High-Res Screenshots: Take screenshots at higher resolution than your screen (also with super sampling)
    • Doesn't affect image effects
    • Reduces flickering and other image artifacts: such as those created by depth of field blur or highly specular objects

    Screenshots:

    [​IMG]
    [​IMG]
    [​IMG]
    [​IMG]
     
    Last edited: Jun 28, 2017
    AlanMattano and SAOTA like this.
  2. QuantumTheory

    QuantumTheory

    Joined:
    Jan 19, 2012
    Posts:
    835
    More SSAA solutions is welcome. Obvious benefits to VR, which begs the question, "WIll it support Vive and Rift?"

    Thanks!
     
  3. MadGoat

    MadGoat

    Joined:
    Jan 10, 2015
    Posts:
    53
    Hello and thank you for the support.
    As for the VR support, I'm not sure yet how it copes with Occulus/Vive as I don't have access to them nor do I know anyone that does. If I remember correctly I tried it with the default unity stereo display mode and it ran fine, but I'm not sure how it does on a real headset. This is definitely something that I'm looking into for the next update.
     
  4. QuantumTheory

    QuantumTheory

    Joined:
    Jan 19, 2012
    Posts:
    835
    I've a Rift CV1 and certainly don't mind testing for you.
     
  5. MadGoat

    MadGoat

    Joined:
    Jan 10, 2015
    Posts:
    53
    Sure. I can send you a key as soon as the asset gets published.
    Also I've found out that my downsampler filter shaders are not VR ready (re-tested it now, it seems that I only tested with filtering off last time.)
    I will fix it for the next version
     
  6. QuantumTheory

    QuantumTheory

    Joined:
    Jan 19, 2012
    Posts:
    835
    Thanks @MadGoat ! Typically if you give the store team an email, they will speed up approval a little bit.
     
  7. AlanMattano

    AlanMattano

    Joined:
    Aug 22, 2013
    Posts:
    567
    Nice and good! Rendering path? Works in forwarding .. deferred ? Looks like there is no info about. If you wish I can test the asset in VR HMD Oculus Rift .
     
  8. MadGoat

    MadGoat

    Joined:
    Jan 10, 2015
    Posts:
    53
    The asset has been approved by the asset store staff and is now released: http://u3d.as/MBg

    It does supports both forward and deferred rendering paths. It also supports all the major graphic APIs (tested with DX9,DX11,DX12, Vulkan and openGL.)

    As for the VR support, I'm still working on it, it will probably be there in the next update.
     
  9. AlanMattano

    AlanMattano

    Joined:
    Aug 22, 2013
    Posts:
    567
    A suggestion: In the next update on the asset store explanation "What is SSAA", add "supports both forward and deferred rendering paths." can help, since in VR Deferred is missing this feature.
     
    MadGoat likes this.
  10. FPires

    FPires

    Joined:
    Jan 5, 2012
    Posts:
    142
    Is there any way to make the downscaling happen before the official post-process stacking effect?
    So that the ditherer doesn't get downscaled and distorted together.
     
  11. MadGoat

    MadGoat

    Joined:
    Jan 10, 2015
    Posts:
    53
    Unfortunately, this is not supported yet.

    However, you can "manually" put the post-process stack on the internal camera. To do so you have to comment this line (line 48 if nothing else was changed) in the ssaa code:
    Code (CSharp):
    1. RenderCameraObject.hideFlags = HideFlags.HideInHierarchy | HideFlags.HideInInspector;
    The internal camera should appear in the hierarchy now, as child to your camera. But the problem that still remains is that this camera only exist at runtime. As a workaround you can write a script that adds at start the postprocessing stack to that camera with a profile that only has dithering enabled.
     
    FPires likes this.
  12. MadGoat

    MadGoat

    Joined:
    Jan 10, 2015
    Posts:
    53
    I am happy to announce that version 1.1 update has been released :)

    Changelog:
    • Fixed terrain being missing in demo scene
    • Fixed screenshot stretching when screenshot aspect ratio was different from screen aspect ratio
    • Fixed viewport resizing causing to break the image aspect ratio
    • Added own API function of ScreenPointToRay to fix raycasting offsetting at image resolutions different than screen resolution
    • Added OnClick() compatibility mode (at cost of lower overall performance)
    • Minor changes to the Editor UI
     
    Last edited: May 16, 2017
    Inspeinre likes this.
  13. DCUNITY2

    DCUNITY2

    Joined:
    May 24, 2017
    Posts:
    3
    The SSAA effect is killing the bloom in the post processing stack. I'm having to ramp up the intensity which isn't ideal, is there a fix for this?

    EDIT: It also kills the AO in the stack too.
     
    Last edited: May 25, 2017
  14. MadGoat

    MadGoat

    Joined:
    Jan 10, 2015
    Posts:
    53
    Hello, from my testings it seems to be related to how the the post processing stack handles effects at high resolution rather than the SSAA system. I've noticed a change in effect looks when changing SSAA setting too, but the changes also occur when changing the screen resolution to a higher one, like 4K without having the SSAA component on the camera. Can you please tell me which unity version you are using and your Bloom and AO settings?
     
  15. DCUNITY2

    DCUNITY2

    Joined:
    May 24, 2017
    Posts:
    3
    Hi,

    Thanks for getting back to me.

    I'm using 5.6.0f3.

    Bloom settings:
    Intensity: 0.03
    Threshold: 1.08
    Soft Knee: 0.554
    Radius: 4
    These settings produce desirable results in game view, as well as in previous projects. I can ramp up the Intensity but that blows out the whole scene.

    AO isn't as important as I'm using SSAO pro which seems to not be affected, however the settings are:
    Intensity: 0.96
    Radius: 0.33

    Thanks!
     
  16. ModularBuilds

    ModularBuilds

    Joined:
    Jul 16, 2014
    Posts:
    85
    Is this asset able to do downsampling also? Like in the current Battlefield games you are able to leverage running the game at 70% of your resolution to have better performance (of course it looks worse but people running settings that low wouldn't care at that point lol), would have a cool double usage. :)
     
  17. MadGoat

    MadGoat

    Joined:
    Jan 10, 2015
    Posts:
    53
    Yes, that's half the point of it. When I first designed it for our project I had in mind the resolution scale slider from Battlefield 4. Then it grew into what it is now.
    [​IMG]

    Of course, that setting can also be changed from code (so it can be implemented in the game's settings UI)
     
    hopeful likes this.
  18. ModularBuilds

    ModularBuilds

    Joined:
    Jul 16, 2014
    Posts:
    85
    Wow I wasn't expecting that! I'll be picking this up, great job. :)
     
  19. DCUNITY2

    DCUNITY2

    Joined:
    May 24, 2017
    Posts:
    3
    Hi, has there been any update on this? If it's nothing to do with SSAA but with general upscaling do you have any recommendations on how this can be resolved?
     
  20. FPires

    FPires

    Joined:
    Jan 5, 2012
    Posts:
    142
    Speaking of cameras - how do I apply this effect if I'm running multiple cameras?
    Namely, I have a camera rendering a background layer, and the main camera at a higher depth rendering the foreground with a "Don't clear" flag. Since the background layer is blurred, I don't need to render it a high resolution. When I combine cameras in this manner with MadGoat the backgrounds pretty much becomes white.
     
  21. MadGoat

    MadGoat

    Joined:
    Jan 10, 2015
    Posts:
    53
    Hello, I haven't figured out why it behaves like that yet. I will have to take a look into how the unity postprocessing stack works and see if I can come up with anything.

    Sorry, this is an issue that i'm still trying to fix. It's because the image is passed through an render texture to the screen and the "transparency" of the don't clear camera gets lost in the process. I hope to find a solution for this ASAP since it's something that I also need in our game project.
     
    FPires likes this.
  22. ElliottMallard

    ElliottMallard

    Joined:
    Jul 2, 2015
    Posts:
    8
    This is exactly what is happening to us - we've decided not to use this plugin until there is a fix in place. Is there any update on this MadGoat?
     
  23. MadGoat

    MadGoat

    Joined:
    Jan 10, 2015
    Posts:
    53
    Little feature sneak peek from the next update:
    [​IMG]
     
    SirVictory and hopeful like this.
  24. ElliottMallard

    ElliottMallard

    Joined:
    Jul 2, 2015
    Posts:
    8
    Will this next update fully support Unity's Post-processing stack?
     
  25. MadGoat

    MadGoat

    Joined:
    Jan 10, 2015
    Posts:
    53
    Yes. The Post Processing Stack issue was fixed for the next update. The update will hopefully be published on asset store next week if everything goes well with the integration of the new features I'm currently working on.
     
  26. HittmanA

    HittmanA

    Joined:
    Jul 27, 2016
    Posts:
    35
    Hello, I was just wondering if this asset supports HDR. Thanks in advance!
     
  27. MadGoat

    MadGoat

    Joined:
    Jan 10, 2015
    Posts:
    53
    Hello, HDR is supported in the next update. If needed urgently it can also be added with 1 line of code change in current version as pointed out by an user in a review on asset store.
     
  28. MadGoat

    MadGoat

    Joined:
    Jan 10, 2015
    Posts:
    53
    Version 1.2 has just been released to the Asset Store :)

    Changelog
    - Fixed Screenshot Settings not saving when deselecting game object
    - Fixed HDR support
    - Fixed bug causing incompatibility with Post-Processing Stack
    - Better implementation of screenshot code.
    - Added "Ultra Quality (FSSAA)" mode to super sampling
    - Added functionality to render supersampled panoramas (alpha)
    - Added Adaptive Resolution Mode
    - Added global functions to control parameters of all the MadGoatSSAA instances in scene.
    - Added support for rendering to target render texture
     
    hopeful likes this.
  29. local306

    local306

    Joined:
    Feb 28, 2016
    Posts:
    53
    Any word on how well this performs with VR?
     
    NeatWolf likes this.
  30. blackbird

    blackbird

    Joined:
    Aug 9, 2011
    Posts:
    482
    any chance to make the latest update work in unity 5.4 because i need it for consoles (ps: wanted to buy it but saw it's require 5.5)
     
  31. MadGoat

    MadGoat

    Joined:
    Jan 10, 2015
    Posts:
    53
    Hello, it should work on versions lower than 5.5 too. It's just that I didn't submitted it to the asset store with earlier versions because I didn't had them installed. I can test it myself on 5.4 later today if you want to.

    Edit: Tested on 5.4.0f3, the SSAA system itself works as it should :) . It's just the demo scene that doesn't load correctly (I guess due to some changes made by unity between 5.4 and 5.5)
     
    Last edited: Jul 8, 2017
    blackbird likes this.
  32. Vasica

    Vasica

    Joined:
    Nov 2, 2015
    Posts:
    64
    Hi,

    I've issues with SSAA when used with post processing stack. It seams to be working in editor, but in the build I am getting various artifacts like this:

    problem.png

    I am using 5.6.1p3 and SSAA 1.2. Any ideas?
     
  33. MadGoat

    MadGoat

    Joined:
    Jan 10, 2015
    Posts:
    53
    Hello, can you please provide your post processing stack settings?
     
  34. Vasica

    Vasica

    Joined:
    Nov 2, 2015
    Posts:
    64
    I am sending you the settings in the attachment. It contains also screenshot from camera settings. I am using adaptive resolution with Bilinear filter. After some more testing there is no problem in the editor, it works as it should, but the issue is really in the build only. I think that it is caused by the SSR in the Post Processing Stack.
     

    Attached Files:

  35. MadGoat

    MadGoat

    Joined:
    Jan 10, 2015
    Posts:
    53
    I used your post processing settings file and couldn't reproduce the issue in build exe, using 5.6.1f1 (can't find 5.6.1p3 for download anymore) Have you tested with only the SSAA and post processing stack enabled on the camera to make sure its not another effect conflicting with the two?

    Also, what platform, architecture and graphics API are you targeting? This information would be useful in further debugging.
     
  36. Vasica

    Vasica

    Joined:
    Nov 2, 2015
    Posts:
    64
    I tried to disable other image effects and it does only when the PP stack is enabled. I upgraded to the latest unity version 5.6.2p2 (it can be found here https://unity3d.com/unity/qa/patch-releases) and to the latest post processing commit on github, but the result is the same. I am running on windows 10 and running on DX11. I am experiencing this bug on amd rx 460. I will try to test it on different computer with nvidia gpu.
     
  37. Albertkaruna

    Albertkaruna

    Joined:
    Apr 12, 2015
    Posts:
    2
    This is cool... Is this support WebGL?

    Thank you!
     
  38. MadGoat

    MadGoat

    Joined:
    Jan 10, 2015
    Posts:
    53
    Alright. Please let me know if it does the same on nvidia. I also tested on AMD hardware (r9 390x) but I couldn't reproduce it. I will try on a more complex scene from our game (tested on ssaa demo scene before).
    P.S.: thanks for the patch releases page link. I didn't know about it :)

    Yes it does support WebGL. I haven't personally tested the system on WebGL, but there is an user who released a webGL game using our SSAA system. You can check it in asset store reviews if you want.
     
    Albertkaruna likes this.
  39. ModularBuilds

    ModularBuilds

    Joined:
    Jul 16, 2014
    Posts:
    85
    Ended up picking this up about a week ago and finally got around to integrating it. Everything is working as it should!

    And the screenshot function is very handy also :)

    [​IMG]
     
  40. RPowers

    RPowers

    Joined:
    May 14, 2015
    Posts:
    33
    Hi. I'm looking to pair this SSAA with Unity's MSAA in forward rendering for my vr game. Does this work with vr yet?

    Also, is SSAA different from render scale? In unity there's a VR.RenderScale setting that changes visual quality dramatically. For a vr application is it better to increase render scale or add SSAA?
     
    Last edited: Jul 14, 2017
  41. MadGoat

    MadGoat

    Joined:
    Jan 10, 2015
    Posts:
    53
    VR support is currently in development. The concept behind the VR.RenderScale is similar to the one behind SSAA. the difference is that SSAA also uses more complex image filtering approaches when resizing the image back to the screen size, which may result in even better image quality.
     
    NeatWolf likes this.
  42. ModularBuilds

    ModularBuilds

    Joined:
    Jul 16, 2014
    Posts:
    85
    I had a problem with the screenshot function. The multiplier doesn't actually do anything. Not a big problem as I am just passing my own multiplier before using the TakeScreenshot function, but just thought I'd let you know. :)
     
    MadGoat likes this.
  43. NeatWolf

    NeatWolf

    Joined:
    Sep 27, 2013
    Posts:
    650
    I'm looking forward SSAA in VR as well (is it going to be in single pass or multi pass), with both Oculus and Vive :)
    I still haven't found my ideal AA solution for VR, so I'm crossing my fingers on MG's SSAA - TSAA and MSAA8x are still a chimera depending on the situation. There's also an upscaler in Steam but, well, I prefer to leave it to the player's control :)

    Do you have any eta?
     
  44. silentneedle

    silentneedle

    Joined:
    Mar 14, 2013
    Posts:
    246
    The "rotate" example class conflicts with the VertexTools Pro demo.
     
  45. MadGoat

    MadGoat

    Joined:
    Jan 10, 2015
    Posts:
    53
    Thanks for letting me know.