Search Unity

[NEW VERSION AVAILABLE] PIDI - 2D Reflections.The ultimate solution for your 2D reflection needs!

Discussion in 'Assets and Asset Store' started by IrrSoft, Feb 28, 2018.

  1. IrrSoft

    IrrSoft

    Joined:
    Jul 6, 2012
    Posts:
    1,528

    Hi there, and thank you for your interest in this asset :)

    I will do my best to solve all the questions you have asked :

    • Yes, all our tools provide access to the source code, especially for the shaders as a way for the user to learn how to implement the tool into custom made shaders
    • The Readme_License file only specifies that the included sprites are from Public Domain and CC0 licenses, as well as giving credit to the original authors of said sprites. This license is not for the tool itself.
    • As of this time, it is not possible to project the reflection on an arbitrary plane. In the example you share, the reflection itself follows the standard plane with the waves themselves being distorted. This is something that will come to this tool sometime between late February and March :)
    • This is not possible with this tool since the purpose of 2D reflections is to actually mirror the image. In the case you describe, for a fully top down game, I would recommend you to instead use an additional sprite under the main ship and draw it with a custom shader that adds some level of distortion to simulate the movement of the waves. This way, you avoid any performance impact and simplify your work greatly. Besides, your reflections can be more accurate this way since you could, in theory, have another sprite that simulates the ship as seen from below, which would be closer to how it would look in real life on a reflection as such. Alternatively, you could make a shader that draws the sprite twice, once in a normal way and the second time with the offset and distortion you need. However, this work would be made entirely with shaders, no need for a reflections tool :)
    • Amplify is not technically supported by itself. The Lightweight SRP version of this tool has its own set of shaders made with Amplify, and thus said shaders are editable with Amplify as well (though you DONT need Amplify to use the shaders, only to edit them ). The tool is fully compatible with any shader-creation tool as long as it produces standard shader code. This applies only to Lightweight SRP since in the Standard pipeline al shaders are made with standard ShaderLab code
    • This new effect is intended for side scrollers since they are the kind of games that would use it the most. It works out of the box with any kind of game, however the reflections are mirrored on the vertical axis so this is something that makes them much better suited for a side scroller.
    • The drawbacks of using render texture based reflections are : a higher performance impact compared to the shader based ones as it basically re-renders objects or the whole scene depending on your setup ( although this impact is almost null if you are targeting PC or consoles ) and that some very old mobile devices may not support render textures at all. This is something you need to check on Unity's Render Texture section of the manual. Besides these two points, everything that the render-texture reflections offer are upsides, since they allow to control how the reflections work, their quality and even which layers get reflected and which ones get ignored.

    I hope this helps and please tell me if you have any further questions :)
    Have a great day as well!
     
  2. Sharlatan

    Sharlatan

    Joined:
    Jul 23, 2013
    Posts:
    111
    Hey IrrSoft!

    Thank you so, so much for your super fast, helpful and comprehensive answer! And you even made some suggestions as to how to solve of my problems your tool doesn't cover, which goes above and beyond!

    It's really appreciated and makes me super confident that I won't regret the purchase I just made (the first asset I bought in years!)!

    Thanks again, keep up the good work and have a nice day! :)
     
    IrrSoft likes this.
  3. IrrSoft

    IrrSoft

    Joined:
    Jul 6, 2012
    Posts:
    1,528
    For the February Update (coming in the second half of the month ) this is the list of upcoming changes and improvements :

    • ASE (Amplify Shader Editor) compatible versions of the standard shaders will be included in a unitypackage file
    • New reflection shaders with new effects and control over reflection distortion
    • A few performance improvements
    • Improved documentation
     
  4. Sharlatan

    Sharlatan

    Joined:
    Jul 23, 2013
    Posts:
    111
    Great to hear, really looking forward to it!
     
  5. IrrSoft

    IrrSoft

    Joined:
    Jul 6, 2012
    Posts:
    1,528
    The ASE compatible versions of the shaders are coming along nicely, with improved control over how they work :

    upload_2019-2-14_14-11-32.png

    upload_2019-2-14_14-12-3.png

    This update is coming in late February (taking into account approval times for the update!)
     
  6. Sharlatan

    Sharlatan

    Joined:
    Jul 23, 2013
    Posts:
    111
    Hey there!

    Tested Version 1.5 and just wanted to let you know that there seems to be a small bug in scene "Demo_2DReflections".
    When the character reaches the edge of the water and jumps into the air, the reflection sticks to the character instead of going the other way:



    Also, might this be a good time to ask if you have any plans for the future? :D

    Thanks and keep up the good work!
     
  7. IrrSoft

    IrrSoft

    Joined:
    Jul 6, 2012
    Posts:
    1,528
    Hi there!

    This has been fixed ( the toggle for local reflection on the character's reflection was set to false by mistake, setting it to true fixes the issue) and will be updated today. Thanks for the heads up!

    Regarding the future, there are a few more updates comiing regarding a few more shaders and examples, better tutorials, maybe more flexibility when controlling the reflections.

    All these plans will come out slowly however, as I want to implement them in a way that doesn't compromise the ease of use of the tool, which has been one of its main features :)

    I hope this helps and thanks for your support! :)
     
  8. Sharlatan

    Sharlatan

    Joined:
    Jul 23, 2013
    Posts:
    111
    Sure does, thanks! Yeah yeah, I admit I'm hoping for skewed projections but even if not, this is still an excellent product and more than well worth the price and I really can recommend it to anyone thinking about buying it.

    And sorry, could probably have figured out the cause of the bug in a few minutes myself and let you know, but just checked out your new version before going to bed, noticed it and wanted to let you know :)
     
    IrrSoft likes this.
  9. IrrSoft

    IrrSoft

    Joined:
    Jul 6, 2012
    Posts:
    1,528
    No need to apologize, I appreciate the heads up as that toggle totally flew under my radar :)
    Thank you very much for your kind words and despite not mentioning it at the moment, I am still working some ideas for skewed projections outside ( or extending ) the included water shader but since this kind of experiments take some time before they are ready to commit to the main branch and used by everyone, at the moment they are staying as side experiments for the tool ( kind of like the Parallax system support was a side experiment for a good while before it made its debut a few versions ago! ).

    Thanks again for your kind words and your support to my work, and have a great day!
     
  10. Sharlatan

    Sharlatan

    Joined:
    Jul 23, 2013
    Posts:
    111
    Quick question: There's probably no way, to reflect any UI text, right? If not, it's no biggie. I don't think it would be a common use case anyway.

    Just asking because I'm working on a kind of title/chapter screen where I'd like to have the title look like it's floating above water and being reflected.
    It would be way easier to deal with different aspect rations if I could use the GUI system instead of a Text Mesh in 3D space. But it's not like it wouldn't be doable without, just a tad more tedious.

    Thanks and have a nice day.
     
  11. IrrSoft

    IrrSoft

    Joined:
    Jul 6, 2012
    Posts:
    1,528
    Hi there,

    Unfortunately there is not an out of the box way to reflect UI elements (yet, I may find one for a later update ) as they are not rendered as other elements on the scene and rather use their own layers and sorting, which makes it difficult to solve.

    The best ways to achieve this would be to have the Canvas be rendered by a different camera in world space mode ( which may make it compatible with the reflections ) or use the old trick of duplicating elements, mirroring them ( vertical scale of -1 ) and applying a distortion shader to them, which would create fake reflections. Depending on the complexity of the UI is how complex this second option might be.

    Hope this helps!
     
  12. IrrSoft

    IrrSoft

    Joined:
    Jul 6, 2012
    Posts:
    1,528
    This is a small update to inform you of the end of support for Unity 5x. Starting with any upcoming updates and patches we will move to Unity 2017.1 as the lowest version supported and by August-September our lowest supported version will be Unity 2017.4 (LTS).

    This is in part due to recommendations by the Asset Store team and in part due to the technical difficulties of developing these assets for Unity versions that have grown quite different in their internal APIs and in some cases requiring complex workarounds for older versions of Unity. If you have any reason for which your project is locked to Unity 5x please contact us, we are interested in hearing from you and trying to find a solution for this that allows you to keep using our tools.


    Thanks for reading!
     
  13. AMO_Noot

    AMO_Noot

    Joined:
    Aug 14, 2012
    Posts:
    433
    Great asset! I do have a few questions though:

    So I'm using multiple perspective cameras in a 3D environment to create parallax. For the most part, this is working great.

    We have the water in the front, and the water in the back, both are reflective.

    But one annoying thing I'm running into, is that the foreground reflects the reflective background water, resulting in some visual weirdness (the water wouldn't actually be able to 'see' the other water above the raised ground), and resulting in a big blue stripe. I'd almost prefer it if the water didn't reflect any other water objects at all!

    The second thing I ran into was in trying to place objects in the 'middle' of some water. For instance, having that statue appear as though it was sunken in the middle of the pond, and reflect in front of it accordingly.

    The best way I figured I could do this is to have the background water made up of two different reflective waters, one for behind the statue, and one in front. But again, I run into an issue where the water reflects other water, resulting in some visual oddness. Do you have any suggestions? I'll continue experimenting in the meantime. :)

    Edit: Oh! I feel stupid now; as I found some of the other examples; I think I might be able to make it work with the layering options. Thanks for making such a robust asset!

    Edit2: Actually, one question! Do you have any suggestions for creating the bright light-reflections that you would normally see on the surface of water?
     
    Last edited: May 31, 2019
  14. IrrSoft

    IrrSoft

    Joined:
    Jul 6, 2012
    Posts:
    1,528

    Hi there,

    Glad to hear you might have found a solution :)

    I'm not sure I'm understanding correctly what you mean by bright light reflections but if you can elaborate or show some reference I'll check how to help you :)

    Thanks for commenting!
     
  15. AMO_Noot

    AMO_Noot

    Joined:
    Aug 14, 2012
    Posts:
    433
    Ah sorry; I should have included a reference:

    https://i.imgur.com/SdVhuKf.mp4

    For instance; if you take a look here!

    upload_2019-5-31_0-31-21.png

    I meant to say, the white (and often fairly bright) reflections/spots of light that often appear in moving water. I suppose I can try to create it via particle system; but I don't know if there's a more elegant shader solution to it.

    Edit: I did actually manage to get a similar effect using particle systems; but it might be a nice addition to the asset!
     
    Last edited: May 31, 2019
    IrrSoft likes this.
  16. Sharlatan

    Sharlatan

    Joined:
    Jul 23, 2013
    Posts:
    111
    Hey there! Absolutely no pressing matter, but was just wondering if you're still planning on adding something like this feature (I think you called it skewed projections once, if I remember correctly..?) and if you have a very rough roadmap for that?
    I want to stress that again that there's really no need to hurry, just curious and looking forward to playing around with that feature if/when you should release it :)

    Thanks and have a great week!
     
  17. IrrSoft

    IrrSoft

    Joined:
    Jul 6, 2012
    Posts:
    1,528
    Hi there,

    First of all, sorry for the late reply. We were away for a few weeks and we just came back yesterday. There are still plans for this feature, but unfortunately we do not have an estimated release date since we are in the process of finishing major updates across the board for all our tools. This includes PIDI 2D Reflections as well, which will receive a first update next week to add support for the latest version of LWRP and 2019.1, and a second update on early July to upgrade its UI and workflow :)

    The most probable thing is that this feature will be released at some point in Q3, 2019. I hope this helps!
     
  18. Sharlatan

    Sharlatan

    Joined:
    Jul 23, 2013
    Posts:
    111
    Hey there and sorry for my late reply!

    Thanks a lot for the update! Your open communication with your customers is really appreciated!

    I'm looking forward to the later part of the year then and hope it's okay to ask again if I shouldn't hear/read anything new by then ;)

    Thanks again and have a great day!
     
    IrrSoft likes this.
  19. IrrSoft

    IrrSoft

    Joined:
    Jul 6, 2012
    Posts:
    1,528
    No problem! Hopefully everything is released an in order earlier than that ! :)
     
  20. IrrSoft

    IrrSoft

    Joined:
    Jul 6, 2012
    Posts:
    1,528
    This is a small update to let you know that due to the summer vacations we will be away from work from June 30 to July 22. During this period, our support service will be unavailable except for a few news updates here on the forums.

    We apologize for any inconveniences this may cause, but as soon as we are back we will be fast to reply to all your emails and support requests and will bring to you a whole new deal of exciting updates for this tool :)

    Have a great day!
     
  21. IrrSoft

    IrrSoft

    Joined:
    Jul 6, 2012
    Posts:
    1,528
    This small post is to announce that version 1.9 of this tool will be available around July 15-20.

    It includes :

    - Support for different types of distortion projections ( local space/ world space/screen space )
    - Support for basic skewed reflections (in the Standard Pipeline)
    - Minimum Unity version required will be moved to 2017.4, which means that Unity 5.6 and 2017.1 are no longer supported
    - Out of screen reflections are marked as stable and now the default behavior
    - Updated LWRP support to 5.7 in Unity 2019.1, the first Unity release to mark LWRP as stable.
    - Updated documentation

    This will be the last full update for the current version of the tool as we prepare for the full release of version 2.0 which will come soon.



    We will be announcing shortly all the details about version 2 of this asset and its new Lite and Standard Editions, the discounted upgrade prices for owners of version 1 as well as all the exciting new features in what is a full re-design and a huge improvement for the asset. We are very excited with the new results and believe it will be of great help for all your projects :)


    Again we remind you that we will be back in full force in July 22, and wish you all a great summer !
     
    Sharlatan likes this.
  22. Sharlatan

    Sharlatan

    Joined:
    Jul 23, 2013
    Posts:
    111
    I'm excited as well! Really curious what you came up with! Happy vacation!
     
  23. IrrSoft

    IrrSoft

    Joined:
    Jul 6, 2012
    Posts:
    1,528
    Version 1.9 of PIDI 2D reflections should be live by now!

    It includes :

    - Support for different types of distortion projections ( local space/ world space/screen space )
    - Support for basic skewed reflections (in the Standard Pipeline)
    - Minimum Unity version required will be moved to 2017.4, which means that Unity 5.6 and 2017.1 are no longer supported
    - Out of screen reflections are marked as stable and now the default behavior
    - Updated LWRP support to 5.7 in Unity 2019.1, the first Unity release to mark LWRP as stable.
    - Updated documentation


    We hope it will help you greatly with all your projects ! :)
     
  24. IrrSoft

    IrrSoft

    Joined:
    Jul 6, 2012
    Posts:
    1,528
    Hi everyone, here is a VERY important announcement !

    PIDI : 2D Reflections 2 has been approved by the Asset Store team and will go live in the next hours. It represents a huge improvement over everything done during the 1.x cycle. At the same time that version 2 goes live, the current version (1.x) will be deprecated.


    Here is a small list of features coming in PIDI : 2D Reflections 2 - Standard Edition :

    • Full source code access
    • Easy workflow to add reflections to any scene in less than 5 minutes
    • Post Process Stack v2 support without additional setups
    • Parallax backgrounds support
    • Masked reflections
    • Reflection fading
    • Ultra-optimized simple shader based reflection
    • Lit and unlit shader variants compatible with standard geometry and sprites
    • Support for skewed reflections
    • Support for custom shaders
    • Advanced 2D water shader
    • Reflections on any direction
    • Support for any mobile device with RenderTexture support.
    • LWRP Support (Unity 2019.1+)
    • In-depth documentation, simple tutorials and integrated help.

    But we know many of you are wondering what is the Standard Edition, what this release means for users of the current (v1.x) version of PIDI 2D Reflections and which will be the upgrade process like.

    Moving forward, most of our tools will be released in three editions : Lite, Standard and Team. In the case of PIDI 2D Reflections 2 it will be as follows :

    • Lite Edition - Has all the basic features of the tool and is suited towards smaller projects and teams. It has a one license per seat requirement and a price of $10 USD. Additionally, this version has an add-on which adds LWRP compatibility, sold separately.
    • Standard Edition - Has all the available features of the tool, the LWRP add on is already included as well as an advanced water shader with support for shader-based and light based highlights. It has a one license per seat requirement and a price of $30 USD.
    • Team Edition - Has the same features as the Standard Edition but it doesn't have the one license per seat requirement. It has been designed for larger teams where 10 or more users require access to the tool, and has a price of $200 USD.

    A full feature comparison chart is available with our online documentation here

    The upgrade process to version 2 will be as simple as possible, and we have designed it to cover as many cases as we could.

    • If you bought the asset in July (or buy it in the next hours before version 2 goes live) you will receive the upgrade to the Standard Edition for free.
    • If you bought the asset before July 2019, you do not apply for a free upgrade. However, a 50% discount will still be applied and you can upgrade to the Standard Edition of PIDI 2D Reflections 2 for just $15 USD.

    On a more technical note, many of the internal functions and variables have been renamed in this version for a greater ease of use. However, a handy auto-upgrade utility has been included with the Standard Edition which will let you update all existing reflection objects in a scene to the newer version in just a click. Afterwards, a simple swap of materials and some smaller parameter adjustments should be enough to have everything set up and running.

    If your scripts interact with the reflections system, these scripts will need to be upgraded by hand, unfortunately. If you need more information about this, please contact us with your doubts.

    If you have any doubts regarding the upgrade process or about PIDI 2D Reflections 2, please feel free to reply here.

    Have a great day! :)
     
    Last edited: Jul 26, 2019
  25. IrrSoft

    IrrSoft

    Joined:
    Jul 6, 2012
    Posts:
    1,528
    Version 1.x of PIDI 2D Reflections is now officially deprecated and version 2.x is live! Please read the notice on the opening post of this thread and the previous post for more information :)

    Have an excellent weekend!
     
  26. IrrSoft

    IrrSoft

    Joined:
    Jul 6, 2012
    Posts:
    1,528
    As an addition to the previous post, please remember that version 1.x of PIDI 2D reflections will no longer be supported nor receive additional patches after July 26, 2019.

    We encourage everyone to update to version 2 of this tool to ensure that you keep getting the best support and updates for Unity 2019 and 2020 (next year), and especially to those who bought this asset within the last month, since you will receive the upgrade for free.

    All other owners of a license of version 1.x (regardless of when you bought it) will receive a 50% off when upgrading :)

    Have a nice week!
     
  27. Sharlatan

    Sharlatan

    Joined:
    Jul 23, 2013
    Posts:
    111
    Hey! Just upgraded to version two and it really looks awesome! Still swamped in work right now but I'm really looking forward to playing around with it in my private project in a few weeks when things have calmed down!

    As always, great work! And from experience, I know the support is great as well. Really can recommend your products to anyone who's still on the fence!
     
  28. IrrSoft

    IrrSoft

    Joined:
    Jul 6, 2012
    Posts:
    1,528
    Hi there!

    Thank you very much for your kind words, it really means a lot to hear you are happy with our products and so willing to recommend our work :)

    We hope you'll enjoy using this new version and that it'll help you even more than version 1, so please don't hesitate to contact us with any feedback, doubts or questions you may have since it's thanks to all the feedback that we've been able to make all these improvements for version 2.

    Again, thank you very much for supporting our work :)

    Have a great day!