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. Amplify_Borba

    Amplify_Borba

    Joined:
    Jul 24, 2017
    Posts:
    538
    No problem, thank you for letting us know!

    Don't hesitate to get back in touch if you come across any other issues, thanks!
     
  2. EddieChristian

    EddieChristian

    Joined:
    Oct 9, 2012
    Posts:
    725
    So I was going through this water Tutorial:

    And it's supposed to go from Light Blue to Dark Blue. But mine goes from Light Blue to Dark Blue to Black for some reason. I downloaded the latest editor from your site and set it to Transparent. I can't for the life of me figure out why its going to black. Any Ideas?
    WaterError.jpg
     
  3. hopeful

    hopeful

    Joined:
    Nov 20, 2013
    Posts:
    5,684
    Is that the sort of thing where you need a reflection probe so the water shows up as reflective?
     
  4. EddieChristian

    EddieChristian

    Joined:
    Oct 9, 2012
    Posts:
    725
    I honestly don't know. Just starting out with shaders. I will give it a try.
     
  5. Amplify_Borba

    Amplify_Borba

    Joined:
    Jul 24, 2017
    Posts:
    538
    Hello! Could you send us your shader so that we may debug this possible issue on our side?

    If you prefer, you can send it over to support@amplify.pt, thanks!
     
  6. Vidalicious

    Vidalicious

    Joined:
    Aug 30, 2017
    Posts:
    17
    Hi! :)
    Any idea how I could make a post process effect in Amplify Shader, which amplify the distance between the camera and the environment it sees (for example, you see a sphere close to you, but when you move just a little backward the sphere looks really far?

    Thank you in advance :))
     
  7. Amplify_Borba

    Amplify_Borba

    Joined:
    Jul 24, 2017
    Posts:
    538
    Hello! We do provide a Post Processing Shader Template that serves as a starting point for users to create all sorts of Post-Processing effects. You may also find two samples within our package for FilmGrain and Sobel effects, which offer great insight on how to set up your nodes!

    Could you provide some additional details regarding the effect you want to create, perhaps as a video example, so that we may best advise you on how to achieve it? Any particular reason why it needs to be done as a post-process effect and would it only affect specific objects within the camera view?
     
  8. Vidalicious

    Vidalicious

    Joined:
    Aug 30, 2017
    Posts:
    17
    Thanks for your answer :)
    Yes, I saw the Shader Template, and explored it. However, I'm new and I don't know exactly what I'm doing (I read most of the descriptions on the wiki, but still lot to digest and didn't understand everything! ;) )

    I can't find a precise example in video, but it would look like a space where one footstep backward or forward would be like going 5 meters backward/forward. In that case, I guess it means that is like if "Field of view" on the Camera object would be link to the World Space Camera Position's Z axe.

    PS: By the way, thanks for all your Amplify assets, I have most of them and I'm totally satisfied!
     
  9. Amplify_Borba

    Amplify_Borba

    Joined:
    Jul 24, 2017
    Posts:
    538
    Thank you for your support, it means alot to us!

    I'm not sure on what to suggest since I can't quite picture out the effect you have in mind, however, it might be possible to do so by either using multiple cameras or using vertex offset in objects to distort them based on distance. In any case, it's likely that you need more than a post processing shader to achieve this type of effect.
     
  10. Vidalicious

    Vidalicious

    Joined:
    Aug 30, 2017
    Posts:
    17
    Thanks again for your answer Borba!
    So far I have no idea how to change the scale of the object based on distance, but looks like a good alternative solution :) I hope it's not as complicated as the "OrientationBasedSprite"!
     
  11. Amplify_RnD_Rick

    Amplify_RnD_Rick

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

    A new build was uploaded into our website.

    Here are the release notes.
    Release Notes v1.5.3 dev 09:
    • New Shader Functions:
      • Lerp White To
      • Detail Albedo
    • Fixes:
      • Fixed API library excluding tool for custom nodes
    • Improvements:
      • Template creators can now register all modules
        • Simply add the /*ase_all_modules*/ either on the Pass or SubShader body
      • Templates now support Fallback definition on shader
      • Templates now support Dependencies definition on shader
    Happy shader creations!

    EDIT: Removed the 'Added support for stencil operations on Lightweight templates' item from the release notes since it was not in that released build. Apologies for the confusion.
     
    Last edited: Jun 1, 2018
    Suzuka91, hopeful and KRGraphics like this.
  12. KRGraphics

    KRGraphics

    Joined:
    Jan 5, 2010
    Posts:
    4,467
    Detail Albedo sounds nice. I was going to add that to my current shader but it's already heavy. Using 3 channel details AO, Roughness, and normal mapping. Will try with Albedo
     
    Last edited: May 31, 2018
  13. Suzuka91

    Suzuka91

    Joined:
    May 7, 2014
    Posts:
    39
    Hi, I have a little problem.


    I duplicated 3 nodes at the same time, and then I removed one node I didn't need it (of the duplicated ones), when a message with something like "the node doesn't exist" showed up, and I could not remove it, so I thought that maybe closing the shader and open it again would make that node dissapear.
    But now I can't open the shader in the editor anymore.

    I'm getting this error on console when I try to open it:

    Code (CSharp):
    1. ArgumentException: An element with the same key already exists in the dictionary.
    2. System.Collections.Generic.Dictionary`2[System.Int32,AmplifyShaderEditor.ParentNode].Add (Int32 key, AmplifyShaderEditor.ParentNode value) (at /Users/builduser/buildslave/mono/build/mcs/class/corlib/System.Collections.Generic/Dictionary.cs:404)
    3. AmplifyShaderEditor.ParentGraph.GetNode (Int32 nodeId) (at Assets/AmplifyShaderEditor/Plugins/Editor/Graphs/ParentGraph.cs:773)
    4. AmplifyShaderEditor.UIUtils.GetNode (Int32 nodeId) (at Assets/AmplifyShaderEditor/Plugins/Editor/Utils/UIUtils.cs:2090)
    5. AmplifyShaderEditor.InputPort.SetPreviewInputValue () (at Assets/AmplifyShaderEditor/Plugins/Editor/Wires/InputPort.cs:1122)
    6. AmplifyShaderEditor.ParentNode.SetPreviewInputs () (at Assets/AmplifyShaderEditor/Plugins/Editor/Nodes/ParentNode.cs:2049)
    7. AmplifyShaderEditor.TexturePropertyNode.SetPreviewInputs () (at Assets/AmplifyShaderEditor/Plugins/Editor/Nodes/Textures/TexturePropertyNode.cs:172)
    8. AmplifyShaderEditor.SamplerNode.SetPreviewInputs () (at Assets/AmplifyShaderEditor/Plugins/Editor/Nodes/Textures/SamplerNode.cs:170)
    9. AmplifyShaderEditor.ParentNode.RenderNodePreview () (at Assets/AmplifyShaderEditor/Plugins/Editor/Nodes/ParentNode.cs:3217)
    10. AmplifyShaderEditor.AmplifyShaderEditorWindow.UpdateNodePreviewList () (at Assets/AmplifyShaderEditor/Plugins/Editor/Menu/AmplifyShaderEditorWindow.cs:4713)
    11. UnityEditor.EditorApplication.Internal_CallUpdateFunctions () (at C:/buildslave/unity/build/Editor/Mono/EditorApplication.cs:127)
    I'm not using the latest build, I'm using the version 1.5.1 dev1

    It's there any solution?
    Thanks :)
     
    Last edited: Jun 1, 2018
  14. Amplify_Borba

    Amplify_Borba

    Joined:
    Jul 24, 2017
    Posts:
    538
    Hey there, thank you for reporting this issue along with additional information!

    Could you send us your shader through support@amplify.pt so that we may further debug it on our side?
     
  15. Suzuka91

    Suzuka91

    Joined:
    May 7, 2014
    Posts:
    39
    Sure. I've just send it.
     
  16. SpyChar

    SpyChar

    Joined:
    Jul 15, 2012
    Posts:
    11
  17. Gray_Master

    Gray_Master

    Joined:
    Jun 20, 2010
    Posts:
    152
    As you perhaps known, in this time Shader Forge is free. What you think about add one-two nodes such us SF (as example - Rotator, Simple Lerp, Simple Remap, Parallax etc...[if analogs is not exist]).And in SF Refraction input on Main Node is work more correctly (& with two parameters - multiply distort power & normal map output). In ASE Exist in Refract chromatic aberation and downgrade final picture. If possible make this analogs in ASE - we been happy )

    PS. Yes, & add pls for Cutout Mask slider to properties)
     
    Last edited: Jun 1, 2018
  18. KRGraphics

    KRGraphics

    Joined:
    Jan 5, 2010
    Posts:
    4,467
    I think we are getting very close to this. I am working on a hair shaders for my game and I am able to get very natural looking hair, aside from the lack of multi pass (which is still being worked on). Also I am looking for better ways to author my hair textures to include depth.
     
  19. Amplify_Borba

    Amplify_Borba

    Joined:
    Jul 24, 2017
    Posts:
    538
    Hello! Unfortunately there has been no change on Unity's side, and we haven't had any developments regarding having this available through templates, apologies for the inconvenience.


    Hello! We provide most nodes, or equivalent, to the ones that you can find in SF, including Rotator, Lerp and Remap, as well as additional ones and even a few custom Shader Functions. You can even develop your own custom nodes through our Node API. Feel free to check out our node list to find out more about all nodes that we currently offer.

    Our ports are quite similar to the ones provided with Shader Forge, but do let us know if you run into any troubles, we'll be happy to assist.

    Regarding Cutout Masking, we provide a float property in the material inspector that shows up when something is connected to the Opacity Mask port, although it does not show up as a slider.

    You can turn it into a slider by creating a Float node as a property with a slider range, clicking the small round icon to the right of the Mask Clip Value parameter in the Output node parameters, and then selecting the slider property you've just created in the drop-down list that takes the place of the text field.



    Please let me know if this information helps, thanks!
     
  20. Amplify_RnD_Rick

    Amplify_RnD_Rick

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

    New build over our website.
    Here are the release notes.

    Release Notes v1.5.3 dev 10:
    • Fixes:
      • Fixed issue with being able to duplicate output nodes on templates
      • Fixed issue on foldout flag values being shared between multiple ASE tabs
    • Improvements:
      • 'Get Local Var' port is locked until a valid reference is set to prevent incorrect connections
      • Updated About image and added Manual link on Amplify Shader Editor menu group
      • Adding unique id duplicate prevention over shader load
      • Added support for stencil operations on Lightweight templates
    You'll notice that we re-added the Added support for stencil operations on Lightweight templates over the release notes and removed it from the last one.
    On the previous build, we unfortunately only provided updated the templates shader file and not the internal parser for it and only noticed today when packaging this new one.

    Hope you guys have a super duper weekend and happy shader creations!
     
    Suzuka91 likes this.
  21. J_P_

    J_P_

    Joined:
    Jan 9, 2010
    Posts:
    1,027


    Does Amplify have Set/Get nodes yet?

    edit: found it -- register/get local variable. sweet :)
     
    Last edited: Jun 1, 2018
  22. Gray_Master

    Gray_Master

    Joined:
    Jun 20, 2010
    Posts:
    152
    Thx for You answer. I on this time create advanced material with reflect & refact & has small probem wich refract input node on main shader node. if not fix then asked again )
     
  23. Amplify_Ricardo

    Amplify_Ricardo

    Joined:
    Jul 19, 2013
    Posts:
    2,389
    Hello,

    Yes we do!

    Register Local Var - Get Local Var Node

    Sorry, I don't fully understand what type of issue you're experiencing. Can you share additional information directly at support@amplify.pt, a shader sample with the problem present would be ideal.

    Thanks!
     
  24. OP3NGL

    OP3NGL

    Joined:
    Dec 10, 2013
    Posts:
    267
    would love a dropdown menu shader function toggle so i dont have to re-create different standard shaders
     
  25. Gray_Master

    Gray_Master

    Joined:
    Jun 20, 2010
    Posts:
    152
    I Want Create extended version water shader (with reflec, refract, distance fadde, etc...)
    In Make process i have one or many bugs (becouse code groups i save as shader function)

    Also, I want if possible, when connecting multipliing refract power & normal to the Refaction Input on the Main Shader Node, they activate themselves, without add Refract to Lerp for Albedo/Diffuse.or Specular.
     
  26. wetcircuit

    wetcircuit

    Joined:
    Jul 17, 2012
    Posts:
    1,409
    Screen Shot 2018-06-03 at 7.14.50 AM.png Downloaded ASE a day ago and made my first skin shader.

    Thanks Amplify!
     
    hopeful and KRGraphics like this.
  27. Caronte3D

    Caronte3D

    Joined:
    Sep 16, 2014
    Posts:
    43
    It's possible to hide the Tiling & Offset inputs so They don't appear on the material inspector?
     
  28. KRGraphics

    KRGraphics

    Joined:
    Jan 5, 2010
    Posts:
    4,467
    Looks very nice... Translucency? Were you able to create a way to diffuse blend the normal maps to make the skin even softer... and also adding microbumps with a mask?
     
    wetcircuit likes this.
  29. wetcircuit

    wetcircuit

    Joined:
    Jul 17, 2012
    Posts:
    1,409
    Did I mention it was my first day? :p Thank you though, just fake SSS with the fresnel node so far…. and some bad math trying to get the specular a little more visible (next I will try the noise node instead of a map).

    I've since looked at the node wiki and am finding some functions I didn't guess the right name for ("inverse", not "invert")… :D I figure it's a good sign when I can get something decent before I rtfm.
     
  30. KRGraphics

    KRGraphics

    Joined:
    Jan 5, 2010
    Posts:
    4,467
    I've been trying to do a skin shader similar to ones found in Ryse and Marmoset Toolbag 3 to no avail...
     
  31. wetcircuit

    wetcircuit

    Joined:
    Jul 17, 2012
    Posts:
    1,409
    I think sometimes you have to pull back and do something flattering rather than technical… tbh.


    Screen Shot 2018-06-03 at 9.56.41 PM.png
     
    KRGraphics, Rotary-Heart and hopeful like this.
  32. OP3NGL

    OP3NGL

    Joined:
    Dec 10, 2013
    Posts:
    267
    im doing a conversion of all my shaders both shader forge & ASE to intergrate with unity LWSRP, & i encountered a problem.... channel blend (shaderforge) is not found in ASE.. how do i replicate that?
     
  33. hopeful

    hopeful

    Joined:
    Nov 20, 2013
    Posts:
    5,684
    Any results or observations on character shaders would be welcomed by at least a few of us here. Skin, hair, eyes ... maybe even some clothing ... all good. :)
     
    KRGraphics and wetcircuit like this.
  34. KRGraphics

    KRGraphics

    Joined:
    Jan 5, 2010
    Posts:
    4,467

    I already have eye shaders locked in :)... and hair is nearly completed... just need multipass on it.
     
    wetcircuit likes this.
  35. SpyChar

    SpyChar

    Joined:
    Jul 15, 2012
    Posts:
    11
    Here is my take on an eye shader

    I could upload it if U like, alongside with some basic textures
     
    hopeful, KRGraphics and wetcircuit like this.
  36. Amplify_Borba

    Amplify_Borba

    Joined:
    Jul 24, 2017
    Posts:
    538
    Hey there, could you please elaborate on your suggestion? Thanks!

    Regarding your question, our equivalent node would be the Summed Blend one, in which you would connect a Texture Sample with a mask to the Weights input, or a Vertex TexCoord node with its coordinate size set to Float4, which will then enable all 4 layers on the node.


    Looks amazing! Thank you for sharing and keep up the good work!


    That would be very kind of you, I'm sure it would be extremely helpful for many users!
     
  37. Suzuka91

    Suzuka91

    Joined:
    May 7, 2014
    Posts:
    39
    Hi!
    I have never used Shaderforge, but after seeing what is doing the node you mention here:
    http://acegikmo.com/shaderforge/nodes/
    (Channel Blend)

    I have attached a custom function, seems to work exactly as the link I posted:

    Screenshot - 04_06_2018 , 16_41_00.png


    PS: If it's ok, btw feel free to add it to ASE if you want, Amplify guys.
    Edit:
    PS2: Ups, I have not seen the summed blend node. I don't know if its doing the same as mine or if it's different.
    Edit:
    PS3: I think mine is different from Summed Blend. Seems to be adding colour, mine is lerping textures.


    Screenshot - 04_06_2018 , 17_00_27.png



    But again if its helpful, take it :D
     

    Attached Files:

    Last edited: Jun 4, 2018
    OP3NGL likes this.
  38. KRGraphics

    KRGraphics

    Joined:
    Jan 5, 2010
    Posts:
    4,467
    I don't know if I shared these with you guys, but this is an eye shader that I whipped up late last year... it has built in emission, cataracts, and also a mask that allows me to change the eye colour independently. Same thing with hair... ASE is becoming so powerful...

    I am hoping to revisit my skin shader again. Using Alloy in this shot.









     
    trilobyteme, hopeful and wetcircuit like this.
  39. HitsuSan

    HitsuSan

    Joined:
    Sep 28, 2014
    Posts:
    158
    You know, i've been stuck for a few days on a blending layers problem for the hair shader, can't find a proper way to make it transparen on double sided cards. I'm clearly not experienced enough but you seems to be able to achieve the result i'm looking for on your character beard in the last foto if i look at the right side. Would you be willing to share some info about it?
    I am by no means trying to make something that complicated since it's for something cartoonish but i don't seem to be able to replicate a similar transparency to this one upload_2018-6-4_19-35-4.png
     
  40. KRGraphics

    KRGraphics

    Joined:
    Jan 5, 2010
    Posts:
    4,467
    In my hair shader, I am just using Opacity which shows the full range of the hair just the way I authored it. The only drawback is no shadow casting or self-shadowing. I am also using a set up where the normals light correctly, but the specularity is kinda off.

    Here is the graph that shows my hair set up, particularly the blending part. I am using a custom lighting solution and the opacity... opacity mask looks ugly.

    Screenshot 2018-06-04 14.18.05.png
     
    Last edited: Jun 4, 2018
    hopeful likes this.
  41. HitsuSan

    HitsuSan

    Joined:
    Sep 28, 2014
    Posts:
    158
    Uhmmmmmmmmmmmmmm i see what you're doing, let me give you an idea


    This one supports everything, what i did is a dither mask for the opacity clip that gets stronger on the borders of the object based on the camera position (i've stolen some idea from the Unreal4 Hair shader). The problem is that it's not quite there yet cause you can clearly see too many dithering bright spots all over the place. You might have gave me the idea for a cool solution, i will attempt to make a step mask that gets way stronger at the center of the mesh.

    You still have to get the very visible dithering effect, temporal AA makes it a little better while in movement but having a proper transparency like in my previous screenshot would be the best solution.
     
    hopeful likes this.
  42. KRGraphics

    KRGraphics

    Joined:
    Jan 5, 2010
    Posts:
    4,467
    I am trying to figure this part out. Once we are able to add multipass manually to shaders, I will gladly call this done. How are you even doing a dither mask? I am using a custom lighting solution for hair (using Kajiya-Kay and Marschner models)
     
  43. SpyChar

    SpyChar

    Joined:
    Jul 15, 2012
    Posts:
    11
    K, here is my eye shader. It takes advantage of POM, so U only need a plain sphere with UV's projected from a front view. There is probably a lot to improve here, but it is a start.
    It is possible to input an hdr cubemap as an additional reflection source, so you may want to get one from sites like HDRI haven.
     

    Attached Files:

    Last edited: Jun 4, 2018
    Amplify_Borba, wetcircuit and hopeful like this.
  44. HitsuSan

    HitsuSan

    Joined:
    Sep 28, 2014
    Posts:
    158
    There's a dither node in ASE ^^ in this case i'm using it in texture mode with a 32x32

    Yeah i think i'll be able to solve my probems with this shader with multiple
     
  45. KRGraphics

    KRGraphics

    Joined:
    Jan 5, 2010
    Posts:
    4,467
    let me find this dither node
     
  46. Laurens-Paladin-Studios

    Laurens-Paladin-Studios

    Joined:
    Apr 25, 2015
    Posts:
    54
    Hi there Amplify.

    There is an issue concerning the LWRP ShaderType:
    • When I use the Instanced property the shader will not compile and gives me this error:
      upload_2018-6-5_14-40-15.png
    And a small question, when are you planning to support LWRP with an unlit version of the template or maybe a simple blinn phong version?

    Thank you very much
    Laurens 't Jong
     
  47. Amplify_Borba

    Amplify_Borba

    Joined:
    Jul 24, 2017
    Posts:
    538
    Thank you, that was very kind of you!


    Hello, thank you for reporting this issue, I've just confirmed it on my end and will pass it along to the developers!

    Regarding your question, we've actually introduced an unlit template for the LWRP recently, please download the latest build through our website as the latest builds usually take a while longer to become available in the Asset Store, apologies for the inconvenience.

    Please let me know if you come across any further issues or have any other questions, thanks!
     
  48. Laurens-Paladin-Studios

    Laurens-Paladin-Studios

    Joined:
    Apr 25, 2015
    Posts:
    54
    Great thank you! And I will.
     
  49. DGordon

    DGordon

    Joined:
    Dec 8, 2013
    Posts:
    649
    Is there any way to override the grass shader for the terrain in 2017? I'm using 3d meshes to make cartoon grass for a little pre-rendered show, but my grass has my tris around 75million and draws 10k. Is there any way to create a shader that will gpu instance, or some other trickery, to make this render faster? Its just bogging down my editor a bit.
     
  50. Amplify_Borba

    Amplify_Borba

    Joined:
    Jul 24, 2017
    Posts:
    538
    Hello! You should be able to override most shaders in Unity, to do so you must name your shader exactly the same as the one Unity uses, which will result in yours overriding it. In this particular case the ASE Shader Name would be "Hidden/TerrainEngine/Details/BillboardWavingDoublePass", while the shader file name could just be anything.

    I'm attaching a sample grass shader we've cooked up in ASE that should serve as an example on how to achieve this, for your convenience.

    ASEGrass.shader

    Do note that you might have to open the Edit Details window in the Terrain Inspector after importing the shader in order to force Unity to refresh the shader being used for the Grass.

    We've also ran a few tests regarding using GPU Instancing with Unity's terrain system and, from what we could tell, it bears no performance implication, even by forcing this feature on our shader.

    I'm not quite sure on what to suggest, as the default Unity terrain system is very poor as far as performance is concerned, either way, please do let me know if this helps!
     

    Attached Files: