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. Thomas-Pasieka

    Thomas-Pasieka

    Joined:
    Sep 19, 2005
    Posts:
    2,174
    Is there a specific reason as to why I get a gap in my Flipbook animation even though there is no gap in the sprite sheet? It seems like it's waiting a quarter of a second before playing the animation again (see video)

    https://dl.dropboxusercontent.com/u/449179/The Raven/CandleFrameGap.flv

    Also, how would I randomize it so each candle does get a slight offset as to when to start playing the animation. Currently they all play in sync.
     
  2. laurentlavigne

    laurentlavigne

    Joined:
    Aug 16, 2012
    Posts:
    6,363
    We need an option to switch off fallback because the fallback casts a shadow even with the cast shadow option off.

     
  3. Mimterest

    Mimterest

    Joined:
    Dec 22, 2013
    Posts:
    8
    I don't know how feasible it is, but I was planning on experimenting a lot with substances that are dynamically adjustable in realtime, and it would be useful to get those to reflect on any shaders properly, I haven't had time to test how well it works yet :)
     
  4. Amplify_Ricardo

    Amplify_Ricardo

    Joined:
    Jul 19, 2013
    Posts:
    2,389
    We will do our best to make it as flexible as possible ;)
     
  5. kebrus

    kebrus

    Joined:
    Oct 10, 2011
    Posts:
    415
    Are you using the latest version? If I'm not mistaken, since the version with the custom shadow caster that's no longer the case, if you untick "cast shadows" the fallback is removed.
     
  6. Amplify_Ricardo

    Amplify_Ricardo

    Joined:
    Jul 19, 2013
    Posts:
    2,389
    Thank you for reporting the problem, glad to know that it was solved quickly via Twitter. To anyone else experiencing the same issue, we recommend downloading the latest package from our website.

    Thanks!
     
  7. Luckymouse

    Luckymouse

    Joined:
    Jan 31, 2010
    Posts:
    484
    Hey Amplify_Ricardo, We got the ASE in our studio and our artist team are exploring the ASE at the moment, so far we like it very much and want to see if it will fit in our production pipeline. I found your "vertex to fragment" node is very handy. Which we can calculate some equation in vertex and pass the result to fragment for pixel rendering.

    However as I understand ASE compiles the nodes to surface shader format with build-in unity physically based lighting (Metal, Spec, Lambert, Blinn-phong), after complied that include a lot of codes that we don't need, like GI stuff.

    Basically we are trying to do non-PBS custom shader in ASE for mobile VR. The shader performance is our main concern. So my question (actually a request :)) that will ASE include the Unlit light mode in future? which no lighting needed.

    Also is that possible ASE compiles directly to vertex/fragment code based shader, instead of surface shader?
     
    Last edited: Feb 13, 2017
  8. petersx

    petersx

    Joined:
    Mar 5, 2015
    Posts:
    239
    Hello,

    Some screens from testing ASE with UE4 demos. On taking screenshot bloom is not working - don't know why.
    Waiting for material functions :) .
    Unity 5.6.0b7, ASE - v.0.4.1 dev 002




     
    Last edited: Feb 13, 2017
    nxrighthere, Gray_Master and Flurgle like this.
  9. Amplify_Ricardo

    Amplify_Ricardo

    Joined:
    Jul 19, 2013
    Posts:
    2,389
    Looks great! Can you elaborate on the bloom issue? Any additional information would be most welcome.

    Material Functions will be available soon, it's one of our top interaction priorities.

    Thanks!
     
  10. petersx

    petersx

    Joined:
    Mar 5, 2015
    Posts:
    239
    The bloom problem is not with ASE - I'am using Saad Khawaja Screenshot - must find something else for better screenshots.
     
  11. Amplify_Ricardo

    Amplify_Ricardo

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

    Thank you for trying it out, we really appreciate your interest. Although you currently can only create Surface Shaders, upcoming versions will include dozens of additional shader types, custom lighting models and extended options. Your requests are on our roadmap, we will keep you posted on any related developments.

    Thanks!
     
    Luckymouse likes this.
  12. Amplify_Ricardo

    Amplify_Ricardo

    Joined:
    Jul 19, 2013
    Posts:
    2,389
    Thank you for clearing it up.
     
  13. petersx

    petersx

    Joined:
    Mar 5, 2015
    Posts:
    239
    Hello again,

    Some screens from other UE4 demo. I can't make good fire shader - I must work on it.
    Unity 5.6.0b7, ASE - v.0.4.1 dev 002
















     
    kebrus and Flurgle like this.
  14. Amplify_Ricardo

    Amplify_Ricardo

    Joined:
    Jul 19, 2013
    Posts:
    2,389
    That's pretty good, very close to the original scene lighting setup. What type of anti-aliasing are you using?
     
  15. petersx

    petersx

    Joined:
    Mar 5, 2015
    Posts:
    239
    For example - this is default windows screen captured - the bloom from emissive is ok :
     
  16. petersx

    petersx

    Joined:
    Mar 5, 2015
    Posts:
    239
    Fast AAA with Extreme Quality from Post Processing Behaviour Script.
     
  17. Player7

    Player7

    Joined:
    Oct 21, 2015
    Posts:
    1,533
    Jeez I can't fking stand chromatic aberration I think its even worse than motion blur in games, what a terrible effect replicating the flaw of a bad camera lens.. like yknow :rolleyes:
     
    spaceemotion and Shodan0101 like this.
  18. Flurgle

    Flurgle

    Joined:
    May 16, 2016
    Posts:
    389
    @petersx this is amazing stuff you're doing. Do you have comparison shots from UE4?
     
  19. laurentlavigne

    laurentlavigne

    Joined:
    Aug 16, 2012
    Posts:
    6,363
    Thanks Kebrus, it does!

    Is it now possible to make an additive material which will fade with fog? And what about custom lighting? What about SH9 and getting the result of reflection probe?

    Where is the channel node? The one where you can pipe in multiple 1d values and get a 4d vector for color?

    we need a x to clear the search field so we can keep the left hand in the left side of the keyboard and
    BUG: entries in the search menu disappear when I scrollwheel too fast and another
    BUG: key up/down don't move the selection from the search field to the list
    BUG: ticking tesselation doesn't do anything
     
    Last edited: Feb 13, 2017
  20. Gray_Master

    Gray_Master

    Joined:
    Jun 20, 2010
    Posts:
    152
    It's Cool )
     
  21. petersx

    petersx

    Joined:
    Mar 5, 2015
    Posts:
    239
    ASE rocks ;) Simple water shader looks great! (of course - without SSR is no efect)
    Unity 5.6.0b7, ASE - v.0.4.1 dev 002
     
    Freznosis, antoripa and Shodan0101 like this.
  22. Gray_Master

    Gray_Master

    Joined:
    Jun 20, 2010
    Posts:
    152
    Rocks/Stones very good. You use Water from ASE demo scenes ?
     
  23. petersx

    petersx

    Joined:
    Mar 5, 2015
    Posts:
    239
    No, I'am learning shaders from UE4 demos - this is copy - shader from UE4 Temple demo. I like Unity very much - but standard shader is too difficult to me - ASE gives a chance Unity to look better ;)
     
    Flurgle and Shodan0101 like this.
  24. Gray_Master

    Gray_Master

    Joined:
    Jun 20, 2010
    Posts:
    152
    in Rocks screen too? What Above screens is copies i known (from you says). I like this (in this moment make water too, but without shore waves).
     
  25. Amplify_RnD_Rick

    Amplify_RnD_Rick

    Joined:
    Feb 15, 2016
    Posts:
    528
    Hi guys,
    We've uploaded a new build into our website.

    Here are the release notes:

    Release Notes v0.5.0 dev 001:
    New:

    • Substance Support:
      • Can drag and drop a Substance into ASE Canvas and use its results via the new 'Substance Sample' node
      • Added example using the new 'Substance Sample' node located at Examples/Official/Substance
    • Added Attributes to Property Nodes
    • Added Conditional 'If' Node with Dynamic Branching option
    Fixed issues:
    • 'Texture Array' node
    • 'Texture Coordinates' node
    • Tessellation example on MacOs
    • Multiple examples with Unity beta version 6 and above
    Improvements:
    • Tweaked 'Flipbook UV Animation' node
    Be sure to check out the Substance sample included on this latest Amplify Shader Editor update!




    Reacting both to fog and SH9 should be automatically working since we're generating surface shaders.
    We are exposing fog parameters via the Fog Params node. Please let us know if you need access to additional parameters.
    We still don't support Custom Lighting

    The node we have that does that is called Append.

    Agreed. This is a really useful suggestion.

    Will try to replicate it and fix.

    This is not implemented but it's a great suggestion. Will register this one.

    We'll be doing some tweaks on the Nodes Palettes on a near future and will definitelly take your report/suggestion into account.

    Couldn't replicate this one. Were you configuring Tessellation via its port or via the Master Node Properties?
     
    Malbers, nxrighthere, hopeful and 2 others like this.
  26. laurentlavigne

    laurentlavigne

    Joined:
    Aug 16, 2012
    Posts:
    6,363
    Via the Master Node Property

    I'll give you a examples of what I do with probe data: mip the reflection to 4-5 and use world space reflection to simulate diffuse lighting kind of a cheap 1 bounce GI. Saturate the probe lights, bake reflection to lightprobes (probably more of a post effect?).
     
  27. Shodan0101

    Shodan0101

    Joined:
    Mar 18, 2013
    Posts:
    141
    Wow substance support!!! Aaaaaaaaaaaaaaah!!! ;D YES!!! Awesome!! ;D
     
  28. TimNedvyga

    TimNedvyga

    Joined:
    May 18, 2015
    Posts:
    95
    I think Screen Position y axis is flipped in camera view when I'm using Forward rendering
    I'm trying to use one minus, but y axis flipped in scene view now.

    using Unity 5.5.0f3 and new ASE v0.5.0 dev 001

    here is screens with one minus
    Camera view

    Scene view


    Is this how Unity works or you could fix this issue?
     
    Last edited: Feb 14, 2017
  29. 2dgame

    2dgame

    Joined:
    Nov 24, 2014
    Posts:
    83
    Is ASE planned to have a preview area in which we can preview the material on a couple of primitives immediately?
     
    Flurgle likes this.
  30. Flurgle

    Flurgle

    Joined:
    May 16, 2016
    Posts:
    389
    @2dgame i'd like to add also it would be nice to have preview pics on each node like Shaderforge (unless that's a feature I can't find)
     
  31. Gray_Master

    Gray_Master

    Joined:
    Jun 20, 2010
    Posts:
    152
    Coming Soon. Autor say about this there .

    ***
    PS. Amplify_RnD_Rick, I have idea for this tool. How i think, multiply node need more selectable input modes (multiply2 - multiply4 as (for example) append node). On final multiply2 equivalent current multiply, multiply4 must have 4 input nodes for action).

    And Question at last - in menu i find not active "Amplify post process" item. When this Subtool expected ?
     
    Last edited: Feb 15, 2017
    Flurgle likes this.
  32. Flurgle

    Flurgle

    Joined:
    May 16, 2016
    Posts:
    389
  33. Gray_Master

    Gray_Master

    Joined:
    Jun 20, 2010
    Posts:
    152
    No Problem :)
     
  34. Mark_T

    Mark_T

    Joined:
    Apr 25, 2011
    Posts:
    303
    @kebrus- thanks for input mate. That might be a way to convert a color into an index.Mapping the textures to the desired vertices might be another challenge.
    @Amplify_Ricardo - It would be really useful to have a friendlier way to handle all the textures into a Texture Array node, something like a multiple index input and multiple textures output. The mock-up below might be a way to do it. Megasplat way might be another. I would even suggest a built in lerp function and this way I can input the mask and each RGBA output would be already interpolated with the previous texture in the stack or with the desired index.
    I tried to use multiple instances referencing to the same texture Array node, but it quickly becomes really hard to handle all the wiring and lerping. And that was for Albedo only. Trying to do the same thing for all the other channels, things can become pretty hairy.
    One other thing I noticed working with many nodes was that, while updating/refreshing the shader, the material was losing the shader switching the shader to the Unity standard one, forcing me to reassign all the textures back to the shader (Unity 5.5.0 and the latest 0.5 ASE). Pretty challenging workflow. :)
    TAmockup.png
    Maybe there is a way to do it that I`m not aware off. I'm still trying to transfer my Shader Forge knowledge into ASE.
     
  35. kebrus

    kebrus

    Joined:
    Oct 10, 2011
    Posts:
    415
    There are two "screen position" nodes, one is just "screen position" and the other is "grab screen position" and both add a conditional define to flip the screen by default but the first one can be set to output the raw values while the latter one does some extra steps to guarantee correct screen values for every platform. This is by design and recommended by unity because some platforms have special screen configuration. Use the latest version and check the behavior from "grab screen position" that should do the trick, if it doesn't share your shader, maybe there's something missing.
     
  36. Amplify_RnD_Rick

    Amplify_RnD_Rick

    Joined:
    Feb 15, 2016
    Posts:
    528
    Apologies for asking for more info but what were your steps?
    You clicked on the tessellation toggle property, clicked on the Update button and Tessellation remained inactive?
    Also what were your settings on the Tessellation setup?

    Thank you so much for your suggestion. We have already an extensible multiply node on the works, hopefully we'll be able to release it soon.
    Regarding the Amplify Post Process unfortunately we don't have an ETA for that.

    Thank you so much for your input. We agree with you, the way it is implemented can become a bit confusing really quick.
    We'll take a look at your suggestion and internally discuss a better approach to Texture Arrays usage.

    I'm not quite sure what you meant. Are you hitting the Update button and loosing your texture references on the material?
    Is it possible for you to let me know your steps so I can replicate the issue on my end?
     
  37. Gray_Master

    Gray_Master

    Joined:
    Jun 20, 2010
    Posts:
    152
    But this functions in plans to future (if menu item exist) - this function want many ASE users as i think ?
     
  38. petersx

    petersx

    Joined:
    Mar 5, 2015
    Posts:
    239
    Hello,
    Another example of Unity beauty with ASE
    Unity 5.6.0b8, ASE - v.0.5.0 dev 001




    Some questions to ASE:
    1. The Switch is only 0/1 values - how to make a switch as checkbox ?
    2. Textcoord UV set start from 1 - in UE4 starts from 0 - that's mean Unity UV(1) = UE4 UV(0), Unity UV(2)=UE4 UV(1) etc. ?
    3. How to use specular with metalic ? this is the Unity problem or ASE ?
    4. How to copy nodes from one shader to another ? How to open 2 shaders to copy from one to another ?
    5. Is there possibilty to add some nodes to fasten operations ? for example clamp01 with default min=0 max=1 values ?
    6. Sometimes switch nodes don't show in Material Properties tab - maybe bug ?

     
    Shodan0101 likes this.
  39. Shodan0101

    Shodan0101

    Joined:
    Mar 18, 2013
    Posts:
    141
    Fantastic!! Would love to see some Post Effects on these "Prism and Beautify" would look incredible!!
     
  40. egandara

    egandara

    Joined:
    Jul 15, 2015
    Posts:
    1
    Hi, is there any plan to include a real Additive/Unlit blend mode? I think this is quite important in order to work with particles and vfx by extending it with ASE.
    The closest approach I had was setting the blend mode to transparent, but it doesn't glow as the default built-in additive shader:
    upload_2017-2-15_13-14-1.png

    Thanks!
     
  41. petersx

    petersx

    Joined:
    Mar 5, 2015
    Posts:
    239
    Hello,
    It's so much fun with ASE and water shaders and it is so easy ;)
    Unity 5.6.0b8, ASE - v.0.5.0 dev 001
     
    Shodan0101 likes this.
  42. Mark_T

    Mark_T

    Joined:
    Apr 25, 2011
    Posts:
    303
    Please accept my apologies for the false alarm. Restarting Unity wasn't enough. Even when creating a new project I had the same problem. After rebooting the system everything was fine. I was working in a messy project where I gather loads of assets and learn how to deal with new packages. Again, sorry for the false alarm!

    I had quite a few nodes used as instances for the same texture array node. I was trying to texture multiple assets sharing the same UV space and I found it can be pretty convenient and have a good impact on performance. Having such an expanding option can be beneficial I think on lerp, blending nodes and maybe others too. And if they become too big, maybe they can be collapsed.
    Or maybe, having an option to pack/collapse multiple nodes in a master/mega node with custom inputs and outputs might solve the problem.

    Maybe these last posts were a bit to harsh, but you have to know that I really enjoy your product and, considering your expertise and other products, I'm really happy you decided to build ASE.
    A big Thank You for that!
     
  43. laurentlavigne

    laurentlavigne

    Joined:
    Aug 16, 2012
    Posts:
    6,363
    I clicked on the tesselation button then update because it remained yellow for a while and in the viewport there was no change: the sphere remained low poly. All settings were grayed out.
    Another time when the tesselation settings were accessible, nothing impacted the display, blinn-fong on/off, cranking up the values etc ...
     
  44. Dark_Templar

    Dark_Templar

    Joined:
    Jan 26, 2014
    Posts:
    5
    Hi, I have problem with masking fresnel node. I am trying to create planet atmosphere witch depends on directional light. For now i have tree like this:

    planet_shader.PNG

    If i connect clamp node or fresnel multiply node to emission all works as expected. In current configuration emission not working.

    Done:
    planet_shader.PNG
     
    Last edited: Feb 15, 2017
  45. TimNedvyga

    TimNedvyga

    Joined:
    May 18, 2015
    Posts:
    95
    Yes, grab screen position works perfectly!

    One more question
    As I know SpriteRenderer need _MainTex and _Color properties to control material texture and tint.
    If _MainTex work perfectly, then _Color not at all. SpriteRenderer do not change tint. Here is this simple shader

     
  46. TeohRIK

    TeohRIK

    Joined:
    Jan 22, 2014
    Posts:
    106
    Thanks!
    Just 1 more question, is it possible to use the amplify shader to create skybox for now?
     
  47. Gray_Master

    Gray_Master

    Joined:
    Jun 20, 2010
    Posts:
    152
    Whyle Tool support Only Surface shders (Standard/Specular, Lambert & Blinn Phong. For SkyBoxes need multipass (un)Lit Shaders. As i Look in this theme on one from previous page autor include this shader type in roadmap, but this is not quick i think :)
     
  48. Amplify_RnD_Rick

    Amplify_RnD_Rick

    Joined:
    Feb 15, 2016
    Posts:
    528
    Yes, we plan to extend ASE use far beyond Surface Shaders.

    Your shots are truly amazing. Really awesome work.
    Answering your questions.
    1. For now you can't but we'll release a new build later today on which you can go to your Toggle Switch node properties and add a Toggle Attribute.
    2. Exactly.
    3. You can go to the Master Node Light Model and switch from Standard to Standard Specular
    4.You can open shader 1, select everything with Ctrl+A, copy via Ctrl+C. Open shader 2 and paste with Ctrl+V.
    Beware that we still have some nasty Copy/Paste issues which were reported by the community but unfortunately didn't have the time to tackle them.
    5. Sure, adding new nodes is relatively easy. We already started writing an API section on our wiki explaining how to do it.
    6. Yes this is a bug, I'll try to replicate it on our end and apply a fix.


    Yes, we are planning to extend ASE to create Vertex/Frag shaders so you can create real unlit shaders.


    No problem at all.
    Community feedback is really important to us, so always let us know if you have any issue, don't agree on how some feature is displayed, etc.

    Thanks for the additional info. Will try to replicate taking it into account.

    We took a look into the Fresnel node but everything seems to be working as intended.
    We are not quite sure what might be the issue. Is it possible for you to give us additional info explaining what you were expecting(visually) so we can figure out what might be happening?
    On detail you need to change on your shader is set the Render Path to Forward Only since light information is only available on Forward path.
    On our end we need to warn users of this or automatically Lock the Render Path if nodes containing light info are used.


    I've been looking at the SpriteRenderer default shader code and noticed they Tint according to two inputs, _Color as you already discussed, but also Vertex Color.
    The Color parameter you change on the Sprite Renderer changes the quad Vertex Color, so in order for you shader to take it into account you need to do something like this:
    upload_2017-2-16_15-52-46.png


    Like Gray_Master already stated, unfortunately it is still not possible to create multipass shaders on ASE.
     

    Attached Files:

  49. Amplify_RnD_Rick

    Amplify_RnD_Rick

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

    Like promised, we just uploaded a new build into our website.

    Here are the release notes:
    Release Notes v0.5.0 dev 003:
    • New features:
      • Adding Toggle Attribute to 'Switch Toggle' node
      • 'Texture Coordinate' now support float3 or float4 output types
      • Fixed issues on:
      • Fixed issue with Live Mode load/save state
      • Fixed repaint issue with picking ports
      • Fixed issue with local variable declaration on Master Node Debug port
      • Fixed issue with Screen Space Curvature example
      • Fixed issue with reading fade parameter on master node
      • Fixed issue with Transparency shader
    • Tweaks/Improvements:
      • Tweaked how ports are saved/loaded via shader meta to easily modify existing nodes port amount without breaking older versions (API)
      • Tweaked Simple Noise example
      • Tweaked Read Atlas examples
      • Tweaked Translucency example
      • Tweaked 'Substance Sample' node preview
      • Changed Colored ports saving mechanism
      • Minor tweak on 'Texture Sample' node
    For internal reasons we had to jump from dev 001 to dev 003.

    Happy shader creations!
     
  50. kebrus

    kebrus

    Joined:
    Oct 10, 2011
    Posts:
    415
    While Rick already answered you let me add that unity's built-in shaders for particles don't necessarily work as you might think, that additive shader you have on your example uses the blend mode "AlphaSrc One" with colormask "RGB" and zwrite "Off" while the default presets in the editor set unity's surface blend modes which don't always do want you might want, if you put the blend mode into "Custom" you can set each individual option and match exactly what unity uses for their particles.

    In this screen the red particles use a shader from the editor while the blue ones use unity's default additive. As you can see they are visually similar and glow as you expect them to glow. AdditiveParticles.PNG
     
    Gray_Master likes this.