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. Tiny-Tree

    Tiny-Tree

    Joined:
    Dec 26, 2012
    Posts:
    1,315
    and supporting skyshop would be great too.
     
    recon0303 likes this.
  2. EvilGremlin

    EvilGremlin

    Joined:
    Aug 12, 2016
    Posts:
    231
    I've been eyeing this for a while. Great videos and documentation. I am a digital artist turned modeler. But shaders have always eluded me. Even the other tools to create shaders seemed a bi confusing. This is the only one that makes sense to me. This is exactly why I love working with Unity.
     
  3. shamsfk

    shamsfk

    Joined:
    Nov 21, 2014
    Posts:
    307
    Hello! I'v purchased ASE as my first unity's visual shader editor and seek no more, it is great!
    But question is - it seems that for the time I'm more interested in node editor itself rather than shaders, can we use node editor functionality featured in ASE to produce internal tools like character editor?
     
  4. benderete

    benderete

    Joined:
    Aug 31, 2014
    Posts:
    129
    Hi, for your purpose perphaps will be a better solution go for a node editor framework like this:

    https://github.com/Baste-RainGames/Node_Editor
     
  5. SteeLMan

    SteeLMan

    Joined:
    Jul 2, 2015
    Posts:
    5
    HI, I have problem for last release, use Unity last path 5.4.2 p3. :( Help me!
    Bugs.jpg
     
    gostrafx likes this.
  6. Amplify_RnD_Rick

    Amplify_RnD_Rick

    Joined:
    Feb 15, 2016
    Posts:
    528
    Hey SteeLMan,
    Unfortunately the first error seems to be an issue with 5.4.2 p3. It is incorrectly throwing the error of exceeding the amount of texture interpolators used.
    I imported the same shader ( SnowAccum ) on 5.4.2f2 and it is throwing no errors.
    Is it possible for you to try on the latest stable version and let us know if the problem persist on your end?

    Concerning the wires being all pink, we already found the issue and will be uploading a new build in no time.

    EDIT: Just uploaded a new build which fixes the wires issue
     
    Last edited: Nov 4, 2016
  7. SteeLMan

    SteeLMan

    Joined:
    Jul 2, 2015
    Posts:
    5
    I installed 5.4.2f2 Unity version interpolation error was not :)
    I look the new release without pink line.

    I'm love it use Shader Editor ;) Thank's for you!

    PS. Sorry for my bad english :rolleyes:
     
  8. Ziboo

    Ziboo

    Joined:
    Aug 30, 2011
    Posts:
    356
    Thanks !
    It's kind of a big setup, do you plan on creating a node grouping all that like the "Scene blend" of ShaderForge ?
    It's something that will be use in particles shaders if you plan to add them.
     
  9. gozdagb

    gozdagb

    Joined:
    Feb 23, 2014
    Posts:
    71
    How to swap alpha in to rgb color?
     
  10. Amplify_RnD_Rick

    Amplify_RnD_Rick

    Joined:
    Feb 15, 2016
    Posts:
    528
    Hi gozlab,

    Is it possible for you to elaborate your question a bit more? I'm not quite sure if I understand what you need.

    If it's per example swapping the alpha channel on a Texture Sample for some custom value, you could use the Append Node like this:
    upload_2016-11-4_16-21-20.png

    Hope this helps.
     
  11. Amplify_RnD_Rick

    Amplify_RnD_Rick

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

    We just uploaded a new build into the download area.

    Release Notes v0.2.4 dev 004:
    • Fixed issues with wire shader
    • Fixed issues with 'Texture Coordinates' node
    • Removed warnings occurring on Unity v5.5
    • Fixed issue with 'Append' Node
    • Fixed issue with ASE Custom Material Inspector
    • Tweaked 'Local Vertex Pos' node to output differently if generating code for vertex or fragment ports

    Hope you guys have a great weekend!
     
    KRGraphics and Crossway like this.
  12. grogshotgames

    grogshotgames

    Joined:
    Aug 6, 2015
    Posts:
    77
    Hello!

    I just bought the asset today and I've been toying around.
    I'm just starting with shaders as my knowledge is quite limited.

    Some feedback (maybe it's been said, but I'm still reading page 3):
    - Add icons to the nodes for better and easier recognition.
    - I've had some random errors when adding/deleting nodes. It happened once that it wouldn't compile and was throwing an error as there was a misreferenced variable. After trying to compile it for the third time, it compiled successfully. Also, everything was right in the inspector, so it was a matter of it not replacing the code whenever needed.
    - It would be a huge Quality of Life improvement if when I right click and search for a node, I could use the arrow keys to navigate through the different nodes and create the one selected when Enter is pressed.

    I'll add some more stuff as I go on trying new stuff with it :D

    By the way, I'm interested in getting the outline of sprites. Any way to possibly do it at this stage?

    Thanks!
     
  13. benderete

    benderete

    Joined:
    Aug 31, 2014
    Posts:
    129
    TIP: How to use Flipbook UV Animation node with any tiling values:


    Captura de pantalla 2016-11-04 a las 22.55.00.png

     
    KRGraphics, nipoco and Reanimate_L like this.
  14. KRGraphics

    KRGraphics

    Joined:
    Jan 5, 2010
    Posts:
    4,467
    Thanks for the update and shader model support... hopefully I won't run out of texture interpolators for adding detail maps on my characters.

    I don't know if it's possible, but I'd like to see a way to organize the shader a bit, like categories. Such as, one can be main textures, and the others can be detail mapping or whatever. For my productions, I am making shaders that give the user full control of the final look.
     
    Last edited: Nov 6, 2016
  15. KRGraphics

    KRGraphics

    Joined:
    Jan 5, 2010
    Posts:
    4,467
    Hey guys... decided to play a little more in the shader editor tonight... and adding a feature in my shader set that will allow localised detail mapping on my models. Now this is specific to my project, where the colours, red, green, blue, and alpha will allow me to blend detail maps based on colour ID image... in this screenshot, I am testing out a way to set up a mask without it going over my texture memory. Alloy only allows one detail texture and for my current project, I don't want too many materials on characters...

    here is a screenshot of the shader. I am using a checker pattern to test out blending...

    Result of the black and white texture.

    Screenshot 2016-11-06 20.14.59.png

    And the graph...

    Screenshot 2016-11-06 20.15.03.png

    And now with the Detail ID map.

    Screenshot 2016-11-06 20.21.13.png

    If there is a faster way, I think this is it. When this shader is complete, you will be able to use up to 4 detail maps for Normal Maps (the ID map is STRAIGHT RED, GREEN, BLUE, and ALPHA so you will have to choose carefully. Example if you want cotton on one part, and spots on another, you will have to paint this in Substance Painter). This will be for situations where I can't squeeze all of the extra detail in Substance Painter (usually the entire character will be in one UV)

    Still a work in progress

    EDIT: Finally got it all working... the alpha channel is the default normal map. I should be multiplying the normals instead... but I am glad I got it working. And I hope grouping and commenting nodes is coming up. I don't want a rats nest. Up to 3 detail maps per material will work here.
    Screenshot 2016-11-06 21.01.10.png

    The black square is the default normal map (with the alpha inverted in that spot)

    Screenshot 2016-11-06 21.01.16.png
     
    Last edited: Nov 7, 2016
  16. KRGraphics

    KRGraphics

    Joined:
    Jan 5, 2010
    Posts:
    4,467
    One more shot of the blended normal maps working together... :) I still need to put through a torture test on a new character and see how much detail holds up...

    Screenshot 2016-11-06 21.54.36.png

    Works for ANY ID map, but it has to be RAW red, green, or blue

    Screenshot 2016-11-06 22.11.02.png

    Screenshot 2016-11-06 22.15.03.png

    I am still trying to find a way to leave the Main Normal Map unaffected, but this is the gist of my shader... with three additional layers of normal detail... any areas of the ID texture left black will show the default normal map.

    SPECIAL NOTE: This shader only works on Shader model 4.0 and above. And for the detail maps, it is best to have them very low res to save on texture memory. A 128x128 will be sufficient.
     
    Last edited: Nov 7, 2016
    benderete likes this.
  17. kebrus

    kebrus

    Joined:
    Oct 10, 2011
    Posts:
    415
    @KRGraphics it's looking good :) you noted earlier about the grouping nodes and commenting. You can already add a comment node hitting "c" and while node grouping isn't there yet you can always try to tidy it up moving the wires around :p

    PS: are you using any special shader for the skin?
     
    KRGraphics likes this.
  18. nipoco

    nipoco

    Joined:
    Sep 1, 2011
    Posts:
    2,008
    KRGraphics likes this.
  19. benderete

    benderete

    Joined:
    Aug 31, 2014
    Posts:
    129
    Yes, select the comment window and press del. The comment will be deleted but not the content.
     
    nipoco likes this.
  20. grogshotgames

    grogshotgames

    Joined:
    Aug 6, 2015
    Posts:
    77
    EDIT: I just realised the Panner node actually has SpeedX/Y implemented and I don't need to do it myself. Doh!

    What's the correct way to move X/Y Coordinates making them repeat?
    I'm just messing around, but I can only get X AND Y to be repeated, not a single one.

    I thought it would be something like this, but I'm mistaken.

    TilingShader.png

    If I set a value different than 1, the image I've set as a displacement map will stretch.
     
    Last edited: Nov 7, 2016
  21. nipoco

    nipoco

    Joined:
    Sep 1, 2011
    Posts:
    2,008
    Thanks!
    When I tried that first that didn't work. That's why I asked.
    Now I realized, I was still in the commentary field/title bar of the commentary :oops:
     
  22. KRGraphics

    KRGraphics

    Joined:
    Jan 5, 2010
    Posts:
    4,467


    Yep. Using Alloy Skin. Once ASE gets the ability to create skin shaders, I can't wait to go to town with it and get that additional control that I can get with Marmoset Toolbag 2 (and 3). Only problem I'll run into is texture limits and interpolator counts. My current shader only works at SM 4.0.
     
    kebrus likes this.
  23. benderete

    benderete

    Joined:
    Aug 31, 2014
    Posts:
    129
    Try with something like this:

    Sin título-1.png
     
  24. benderete

    benderete

    Joined:
    Aug 31, 2014
    Posts:
    129
    Would be great that panner node x and y speed properties would be exposed through ports too
     
  25. grogshotgames

    grogshotgames

    Joined:
    Aug 6, 2015
    Posts:
    77
    Yup. The panner method is enough for me for now.
    Thanks!
     
  26. grogshotgames

    grogshotgames

    Joined:
    Aug 6, 2015
    Posts:
    77
    Also... are Blending modes working correctly, or am I missing something here?
    I do the following, but it turns the sprite white.


    If I set it to the emission channel, which is what I actually need, the whole sprite turns white.

    Blending.png

    It also seems that the alpha isn't being taken into consideration? Changing it changes nothing.
     
    Last edited: Nov 7, 2016
  27. Deleted User

    Deleted User

    Guest

    Looks great, also have most of your other products so might as well add this one to the list.

    I've been working with UE4 for a long while now, this might swing me to come back over the fence with a couple of other things going on.

    I'll apologise in advance if this has already been covered, but the main strengths of UE's material editor is it's generic art based applications. What I mean by that is the little things that make a massive difference like blended vertex painting, if you have a small lake material for example, instead of messing around for ages with edge crests / foam you could just vertex paint a material around the edges.

    There's tons of other examples, if you wanted to add mould / colour offsets to a tower for example you'd just paint it on. Again with puddles on pathways, etc.. It's really simple, yet really effective and something that could set apart amplify shader editor.

    Don't even get me started with terrain, I tried a metric ton of Unity asset store stuff. Then proceeded to spend a month creating a proper terrain shader with self shadowed POM / dry + wet / fresnel (fuzz) / macro variations / camera world position offset (for procedural noise mask's) (it stops issues with tiling by applying noise mask gradients) and sub surface scattering for some components (like the odd in your face foliage mesh)..

    Especially in later iterations of Unreal, that'd probably take me half a day (it has a lot of cheat nodes (options) like POM / SSS) and a lot of easy to follow examples of how it should be done.

    It makes setting up artwork in engine a dream.. If Amplify node editor could make life that easy we're on a winner.
     
    Last edited by a moderator: Nov 7, 2016
    KRGraphics likes this.
  28. Amplify_Ricardo

    Amplify_Ricardo

    Joined:
    Jul 19, 2013
    Posts:
    2,389
    We really appreciate the support, feedback is very welcome. Those are great suggestions, some of them are already possible, others need some additional work on our side. You can use ASE to blend several textures using vertex painting, we also offer a few samples for coverage and mixing. Terrain support is high on our roadmap, we will post additional information soon.

    Stay tuned for future updates, we have quite a few additional samples and shader types planned.

    Thanks!
     
  29. KRGraphics

    KRGraphics

    Joined:
    Jan 5, 2010
    Posts:
    4,467
    I second this, especially for character work. I have Alloy and it would be nice to be able to extend its features or convert it to node form. I have been wanting three channel diffuse blur to make the skin soft, and very close to cinematic skin. same with eyes and hair.

    The game Paragon does this very well.
     
    Last edited: Nov 7, 2016
  30. Amplify_Ricardo

    Amplify_Ricardo

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

    It seems to be working on our side, can you send us the shader and textures used? We are available for direct contact via support@amplify.pt or forum pm.

    Thanks!
     
  31. benderete

    benderete

    Joined:
    Aug 31, 2014
    Posts:
    129
    WIP: Water with rain drops effect shader

    Captura de pantalla 2016-11-08 a las 0.56.22.png

     
    KRGraphics, nipoco and zyzyx like this.
  32. nipoco

    nipoco

    Joined:
    Sep 1, 2011
    Posts:
    2,008
    That's some great work!

    Could you post a high res screenshot of the node setup?
    In the video it's a bit hard to read.
     
  33. benderete

    benderete

    Joined:
    Aug 31, 2014
    Posts:
    129
    Hi, the shader is not finished yet. I want to change and improve a lot of things, and, of course, organize better the diagram.But here go on its actual state.
    Attached the shader, the rain ripples flipbook, water region mask and water waves normal. Note that the flipbook is not clean on tiles seams (i was too fast converting it to normal map and i must to change it).

    This shader is inspired on the work shown by @TheAlmightyPixel on this forum.

    Captura de pantalla 2016-11-08 a las 10.05.34.png
     

    Attached Files:

    Last edited: Nov 8, 2016
    antoripa, Rowlan, Squize and 3 others like this.
  34. Amplify_Ricardo

    Amplify_Ricardo

    Joined:
    Jul 19, 2013
    Posts:
    2,389
    Cool effect, it's super quick to setup and use.
     
    benderete likes this.
  35. nipoco

    nipoco

    Joined:
    Sep 1, 2011
    Posts:
    2,008
    Hey thanks! Really appreciate this.
    I don't mind if it's not finished, or rough around the edges.
    Just want to study some shader setups to see what is possible and what other people can come up with.

    Now here is a suggestion.
    It might come in handy, if you can get a detailed description (maybe with example) of each node in a little floating window, when you hover over it and press some hotkey. If I remember right, this is something Unreal Engine does. It saves some time, instead of looking into the manual and searching for the purpose of a particular node.
     
    Last edited: Nov 8, 2016
    benderete likes this.
  36. grogshotgames

    grogshotgames

    Joined:
    Aug 6, 2015
    Posts:
    77
    Hello!

    I more or less have sorted it out.
    It turns out I have to set the Blend Mode in the Main Node Properties to "Fade" instead of "Transparent", as I did with ShaderForge, which is the software I used to use.

    I believe the rest was due to my lack of knowledge around shaders.
     
  37. Amplify_Ricardo

    Amplify_Ricardo

    Joined:
    Jul 19, 2013
    Posts:
    2,389
    Hi!

    Happy to hear it. Be sure to let us know if you run into any issues at all, we don't mind examining it on our side if necessary. Feedback is very important, especially during the beta, it will help us improve the final product.

    Thanks!
     
  38. Amplify_Ricardo

    Amplify_Ricardo

    Joined:
    Jul 19, 2013
    Posts:
    2,389
    That's a cool suggestion, definitely something to consider. Access to node documentation will be improved in future versions.

    Thanks!
     
  39. grogshotgames

    grogshotgames

    Joined:
    Aug 6, 2015
    Posts:
    77
    Will do!
    Since I know little about shaders most of the time I feel I literally have no idea what I'm doing, tho.

    I'd like to see a multiple-input support for nodes like Multiply, Add, etc.
    For example:
    I create a Multiply node. Add two parameters, a third input node appears, I add a third parameter, a fourth input node appears... etc. They're not computed if they're not connected.
     
  40. Amplify_Ricardo

    Amplify_Ricardo

    Joined:
    Jul 19, 2013
    Posts:
    2,389
    Thanks!

    Those nodes are normally used with limited/fixed inputs, you can use several Multiply or Add nodes in order to construct accurate, and more complex, node networks. However, we do plan to offer a feature that would allow you to create custom composite nodes, similar to Material Functions in UE4.
     
    Peter77 and benderete like this.
  41. grogshotgames

    grogshotgames

    Joined:
    Aug 6, 2015
    Posts:
    77
    Yeah, but I was thinking of it as a way to improve readability compared to several nested Operator nodes.
     
  42. Amplify_Ricardo

    Amplify_Ricardo

    Joined:
    Jul 19, 2013
    Posts:
    2,389
    I see what you mean, readability is very important. Maybe we can add a few custom operators at a later stage for such uses. It's definitely possible to add them, we offer full source code if anyone is interested in trying it out.

    Thanks!
     
  43. kebrus

    kebrus

    Joined:
    Oct 10, 2011
    Posts:
    415
    Since the editor has a property sidebar it could be also cool to have that same information in there as well. :3

    What are those three channel diffuse blur? I've been reading a lot on skin shaders and I know I've seen techniques where they blur different different part but I believe thats all screen shader magic. Or are you referring to blurred normals where they sample the texture on a lower mip value? Because if it's the later it's fairly easy to add.
     
    KRGraphics likes this.
  44. KRGraphics

    KRGraphics

    Joined:
    Jan 5, 2010
    Posts:
    4,467
    Yes, to give the skin it's softness... like this:





    And I would love the ability to have a diffusion profile... there is another shader that does this very well, but it is a huge shader...
     
  45. kebrus

    kebrus

    Joined:
    Oct 10, 2011
    Posts:
    415
    I know what asset you are talking about, the thing is, that package does a lot, it manages those profiles and lets you create them, in terms of shaders alone it should be possible to create a more basic one with a preset profile (luts, values, etc). That package also deals with shadows a bit differently if I'm not mistaken which is hard to produce but blurring normals is straight forward. Blurring, like doing the "12 taps" version is very expensive. The editor still needs a few things to make it work, but it's getting there.
     
    KRGraphics likes this.
  46. nipoco

    nipoco

    Joined:
    Sep 1, 2011
    Posts:
    2,008
    Absolutely. That would make sense.
     
  47. KRGraphics

    KRGraphics

    Joined:
    Jan 5, 2010
    Posts:
    4,467
    I will happily take a basic... kinda like how it is done in UE4 with a Subsurface Profile.
     
  48. AdamGoodrich

    AdamGoodrich

    Joined:
    Feb 12, 2013
    Posts:
    3,782
    +1 for terrain shader support :)
     
    one_one likes this.
  49. barikinil

    barikinil

    Joined:
    Apr 15, 2015
    Posts:
    11
    Hello, Can we convert Roughness map to glossiness map.
    I am a bit confused about Smoothness. I know this is Unity issue. Wesm mentioned that "Unity Smoothness" is actually a glossiness map for both metalic and specular workflows. I have to convert roughness to glossiness to use at Smoothness.
    One suggestion: Can we see "debug result" of the node(something like multiply node, add node...) on that node
     
    KRGraphics likes this.
  50. KRGraphics

    KRGraphics

    Joined:
    Jan 5, 2010
    Posts:
    4,467
    Use the 1-minus node... I had to do this for a roughness map I painted in Substance Painter.
     
    barikinil likes this.