Unity Community


Page 1 of 146 1231151101 ... LastLast
Results 1 to 20 of 2920
  1. Code Maker

    Location
    Canberra
    Posts
    849

    Strumpy Shader Editor [Now Open Source]

    Hi!

    I have been a bit bored after work for the past few weeks and my Unity3 beta arrived so I decided to make a shader editor.

    I approached the task initially to see just how extensible the Editor API's were and to see if it could be done (fully featured and at a commercial standard). And after an evening or two I was knee deep in the unity3 codebase!

    There were a few things I wanted to do when making this editor:
    *High quality standard
    *Rich feedback to the user
    *Realtime previews of the current shader
    *Loading / saving of graphs
    *Shader export
    *Complete support for the unity3 materials system (That aras and co have done an amazing job of!)
    *Fits into the unity design principles. Easy to use / simple / 'just works' - this was very important to me!

    A simple shader (Updated for Beta 4.0)


    Tutorial Videos:
    Beta 4 - http://vimeo.com/20994055
    Beta 1 (Still helpful!) - http://www.vimeo.com/13825713

    FAQ Post:
    Some questions, answered with demo's: http://bit.ly/hnXhNu
    ------------
    Contributers
    Stramit
    Texel

    Releases
    5 August 2010 - Beta 1.0 - here
    6 August 2010 - Beta 1.1 - here
    1 September 2010 - Beta 2.0 - here
    6 September 2010 - Beta 2.2 - here
    11 November 2010 - Beta 3.0 - here
    27 November 2010 - Beta 3.1 - here
    9 January 2011 - Beta 3.2 - here
    10 January 2011 - Beta 3.2a - here
    19 January 2011 - Beta 3.2b - here
    11 February 2011 - Beta 3.3a - here
    12 February 2011 - Beta 3.3b - here
    14 March 2011 - Beta 4.0a - here
    24 December 2011 - Beta 4.0b (Unity 3.5) - here

    Documentation
    User Documentation - By Texel can be found here.

    Some Images users have created with SSE materials:

    Procedural Lightening Created using Vertex Shaders in SSE by BoxMan


    A scene made by warby, where the shaders were made in SSE


    A snow shader (amount of snow changes based on normal) by Svyatoslav


    A planet by Clamps, you can follow his tutorials to make this

    Open Source Link
    Here is the link to the GIT hub project. Have fun
    https://github.com/stramit/SSE.git
    Last edited by Tim C; 12-27-2011 at 05:30 AM.


  2. Location
    Trondheim, Norway
    Posts
    459
    Wowzer!
    Been following your development for a little while now & must say I`m extremely impressed Really looking forward to giving it a try soon!


    Keep up the great work!
    .

    "Fast, fat computers breed slow, lazy programmers."


  3. Location
    USA
    Posts
    3,100
    Neat. Unity really needs something like this so that more people can harness the power of shaders without having to be an advanced programmer.

    What would really make this great, besides all those millions of functions you have built in, is to have `presents` or `templates` of various little pieces of typical shaders that you can just drag and plug in without having to start from scratch.
    - ImaginaryHuman -

    NEW Mouse Path Animator - Mouse movement recording/playback - only $15!
    NEW Animated Dissolves for Shader Forge - Starting at $10!
    NEW Refract2D - Realtime refractions, reflections, image-based lighting, image distortions - ON SALE $25!
    Also Gradient Shader Pack - Realtime-generated animatable gradients - $20.
    Also Shader Wizard - CG Shader Generator including photoshop-style multi-texturing - $20.
    Also Texture Helper - procedural texture/pixmap-handling scripts - $10.

  4. Super Moderator
    Location
    USA - Chesaning, MI
    Posts
    1,515
    Finally something that looks like it belongs into Unity I am glad you didn't choose a weird GUI or funky colors. This blends in nicely.

    I'd love to fool around with it!

    Thomas P.
    I am available for Freelance work! Contact me via PM or email.
    My blog: Click to open
    Twitter: Thomas Pasieka


  5. Posts
    27
    Really excited for this and the possibilities.


  6. Posts
    997
    Excellent job, this will make tweaking simple surface shaders much easier for most users.

    Is it fairly simple to add new node types? If you're not selling this, make sure to put up a donate button somewhere, I'm sure lots of people would like to thank you.


  7. Location
    Portugal
    Posts
    672
    this is awesome,
    they should implement this type of shader editor in unity
    well cant wait to try this,
    great work


  8. Location
    Finland, Kajaani
    Posts
    301
    Not meaning to bitch but this struck me as funny:
    *High quality standrd


  9. Location
    32.71° N, 117.15° W
    Posts
    5,419
    If you are successful in completing this project, you will be a very popular person here!


  10. Location
    Co Donegal, Ireland
    Posts
    1,066
    Brilliant work!!! Can't wait to get my hands on the Beta and take it for a test drive.

    Regards,
    Matt.


  11. Location
    Norway
    Posts
    22
    Brilliant! Looking forward to trying this out


  12. Location
    Zürich, Switzerland
    Posts
    26,572
    Looks nice

    Will be interesting to see where its going to keep shader model restrictions and alike in mind but its definitely a solid base already at least from the visual look


  13. Posts
    981
    These confuse me. I never bothered to learn them. But, what exactly DO these node base editors do?


  14. Location
    Saudi Arabia
    Posts
    38
    Quote Originally Posted by CreativeCoding
    These confuse me. I never bothered to learn them. But, what exactly DO these node base editors do?
    if you had the chance before to write shaders then you will understand why these node based editors are a must. Instead of worrying about syntax and hell of coding you just drag, drop and link ur nodes and ur off to go.


  15. Location
    San Francisco & Caribbean
    Posts
    158
    rozgo - developer of
    Rawbots - robots crafting sandbox game
    http://rawbots.net
    twitter.com/rozgo

  16. ZJP ZJP is offline

    Location
    GMT -4/-5
    Posts
    1,329
    Hi,

    Amazing,awesome,impressive,incredible, brilliant etc etc.. Already read this before( http://forum.unity3d.com/viewtopic.php?t=36679 ). Tell me that this project will come out.

    JP


  17. Location
    Happy Land!!!
    Posts
    1,003
    Yes!

    The only things I would actually change are to make the linear node links turned into ease in/out links, and have a node property preview displayed on the node (like how the unreal engine mat editor does it). Can't wait for the open beta, you're saving us from shader coding hell.

    CC: The Unreal Engine has a mat editor that uses node based shader programming. It's because of this that games like Unreal Tournament 3 have such incredible shaders. Because they're so easy to make. I played around with the editor in Unreal and was able to edit the shaders and make new, completely different ones on my first try using it. Couldn't have done that to save my life in shaderlab.

    Needless to say, I want this in Unity.

    P.S. Please be sure the beta (in whatever stage it's in) actually does come out. So that way we at least have something to extend should you cease to work on it (for whatever reason). I only say this because Kurt's shader editor is stuck in development hell (like zjp points out) and he never posted a beta for us to continue.
    In Soviet Russia, game develops YOU!

  18. Code Maker

    Location
    Canberra
    Posts
    849
    Thanks for all the kind words everyone. It's great to hear that you think you will find this useful!

    Quote Originally Posted by brokenpoly
    Wowzer!
    Been following your development for a little while now & must say I`m extremely impressed Really looking forward to giving it a try soon!


    Keep up the great work!
    Thanks. For the most part I've found working with the unity API's to be great, although I did encounter a few API limitations and idiosyncrasies while I was working.

    Quote Originally Posted by ImaginaryHuman
    Neat. Unity really needs something like this so that more people can harness the power of shaders without having to be an advanced programmer.

    What would really make this great, besides all those millions of functions you have built in, is to have `presents` or `templates` of various little pieces of typical shaders that you can just drag and plug in without having to start from scratch.
    The node API is really easy to expand if you know how to program in c#. There are a few 'functions' built in that are non standard (like the UV pan, swizzle, and splat). And I intend to add more / do some tutorials on how to add custom nodes.

    Quote Originally Posted by niosop
    Excellent job, this will make tweaking simple surface shaders much easier for most users.

    Is it fairly simple to add new node types? If you're not selling this, make sure to put up a donate button somewhere, I'm sure lots of people would like to thank you.
    Very simple to add new node types. I designed it specifically to be easily extensible. You just have to inherit off 'Node' or 'InputNode' ect and implement the interface. There is some field markup required for serialization / getting the node in the nodes lists. But it's quite trivial.

    Quote Originally Posted by dreamora
    Looks nice

    Will be interesting to see where its going to keep shader model restrictions and alike in mind but its definitely a solid base already at least from the visual look
    Currently is uses the basic unity3 lighitng with a slightly modified lighting shader. I plan to add support for custom lighting shaders ect, that will probably be in beta 3 though.

    Quote Originally Posted by CreativeCoding
    These confuse me. I never bothered to learn them. But, what exactly DO these node base editors do?
    They make the creation of shaders a content / art task instead of a programming task. This isn't always so (ie some specific hand crafted shaders for post processing ect). But in general I think it's a fair statement. I have seen some amazing shaders generated in graph editors. But I have also seen some abominations. It's all dependent on the skill of the artist.

    Quote Originally Posted by theinfomercial
    Yes!

    The only things I would actually change are to make the linear node links turned into ease in/out links, and have a node property preview displayed on the node (like how the unreal engine mat editor does it). Can't wait for the open beta, you're saving us from shader coding hell.
    I want to use bezier handles for the lines, it's something I still have to add in though.

    I currently don't have plans to display the default texture / color on the node. This could be added pretty easily but I think it's a bit confusing. Unlike unreal in unity shader textures / inputs are frequently overridden (via a material or the preview node in this case). I think it adds a level of complexity that I was trying to avoid. I could be convinced otherwise though.

    CC: The Unreal Engine has a mat editor that uses node based shader programming. It's because of this that games like Unreal Tournament 3 have such incredible shaders. Because they're so easy to make. I played around with the editor in Unreal and was able to edit the shaders and make new, completely different ones on my first try using it. Couldn't have done that to save my life in shaderlab.

    Needless to say, I want this in Unity.
    It think the reason that unreal's shaders look so good isn't because of the material editor per se, but by the number of people using it / it's use in AAA games.

    P.S. Please be sure the beta (in whatever stage it's in) actually does come out. So that way we at least have something to extend should you cease to work on it (for whatever reason). I only say this because Kurt's shader editor is stuck in development hell (like zjp points out) and he never posted a beta for us to continue.
    The code for the beta is done, unless I come across any crazy show stoppers. I haven't released it yet because there is no documentation. I don't think I will write too much, but a simple tutorial and some other simple stuff would be nice!


  19. Location
    Norway
    Posts
    22
    I currently don't have plans to display the default texture / color on the node. This could be added pretty easily but I think it's a bit confusing. Unlike unreal in unity shader textures / inputs are frequently overridden (via a material or the preview node in this case). I think it adds a level of complexity that I was trying to avoid. I could be convinced otherwise though.
    I don't think it would confusing, and personally it would be very helpful in debugging. Once shaders become fairly complex, it may sometimes be difficult to keep track of what is going on, especially if you're making changes to an older shader. Its nice to see which texture is coming in where, as well as. Even nice would be to have small icons for representation of each node. Just for the sake of getting a quick overview of the shader. That would probably be some more work however. Simple shaders it really doesn't matter, just a thought for once they start filling up.

    Great work regardless though. Looking forward to testing it.


  20. Location
    Zürich, Switzerland
    Posts
    26,572
    I think optimally, also for performance, would be if you had a second (toggle) button on the node which either shows the previous as overlay or expands the node to include the preview.

    I agree that having all on preview mode can be very confusing especially as it means that you need to provide input textures too to make any sense.

Page 1 of 146 1231151101 ... LastLast

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •