Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

ShaderFusion - node based shader editor (Closed Beta)

Discussion in 'Made With Unity' started by CorruptScanline, Nov 15, 2009.

  1. CorruptScanline

    CorruptScanline

    Joined:
    Mar 26, 2009
    Posts:
    217
    Shader Fusion is a node based shader editor. It allows the user to create extremely complex shaders and effects in a flowchart-like environment. Anyone who has used the Unreal Engine 3 material editor or Mayas HyperShade should be very comfortable with it.



    I have finally got a beta package to distribute to beta testers. I already have a few testers but could use a few more. For anyone beta testing, it would be great if the testers could send me (or post here) shots of some of the stuff they make with it to help promote the software ;)


    some example shaders:

    A planet shader. The clouds are part of the main planet shader and they have parallax and cast shadows on the surface. The atmosphere is slightly bigger sphere around the planet.

    Webplayer:
    http://www.keenleveldesign.com/pimp...etexample01/ShaderFusion_PlanetExample01.html

    This example is procedural placement of snow or ice. You can adjust a single value to have the snow build up or melt. It places the snow mostly on the upwards facing surfaces of an object.


    Here is the current list of nodes:
    Texture - A texture.
    TODO: CubemapTex
    MainTex - A special texture with a perperty name of "_MainTex".
    Lightmap - A special texture used for lightmapping.
    Number - A constant single Number or float value.
    Color - A constant color value.
    Vector2 - A constant Vector2.
    Vector3 - A constant Vector3.
    Vector4 - A constant Vector4.
    Add
    Subtract
    Multiply
    Divide
    Fresnel - The "facing ratio" of the surface.
    Highest - The highest of 2 Number values.
    Lowest - The lowest of 2 Number values.
    Lerp - Blend between 2 values based on a 0-1 range bias.
    UV1 - Main uv channel.
    UV2 - Secondary uv channel.
    VertexColor - Vertex Color channel(Vector4).
    SurfaceNormal - The normal of the surface in object space.
    ViewDir - The unnormalized view direction.
    LightDir - The light direction.
    Time - Time in seconds(I think) that the game has been running.
    DisplaceOffset - Calculate the parallax offset for uvs based on height data. add this to your UVs before plugging it into a Texture node.
    Vector.X - The X component of a vector.
    Vector.Y - The Y component of a vector.
    Vector.Z - The z component of a vector.
    Vector.W - The W component of a vector.
    Vector.XY - The X,Y component of a vector.
    Vector.XYZ - The X,Y,Z component of a vector.
    NumberToVector - Creates a vector with a length matching the number of connected inputs.
    ElementOf - The element of a vector matching Index (Vector[index]).
    Abs - The absolute value of a number.
    Distance - The distance between 2 points.
    Normalize - Normalize a vector.
    Power
    Floor - Round DOWN to the nearest whole number.
    Ceil - Round Up to the nearest whole number.
    Cosine
    Sine
    CrossProduct
    DotProduct
    SquareRoot
    Fmod - I have no idea what this does :)
    Frac - I have no idea what this does :)
    ParamNumber - A Number value that you can change per material(or through code).
    DOTO: ParamColor - A Color value that you can change per material(or through code).
    DOTO: ParamVector2 - A Vector2 value that you can change per material(or through code).
    DOTO: ParamVector3 - A Vector3 value that you can change per material(or through code).
    DOTO: ParamVector4 - A Vector4 value that you can change per material(or through code).
    Transform - Transform a vector based on a matrix.
    ObjToWorld - ObjectToWorld transform matrix (as Vector4x4)
    ObjToWorldV3 - ObjectToWorld transform matrix (as Vector3x3)
    WorldToObj - WorldToObj transform matrix (as Vector4x4)
    WorldToObjV3 - WorldToObj transform matrix (as Vector3x3)
     
  2. Lab013

    Lab013

    Joined:
    Oct 22, 2008
    Posts:
    405
    Quite impressive! Does it have the ability to read shaders?
     
  3. bigkahuna

    bigkahuna

    Joined:
    Apr 30, 2006
    Posts:
    5,434
    Wow, this looks excellent! :D
     
  4. ColossalDuck

    ColossalDuck

    Joined:
    Jun 6, 2009
    Posts:
    3,246
    Even with all the new rudeness and newbies who want there game made for them, there are still good people on this forum. My heart just unfroze :) .
     
  5. spiralgear

    spiralgear

    Joined:
    Dec 13, 2007
    Posts:
    528
    Holy crap man that looks amazing. Good work.
     
  6. CorruptScanline

    CorruptScanline

    Joined:
    Mar 26, 2009
    Posts:
    217
    Lab013, If you load a shader that was not made with the editor you get a blank shader and the contents will be overwritten when you save. The editor saves data in the shader file that the editor needs for node placement, links etc, when loading the shader back in.

    Heres a webplayer example of the snow shader. It has a slider to control the density if the snow.
    http://www.keenleveldesign.com/pimp...snowexample01/ShaderFusion_SnowExample01.html
     
  7. liverolA

    liverolA

    Joined:
    Feb 10, 2009
    Posts:
    347
    wow,fantastic~
     
  8. Whimsical

    Whimsical

    Joined:
    Mar 29, 2008
    Posts:
    155
    If this shader editor is as good as it looks, I'll sure purchase a license.
    Have you thought about a price already?
     
  9. KaelisAsur

    KaelisAsur

    Joined:
    Apr 9, 2009
    Posts:
    361
    Woah, spectacular. Thank you!
     
  10. Dreamora

    Dreamora

    Joined:
    Apr 5, 2008
    Posts:
    26,601
    I guess this is a Unity Pro only thing as it likely uses RenderTextures?

    Its great to see the graph editor idea beeing taken to the production level :)
     
  11. MikeBlaustein

    MikeBlaustein

    Joined:
    Aug 18, 2009
    Posts:
    24
    That is really impressive. I can't wait to see it when it is done!
     
  12. cannon

    cannon

    Joined:
    Jun 5, 2009
    Posts:
    751
    That looks great!

    Please have presets for some common weather effects (wet, icy, etc.); that would make it an easy sell to lots of artists.
     
  13. loken

    loken

    Joined:
    Mar 25, 2009
    Posts:
    109
    Very nice!

    I'm interested as well in the licensing scheme for this? Also if it's available for Indie/Pro..
     
  14. Jessy

    Jessy

    Joined:
    Jun 7, 2007
    Posts:
    7,325
    I'm going to have to say, as an artist, I would never use this. The straight lines for noodles, huge discrepancy in size between the noodles and sockets (1-pixel noodles also aren't nice), lack of color-coding, and illegibility that comes from not using padding, make this system extremely unsightly, which is not good for productivity or user happiness.

    Don't get me wrong; I love nodes, and think they would be a valuable addition to Unity. However, this is not ready for prime-time. It looks like it was made by a shader programmer.
     
  15. KaelisAsur

    KaelisAsur

    Joined:
    Apr 9, 2009
    Posts:
    361
    Yes, it does look rather raw and unpolished, but its a step in the right direction, and im sure the licensing will be reasonable.
     
  16. defmech

    defmech

    Joined:
    Feb 24, 2007
    Posts:
    506
    I'd definitely like to see some better noodle routing and an aesthetic bump, but as a begger, I will not be a chooser. This would actually open up shader editing to me and that's better than not doing it at all. Can't wait to start playing with this!


    In case you haven't seen it, here's a similar project posted a while back:
    http://forum.unity3d.com/viewtopic.php?p=91977

    It's sortof unfinished and is mostly focused on procedural generation and not general shader editing.
     
  17. CorruptScanline

    CorruptScanline

    Joined:
    Mar 26, 2009
    Posts:
    217
    cannon, I will try to release it with many example shaders.

    Jessy, I will try to get thicker AA lines for the node connections. At some point I wanted to color code the nodes. Probably based on the type of node they are (math, texture, parameter values, constant value, transforms, etc..) I left it gray scale for now to fit with the rest of the unity UI. One thing I do not want to do is make large "bubbly" UI.

    also this works(and was build) with the free version of unity.
     
  18. melmonkey

    melmonkey

    Joined:
    Mar 31, 2009
    Posts:
    373
    Put me down for at least one license!

    I love this....and as far as I'm concerned it is more than ready for prime time. If it all functions as its' supposed to, it is ready!

    You wouldn't believe some of the tools I have had to use in my professional career.
     
  19. CorruptScanline

    CorruptScanline

    Joined:
    Mar 26, 2009
    Posts:
    217
  20. n0mad

    n0mad

    Joined:
    Jan 27, 2009
    Posts:
    3,732
    Truly interesting.
     
  21. Alvarus

    Alvarus

    Joined:
    Apr 10, 2009
    Posts:
    203
    Very nice screenshots! My computer at work must not be up to par, all I see is a lit gray sphere.
     
  22. CorruptScanline

    CorruptScanline

    Joined:
    Mar 26, 2009
    Posts:
    217
    Alvarus, yeah this shader requires Shader Model 3, But that reminds me, I need to add fallback reference stuff.
     
  23. SimonAlkemade

    SimonAlkemade

    Joined:
    Feb 4, 2009
    Posts:
    432
    Really really nice. Even better then the stuff the use in Eve online
     
  24. CorruptScanline

    CorruptScanline

    Joined:
    Mar 26, 2009
    Posts:
    217
    I got a beta build ready, and updated the first post with some info about it. I only want to accept a few testers right now so if I dont get back to you its probably because I have enough already.

    You can apply by sending me an email at the address located on my website in my signature. include your portfolio if you have one and the intended use(group project, commercial, personal, etc).
     
  25. Arges

    Arges

    Joined:
    Oct 5, 2008
    Posts:
    359
    Hello Kurt,

    The screenshots that you linked to on your posts seem to be under a directory that requires username and password, as I'm getting a bunch of Firefox authentication dialog boxes when reviewing the thread.

    Cheers,
     
  26. scarpelius

    scarpelius

    Joined:
    Aug 19, 2007
    Posts:
    966
    The whole site is under htaccess password :)
     
  27. CorruptScanline

    CorruptScanline

    Joined:
    Mar 26, 2009
    Posts:
    217
    Yeah Epic fail... Fixed now :p I blame my web hosts UI.

    EDIT: If you are testing and notice that shaders fail to load or load and save incorrectly, this is because of a float parsing problem based on the language settings of your OS (if its not set to english). This should be fixed soon.
     
  28. WinningGuy

    WinningGuy

    Joined:
    Aug 10, 2009
    Posts:
    884
    What a great tool!

    Do you have an idea on what pricing will be? Also, any projected release date?
     
  29. lion-gv

    lion-gv

    Joined:
    Nov 12, 2007
    Posts:
    118
    Looking good Kurt! Keep up the good work!
     
  30. freshcut

    freshcut

    Joined:
    Nov 17, 2008
    Posts:
    71
    just what unity needs!
    I think there's been some requests for this on the feedback site so well played for filling the request.
    I like it, and for it not being "pretty" I think that is totally forgivable as its a beta.
    Make it work first, make it pretty later.
     
  31. Ony

    Ony

    Joined:
    Apr 26, 2009
    Posts:
    1,977
    Awesome, awesome, awesome. I can't wait to try this out and yes I agree with melmonkey. Having started in games working on Genesis and SNES all the way up to the present I have definitely worked with some tools that weren't all shiny pretty but certainly did what they set out to do and did it well.

    This is super cool and I am really excited to see all the new shaders that end up coming out of it.
     
  32. Mangopork

    Mangopork

    Joined:
    Aug 16, 2009
    Posts:
    108
    HOLY SH*!

    This is EXACTLY what i've been looking for!

    WHERE WHERE WHERE WHERE WHERE WHERE WHERE WHERE WHERE DO I DOWNLOAD THIS
     
  33. lcarames

    lcarames

    Joined:
    Nov 4, 2009
    Posts:
    2
    as i do to test the beta?
     
  34. Tysoe

    Tysoe

    Joined:
    Jul 6, 2009
    Posts:
    577
    Very nice was wondering when/if unity might get something like shaderFX shader editing.

    Look forward to buying a licence when it's finished.
     
  35. brisingre

    brisingre

    Joined:
    Nov 8, 2009
    Posts:
    277
    This is something Unity needs desperately. How might I get into this closed beta?
     
  36. frogwise

    frogwise

    Joined:
    Nov 27, 2009
    Posts:
    103
    We need this project rebooted back to life! It was looking like the best solution for node based shader editing in Unity. I hope there's a public release soon, as any private messages to the author with interest in trying out the beta have gone unanswered :(
     
  37. brisingre

    brisingre

    Joined:
    Nov 8, 2009
    Posts:
    277
    It's hardly in need of a reboot, the first post is less than a month old.
     
  38. maxfax2009

    maxfax2009

    Joined:
    Feb 4, 2009
    Posts:
    410
    how is the beta going, will we have public release soon?
     
  39. innociv

    innociv

    Joined:
    Dec 17, 2009
    Posts:
    36
    Will this require unity pro to use?

    And some color-coding(like basic math one color, fresnel type things another, procedurals another, so on) and curved lines would be great.
     
  40. KRGraphics

    KRGraphics

    Joined:
    Jan 5, 2010
    Posts:
    4,458
    I use XSI for my development of games in Unity (Buying a pro licence soon) and this is a welcome addition. I am an artist and i would love to stay on the artist side, until i have to program my game lol.

    I wish to also know how this is going... i would love to buy a license of this if it is reasonable...

    :)
     
  41. maddsketch

    maddsketch

    Joined:
    Jan 15, 2010
    Posts:
    3
    Wow i wasn't sure if something like this was gonna be on Unity, but i was always hoping. This is amazing! I have used Unreal for 4 years and also played with the latest unreal3 engine and so i'm pretty used to the whole node based material editor now. And the screenshots look so promising. Unity you are my favorite engine!
     
  42. fallingbrickwork

    fallingbrickwork

    Joined:
    Mar 16, 2009
    Posts:
    1,072
    Wow... how did I miss this thread?!!!

    How is this progressing and any news on a final build? I would be extremely interested in a licence for this.

    Kindest Regards,
    Matt.
     
  43. Garu

    Garu

    Joined:
    Feb 11, 2010
    Posts:
    5
    +1 think about this, and dream... Is this shader maker complete? Or some demo\beta\alfa vers. for download?
     
  44. J_P_

    J_P_

    Joined:
    Jan 9, 2010
    Posts:
    1,027
    I'd love to get my hands on this
     
  45. Garu

    Garu

    Joined:
    Feb 11, 2010
    Posts:
    5
    First post - Sun Nov 15, 2009 7:39 am
    Nearly 80 days left... It seems to me, that it's time to start open beta test... *waiting*
     
  46. minevr

    minevr

    Joined:
    Mar 4, 2008
    Posts:
    1,018
    Take a look.so cool.. 8)
     
  47. Luckymouse

    Luckymouse

    Joined:
    Jan 31, 2010
    Posts:
    484
    Awesome Tool! Can't wait for that. Will this unity ShaderFusion Tool available as a 3rd party plug-in? or it will included in the future release of unity?
     
  48. Garu

    Garu

    Joined:
    Feb 11, 2010
    Posts:
    5
    any news? wait, wait, wait... =|
     
  49. gokhanertem

    gokhanertem

    Joined:
    Aug 31, 2009
    Posts:
    95
    is it dead?
     
  50. Dreamora

    Dreamora

    Joined:
    Apr 5, 2008
    Posts:
    26,601
    I would guess yes