Search Unity

[Best Tool Asset Store Award] Amplify Shader Editor - Node-based Shader Creation Tool

Discussion in 'Assets and Asset Store' started by Amplify_Ricardo, Sep 13, 2016.

  1. petersx

    petersx

    Joined:
    Mar 5, 2015
    Posts:
    239
    where is a HD PBR template in latest ASE ? I don't see that ? (Unity 2018.2.1f1 HDRP)
    only see: Surface, Unlit, Legacy
     
    Last edited: Jul 30, 2018
  2. Amplify_RnD_Rick

    Amplify_RnD_Rick

    Joined:
    Feb 15, 2016
    Posts:
    528
    You need to extract the HDSRPTemplates package located at AmplifyShaderEditor > Plugins > Editor Resources > Templates > SRP.
    After that you can go into the Shader Type dropdown of your Output node properties and select HD PBR.
    Please let us know if you have any issues using this template.
     
    Last edited: Jul 30, 2018
    petersx likes this.
  3. petersx

    petersx

    Joined:
    Mar 5, 2015
    Posts:
    239
    thanks, now working like a harm :)
     
  4. Amplify_RnD_Rick

    Amplify_RnD_Rick

    Joined:
    Feb 15, 2016
    Posts:
    528
    Hey guys,

    We've uploaded a new build into our website.

    Here are the release notes.
    Release Notes v1.5.4 dev 08:
    • Fixes:
      • Fixed issue on 'Component Mask' node generating compilation errors inside shader functions with auto-cast inputs
      • Fixed issue on loop unroll error over 'Parallax Occlusion Mapping' node
      • Fixed issue on crashing ASE when loading a shader or shader function with a missing shader function reference
        • Adding error message when loading a shader or shader function with missing shader functions
    • Improvements:
      • Added support to Vertex Normal modification on both Unlit and PBR HD templates
      • Adding 'Global Array' variable name info directly on node

    Happy shader creations!
     
  5. OP3NGL

    OP3NGL

    Joined:
    Dec 10, 2013
    Posts:
    267
    hi, is it me or i just cant seems to get shadow cast off the ASE shader im using?
    left is standard cutoff, right is my shader what the.png
    am i missing something?

    EDIT: haha forgot to add a vertex texcood node
     
    Last edited: Jul 31, 2018
  6. BOXOPHOBIC

    BOXOPHOBIC

    Joined:
    Jul 17, 2015
    Posts:
    508
    Hello,

    While working on some of my wind shaders I noticed that there is a problem with the shadow when I use Vertex Offset in LWRP template. In this example I used your Waving Offset function, the problem is visible in scene view and camera preview, but it seams to work fine in game view.

    bug2.gif
    And the setup:
    upload_2018-7-31_19-41-33.png

    If I offset the vertices only by using a Vector3, the shadows work fine, so my guess is that the problem could be with the sin function. I also attached the package.

    Thank you!
     

    Attached Files:

  7. Amplify_Borba

    Amplify_Borba

    Joined:
    Jul 24, 2017
    Posts:
    538
    Hello! Unfortunately we haven't been able to replicate the reported issue, could you share your Unity, LWRP and ASE versions?

    There also seem to be some prefabs missing from the package, it would be extremely helpful if you could send a simple scene or project ready to be tested with the issue present, thanks!
     
  8. jjobby

    jjobby

    Joined:
    Nov 28, 2009
    Posts:
    161
    Hi, I've been testing with Tessellation shader. I think that the visual is good enough. Thank you very much for your suggestion.
     
  9. BOXOPHOBIC

    BOXOPHOBIC

    Joined:
    Jul 17, 2015
    Posts:
    508
    I was using the latest ASE version, Unity 2018.1.7 and LWRP 1.1.11 (the highest on this unity version). I will check it in 2018.2 again, there I can upgrade to LWRP 3.0, and I will get back to you with an update. Sorry for the mssing prefab :D and thanks for checking it.

    EDIT: All good in the latest LWRP version(3.0). Thanks again!
     
    Last edited: Aug 1, 2018
  10. Amplify_Borba

    Amplify_Borba

    Joined:
    Jul 24, 2017
    Posts:
    538
    Glad to help, don't hesitate to let us know if you have any further questions!


    Thank you for letting us know that the issue was fixed by updating the LWRP package, looking forward to see what you create next!
     
  11. Amplify_RnD_Rick

    Amplify_RnD_Rick

    Joined:
    Feb 15, 2016
    Posts:
    528
    Hey guys,

    Just uploaded a new build into our website.
    Here are the release notes.

    Release Notes v1.5.4 dev 09:
    • Fixes:
      • Fixed Grab Pass issue with 'Outline' node
      • Fixed PreviewRenderUtility leak over shader and material inspector on 2018.2
      • Fixed issue with 'PI' node over HD SRP
    • Improvements:
      • Minor improvement over shader save time
    Happy shader creations!
     
    hopeful and Igualop like this.
  12. OP3NGL

    OP3NGL

    Joined:
    Dec 10, 2013
    Posts:
    267
    how do i get this?
    this.png
     
  13. Amplify_Borba

    Amplify_Borba

    Joined:
    Jul 24, 2017
    Posts:
    538
    Hello! We do provide the DDX and DDY nodes to output the partial derivatives, but I'm not sure if that's what you're looking for. Feel free to check out our SandPOM sample, which serves as a perfect example of how they are commonly used.

    Could you provide more details regarding what type of data you're trying to access and work with?
     
    Last edited: Aug 3, 2018
  14. OP3NGL

    OP3NGL

    Joined:
    Dec 10, 2013
    Posts:
    267
    im trying to create a fake interior using cubemap, & unreal has 1, so i was copying, until i came across this particular node,
     
  15. Amplify_Borba

    Amplify_Borba

    Joined:
    Jul 24, 2017
    Posts:
    538
    Could you please provide a source for the nodes in your shared image?
     
    Last edited: Aug 3, 2018
  16. wetcircuit

    wetcircuit

    Joined:
    Jul 17, 2012
    Posts:
    1,409
    What is the trick to making a double-sided shader?
     
    KRGraphics likes this.
  17. marcatore

    marcatore

    Joined:
    May 22, 2015
    Posts:
    160
    hello.
    I'm trying to develop a rainy car glass following the previous suggestions I've found here.
    I started from this link http://amplify.pt/forum/viewtopic.php?f=23&t=589&p=2466 and it works really good but there is something I'd like to improve.
    That shader is using refraction and normals to simulate the rain drops distortions. It's super but what I'd like to improve is to have refraction distortions only on the raindrops and not in the other part of the glass.
    What you suggest to do to avoid refraction distortion on the part ofthe carglass where I don't have any raindrops?

    Trying to solve by myself and as the fake raindrops motion is made with normal maps, I thought to use them to lerp two refraction values.
    To do this I used the DDX and DDY nodes and then add the single channels together trying to build a "mask" for lerping.
    It seems working but, first I'm not sure this is the best way and later I lost quality resolution I suppose due to the way derivative are computed.

    What do you suggest to make this in a more "good" way?

    Thanks a lot
     
  18. Amplify_Ricardo

    Amplify_Ricardo

    Joined:
    Jul 19, 2013
    Posts:
    2,387
    You'll have to set the Cull Mode to Off.

    upload_2018-8-6_0-25-28.png

    We would be happy to help if we can. It really depends on how you have it set up, can you show us what you built so that we can better understand what you're going for?

    Thanks!
     

    Attached Files:

    wetcircuit likes this.
  19. PuckLovesGames

    PuckLovesGames

    Joined:
    Mar 4, 2015
    Posts:
    17
    Hello,

    I'm using a custom lighting setup, and wondering if it's it possible to separate Directional Lights from Point Lights? In particular I want to adjust the Light Attenuation only on the main directional sun light, but not on point lights. Since everything pipes into the Custom Lighting node, I can't see a way to do this.

    Unfortunately Light Attenuation contains both the shadow information AND the falloff from point lights, which means it's impossible to lighten the shadows without also causing pointlight to 'pop in'. There's no way to separate shadow casting from falloff is there?

    Thanks for the great asset!

    EDIT: I just discovered that the World Space Light Position has an output for "Type". 0 for Directional Lights, 1 for Point lights. This seems to be what I need. Is that considered the best way to achieve this light separation?
     
    Last edited: Aug 6, 2018
  20. OP3NGL

    OP3NGL

    Joined:
    Dec 10, 2013
    Posts:
    267
    here test.png
     
  21. Amplify_Borba

    Amplify_Borba

    Joined:
    Jul 24, 2017
    Posts:
    538
    Hello! Yes, the World Space Light Pos node is exactly what you need to achieve that sort of light separation!


    Thanks! In order to get the equivalent to those nodes in ASE, you'll need to use two Texture Samples and set their Auto-Cast Mode to 'Locked To Cube', then set their Mip Modes to 'Mip Level' and 'Derivative', as per the screenshots below:



     
  22. Andrey_Graphics

    Andrey_Graphics

    Joined:
    Oct 29, 2015
    Posts:
    140
    Hello, are you planning to add support for ComputeBuffers?
     
    Last edited: Aug 7, 2018
  23. OP3NGL

    OP3NGL

    Joined:
    Dec 10, 2013
    Posts:
    267
    yay! thanks
     
  24. BOXOPHOBIC

    BOXOPHOBIC

    Joined:
    Jul 17, 2015
    Posts:
    508
    I tested the vertex offset again in LWRP and there is a problem after all. Unity 2018.2.0 and the latest ASE build. The problem appear when Cascaded shadows are used. I recreated the shader with unity's graph and the issues disappear, but unfortunately I can't see the generated code to debug it.
    ezgif.com-optimize.gif

    ASE:
    upload_2018-8-6_17-53-25.png

    Shader Graph (not quite vertex offset, sin(time) added to objpos.y)
    upload_2018-8-6_17-55-52.png

    Package attached. Please use the LWRP-CustomQuality LWRP asset from the _TestVertexPos foder.

    Thanks you!
     

    Attached Files:

  25. marcatore

    marcatore

    Joined:
    May 22, 2015
    Posts:
    160
    I've sent you a PM.
     
  26. victorkin11

    victorkin11

    Joined:
    Apr 20, 2013
    Posts:
    175
    Can't download the newest version from Amplify web site, I used to be able use the inv. no to unlock it, but it don't work now! It that because when I bought it, it is a beta version?!
     
    Last edited: Aug 7, 2018
  27. Amplify_Borba

    Amplify_Borba

    Joined:
    Jul 24, 2017
    Posts:
    538
    Hello, adding support for ComputeBuffers is definitely something that we hope to tackle in the future!


    Thank you for taking the time to prepare a sample, I've passed it along to the developer for further investigation and we'll get back to you as soon as we have any developments.


    Hello, make sure that you use only the numbers and that there are no spaces at the beginning or end, which may happen if you use copy + paste. If you still have any issues, please send us your invoice through support@amplify.pt.
     
  28. Amplify_Borba

    Amplify_Borba

    Joined:
    Jul 24, 2017
    Posts:
    538
    Hello! In short, there's no plan to update the Static Switch node at this time, since its working as expected.

    Even though it does not encapsulate all of the generated code within the Keyword, the shader compiler is smart enough to only compile what it needs, so it does not generate additional instructions for that code. You can test this by placing the code inside the #if and compiling, you'll notice that the same assembly will be generated. The reason this node is efficient is because the shader will compile in a way that only one path ever runs, so you don't waste performance calculating operations that are not being used.

    Unfortunately, it won't be possible on our side to change the Static Switch node's behavior with the inspector since this node will always have to register everything. The Debug Switch has different behavior since, on the ASE side, the only code generated is the one associated with the selected branch, which is not the case for the Static Switch node, as it only generates the used variants and only includes the active one in the build while in Shader Feature mode, or generates all the variants and includes them all in the build, allowing the variant to be changed in runtime, while in Multi Compile mode.

    Your suggestion regarding generating shaders for each option of the Debug Switch node is actually something that might be possible to achieve, so we'll be registering it for further consideration, thank you for taking the time to bring it up!
     
    brisingre likes this.
  29. BOXOPHOBIC

    BOXOPHOBIC

    Joined:
    Jul 17, 2015
    Posts:
    508
    Hello, quick question. I tried to use properties with auto-register in shader functions, but they are not registered in shaders when the function is used. Is this intended?
    Also it would be nice to be able to use properties from shader functions to control stuff like Alpha Cut, Blending, Culling etc
     
  30. Amplify_Borba

    Amplify_Borba

    Joined:
    Jul 24, 2017
    Posts:
    538
    Hey there, thank you for bringing this up! I've confirmed it on my side and it's likely to be an issue, so I'll pass this information to the developer and will get back to you as soon as I have any developments to share.
     
  31. Amplify_Borba

    Amplify_Borba

    Joined:
    Jul 24, 2017
    Posts:
    538
    No problem, we're always happy to help! There should be no impact in performance for having properties that are not referenced, they should be ignored by the compiler as they're not being used anywhere.

    If you want to hide properties from the inspector there's an attribute that you can toggle in the node parameters which allows you to do so, please refer to the screenshot below:



    Please let me know if this helps, thanks!
     
  32. BOXOPHOBIC

    BOXOPHOBIC

    Joined:
    Jul 17, 2015
    Posts:
    508
    It is always a good idea to test out things to see how they work :)

    I recently did a test to see if operations on all vector channels, then using only the X component, are more expensive than doing the operations between single channels from the start. It turned out to be the same.
    upload_2018-8-10_14-51-34.png

    I would be interested what is more expensive, sampling a texture or using an if statement with branching where 2 floats are compared :D. But I guess that it depends on hardware, graphics api,..
     
    Last edited: Aug 10, 2018
    brisingre likes this.
  33. Amplify_Borba

    Amplify_Borba

    Joined:
    Jul 24, 2017
    Posts:
    538
    I see, in that case we'll have to wait and hope that the developer can find a viable solution for this through the Debug Switch node. We'll definitely be in touch as soon as we have the opportunity to look into it!


    You're right, there are plenty of considerations to take when building shaders when it comes to performance concerns, especially the target platforms and devices, and its always best to test them in order to ensure that they perform as expected.
     
    brisingre likes this.
  34. TCROC

    TCROC

    Joined:
    Aug 15, 2015
    Posts:
    230
    I am having an issue with the translucency. It doesn't seem to work with baked lighting. In the sample scene, if I set the object to be static and the light to be baked, translucency doesn't work. Current version of Unity we are using is 2016.1.6f1.
     
  35. Amplify_Borba

    Amplify_Borba

    Joined:
    Jul 24, 2017
    Posts:
    538
    Hello, thank you for getting in touch! This behavior is expected, as Translucency will not work with Baked Lighting.
     
  36. TCROC

    TCROC

    Joined:
    Aug 15, 2015
    Posts:
    230
    Thanks for the response! I’m new to working with Amplify Shader Editor and have been going through the lighting tutorials and examples. Are there any nodes to attach to translucency in a custom shader to make it support baked lighting? We are trying to render a large amount of translucent crystals, each with a spotlight inside of it, across a large surface. However, rendering them in real time is hard on performance.
     
  37. Amplify_Borba

    Amplify_Borba

    Joined:
    Jul 24, 2017
    Posts:
    538
    No problem! Unfortunately, it won't be possible to make Translucency work with Baked Lighting, as its not supported by the technique.

    If you could provide us with a sample for what you're trying to achieve, we might be able to point out an alternate solution, and if the spotlight is static, you might be able to simulate it in a simplified form within the shader itself.
     
  38. TCROC

    TCROC

    Joined:
    Aug 15, 2015
    Posts:
    230
    That would be extremely helpful! I’m not currently at my computer to send a picture of the effect, but will send one as soon as I am.
     
  39. TCROC

    TCROC

    Joined:
    Aug 15, 2015
    Posts:
    230
    I am having a problem that I need help with. I cannot get the standard lighting mode to behave the same way as Unity's Standard Shader. It makes it difficult for me to use my screen space reflections and light reflections. I was wondering if there was a way to recreate Unity's lighting exactly.

    Edit: The standard lighting works just fine. It turns out it was an issue with the normal map and Texture Sample node.

    How to recreate: Add a Texture Sample node and connect it to normal map. It should be still outputting RGBA instead of XYZ. Then save it. When adding a normal map from the inspector pane, it is still outputting RGBA.

    Workaround: Add a normal map to the node from the Amplify Shader Editor window. This will make it output XYZ.

    Comments: If this is by design, as a new user, it took me a while to figure out why it wasn't working. I actually thought it was a flaw with Amplify Shader Editor (turns out it wasn't).

    Unity Version: 2018.1.6f1.
    Amplify Shader Editor Version: 1.5.4
     
    Last edited: Aug 12, 2018
  40. Amplify_Ricardo

    Amplify_Ricardo

    Joined:
    Jul 19, 2013
    Posts:
    2,387
    That's odd, we use what Unity provides. Can you share a sample for further examination on our side?

    Which Unity version are you currently using?

    Thanks!
     
  41. Amplify_RnD_Rick

    Amplify_RnD_Rick

    Joined:
    Feb 15, 2016
    Posts:
    528
    Hey guys,

    We just uploaded a new build into our website.

    Here are the release notes.

    Release Notes v1.5.4 dev 10:
    • New Sample:
      • SRP HD Material Types
        • Please notice that for SSS to work properly, a Diffusion profile must be attached to the HD pipeline asset
        • We already supply one over the sample folder ( Diffusion Profile Settings )
    • Fixes:
      • Fixed UX issue with Auto-Register/Set Unique flags on 'Custom Expression' node
      • Fixed issue with cascade shadows over Lightweight template
    • Improvements:
      • Added Material Types selector into HD template
        • Subsurface Scattering
        • Standard (Metallic)
        • Specular
        • Anisotropy
        • Iridescence
        • Translucent

    On this build, we added a new Material Type dropdown selector into the HD output node. This is similar to the Material Type dropdown from the default HD material ( HDRenderPipeline/Lit shader ).
    Each selection will enable/disable input ports corresponding to each type.

    We've set a simple sample scene ( AmplifyShaderEditor/Examples/Official/SRP HD Material Types ) with each one of them in action.

    Please notice that this is still a bit under construction so some aspects of it may be changed in future builds.

    Don't hesitate on reaching us if you have any issues, and as always, happy shader creations!
     
    Last edited: Aug 13, 2018
  42. Khena_B

    Khena_B

    Joined:
    Aug 21, 2014
    Posts:
    273
    Hey,

    Trying to make a 2D reflection shader, I'm using grab screen color and screen position, but how do I flip the output vertically? Using one minus on the screen position's Y flips it but it doesn't follow the screen anymore obviously.

    reflection.png

    This is with an inverted Screen Position, what I want is for the reflection to follow the screen, and when the plane is moved for the reflection to follow the plane, I'm getting the opposite here

    reflection.gif
     
    Last edited: Aug 13, 2018
  43. Khena_B

    Khena_B

    Joined:
    Aug 21, 2014
    Posts:
    273
    So this seems to work better, but I'm still having an issue with trying to reflect stuff that is off-screen, it has nothing to reflect so it just stretches the outer edges, is there a way around that?

    Reflection2.png

    Reflection2.gif
     
  44. Gray_Master

    Gray_Master

    Joined:
    Jun 20, 2010
    Posts:
    152
    i have licence for Amplify Shader Editor from 27 Jan 2017. In this morning i want download new version of product but see message what my invoce/order number is not correct foe any products. after 5 or 7 times entering i have message of many license request. what i want doing?
     
  45. Amplify_Borba

    Amplify_Borba

    Joined:
    Jul 24, 2017
    Posts:
    538
    Hello! I'm afraid that you'll have to find a workaround for that since the Grab Pass only grabs the contents of the screen, I would recommend that you try using another camera to render to a texture and use that data in your reflection effect.


    Hello! Unfortunately, we've just confirmed that we're experiencing technical issues with our download system, we'll be sure to let you know as soon as its active, our apologies for the inconvenience.

    In the meantime, feel free to reach us via support@amplify.pt with your invoice number so that we can share the latest version with you.
     
    Khena_B likes this.
  46. Gray_Master

    Gray_Master

    Joined:
    Jun 20, 2010
    Posts:
    152
  47. Amplify_Borba

    Amplify_Borba

    Joined:
    Jul 24, 2017
    Posts:
    538
    The issues with our download system have been fixed and our download page is now working again.

    Thank you for bearing with us!
     
  48. TCROC

    TCROC

    Joined:
    Aug 15, 2015
    Posts:
    230
    Edit: The standard lighting works just fine. It turns out it was an issue with the normal map and Texture Sample node.

    How to recreate: Add a Texture Sample node and connect it to normal map. It should be still outputting RGBA instead of XYZ. Then save it. When adding a normal map from the inspector pane, it is still outputting RGBA.

    Workaround: Add a normal map to the node from the Amplify Shader Editor window. This will make it output XYZ.

    Comments: If this is by design, as a new user, it took me a while to figure out why it wasn't working. I actually thought it was a flaw with Amplify Shader Editor (turns out it wasn't).

    Unity Version: 2018.1.6f1.
    Amplify Shader Editor Version: 1.5.4
     
  49. Amplify_Borba

    Amplify_Borba

    Joined:
    Jul 24, 2017
    Posts:
    538
    Hello, thank you for reporting back with your findings and for providing additional details!

    I've managed to replicate this behavior on my side, and it's something that we should be able to find a workaround for since it may lead to confusion. I'll be sure to pass it along to the developer for further investigation.

    For now, I'd recommend that you toggle the Unpack Normal Map parameter in the Texture Sample node's parameters to On and then compile the shader, as it will ensure that no matter what texture you add through Unity's inspector pane, it will always be used as a normal.

     
  50. TCROC

    TCROC

    Joined:
    Aug 15, 2015
    Posts:
    230
    Thank you! I will do that :)