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

Alloy Physical Shader Framework Version 3 For Unity 5

Discussion in 'Assets and Asset Store' started by xenius, Mar 2, 2015.

  1. Abuthar

    Abuthar

    Joined:
    Jul 12, 2014
    Posts:
    92
    Hello, I have a question regarding the skin shader. I am using unity in deferred and i'm wondering about cast shadows. Basically, I want Subsurface Scattering to be occluded if the object isn't directly lit. So for example if The light is being casted on the left side of the head, the right ear shouldn't be showing any sub surface scattering. Uber Shader has cast shadows on their skin shader, but it didn't work for my project so I am purchased Alloy a while back but haven't found any information on the subject. For example here, light shouldn't be going through the back of the head because the back of the head should be occluding/casting a shadow on the front side, if that makes sense.



    Can anyone help me here?
     
  2. Deleted User

    Deleted User

    Guest

    @Abuthar
    The problem applying a shadow map to transmission effects is that it will just completely crush the effect since it is rendered from the mesh's opposing faces. As a result, we can only enable shadowing on translucency for thin, two-sided meshes using the "TwoSided" variant of the transmission shader.

    Sorry, but that's a technical limitation that I just can't work around. :(
     
  3. OP3NGL

    OP3NGL

    Joined:
    Dec 10, 2013
    Posts:
    267
    @n00body

    any chance to implement Nvidia VR works with alloy
     
  4. Deleted User

    Deleted User

    Guest

    @OP3NGL
    If Unity exposes a shader API for it, then I will take advantage of it. Until then, I can't really do it on my own.
     
  5. Don-Gray

    Don-Gray

    Joined:
    Mar 18, 2009
    Posts:
    2,278
    Unity 2017.2.0b6/Alloy 4.1
    Using Alloy Triplanar material with object type mapping selected.
    However, it reverts to World mapping while in Play mode and back to Object mapping after exiting Play mode.

     
  6. Deleted User

    Deleted User

    Guest

    @Don-Gray
    Yeah, that's been an off and on issue for a while now. Unfortunately, it looks like I will need to take drastic measures with those shaders, which will require everyone who uses them to run our migrator tool once the fix is available. >_<
     
  7. Don-Gray

    Don-Gray

    Joined:
    Mar 18, 2009
    Posts:
    2,278
  8. Deleted User

    Deleted User

    Guest

    @Don-Gray
    Don't be. Just a growing pain of managing a framework this complex. It will get done, but it will be a pain.
     
    Mark_01, TeagansDad and Don-Gray like this.
  9. Abuthar

    Abuthar

    Joined:
    Jul 12, 2014
    Posts:
    92
    Thought it would be possible since Uber does cast shadows on translucency, but I need this to work right in deferred. Thanks for the reply though.
     
  10. Tethys

    Tethys

    Joined:
    Jul 2, 2012
    Posts:
    672
    Anyone know if there is a global regenerate option for all of the AlloyPM files? On our last update it somehow broke 'em so they are all blank or pink and need to be regenerated. I restarted after updating as well but it must think they are fine since there is a file there and they don't regenerate on their own. I have so many of these, a real painful time sink to locate and manually regenerate each one. Thanks in advance. I suppose a kind of overkill method would be to just delete the shaders and scripts folder an re-import to force a regen. **Scratch that, deleteing the scripts and shader folder and re-importing doesn't force a regen. There should be an option the Alloy drop down for this, it isn't the first time we have updated Alloy and it broke all our materials and had to spend time fixing them.
     
    Last edited: Aug 14, 2017
  11. punk

    punk

    Joined:
    Jun 28, 2013
    Posts:
    408
    Search for '_Alloy' in the project window select them all and reimport, then restart. That usually does the trick for me, I've had problems in the past when I've created a custom version of an alloy shader and forgot to update it on a version upgrade
     
    Mark_01 and Tethys like this.
  12. OP3NGL

    OP3NGL

    Joined:
    Dec 10, 2013
    Posts:
    267
    Nvidia has a VRworks.cginc... will it work?
    vrworks.PNG
     
  13. Tethys

    Tethys

    Joined:
    Jul 2, 2012
    Posts:
    672
    Ahh thanks man! I spent the time and fixed all 100+ of them yesterday manually after waiting about 10 minutes and not thinking of anything else. Originally I did a search for _AlloyPM and found them all, but when multi selecting them I noticed the regenerate button was missing - never thought to do re-import. DOH! This will save me a lot of time for now on, as my materials will probably break again with the next Alloy update. :p
     
    b_game_studios and punk like this.
  14. AruRen

    AruRen

    Joined:
    May 21, 2016
    Posts:
    20
    Hey hey, I am trying to add a vertex movement for grass wind movement on custom mesh,

    is there a way to modify the translucency+ so it could have that ?
     
  15. Deleted User

    Deleted User

    Guest

    Hey all. Sorry about the delayed responses. I'm currently trying to wrap up Alloy 4.1.1 to get it out the door this week.

    @OP3NGL
    Okay, I wasn't aware that that existed. I'll give it a look when I have some time.

    @AruRen
    1. You would need to copy these files into a separate folder.
      • "Alloy/Shaders/3.0/Specialist/Transmission *.shader"
      • "Alloy/Shaders/Definition/Transmission.cginc"
      • "Alloy/Shaders/Type/Standard.cginc"
    2. Inside the "*.shader files, you'd need to patch the include paths in the passes to point to your custom definition header.
    3. Then you need to modify that definition header to point to your custom shader type header.
    4. Then you need to modify your custom shader type header to run your vertex animation code inside the "aVertexShader" callback.
    I hope that helps.
     
  16. Deleted User

    Deleted User

    Guest

    Alloy 4.1.1 for Unity 2017.1 is live on the Asset Store

    Try it out and give us feedback. Thanks.

    Changelog:
    Version 4.1.1
    =====================
    Shaders:
    - Changed "Eye" shaders to add Roughness Source, Cornea Metallic, and Sclera Metallic properties.
    * "Property" option which applies just the roughness sliders without the roughness map.
    * You may need to manually disable the material map property in your materials.
    - Changed "Car Paint" shaders to add a secondary color map mode.
    - Changed "Car Paint" shaders to add a Roughness Source dropdown.
    * "Property" option which applies just the roughness slider without the roughness map.
    - Fixed visualize not applying parent texture transforms to children.
    - Fixed "Directional Blend" shaders to stop popping issue between edit and play mode.
    * World is now the default mapping mode.
    * You must run the Material Migrator tool exactly once to fix existing materials.
    - Fixed "TriPlanar" shaders to stop popping issue between edit and play mode.
    * World is now the default mapping mode.
    * You must run the Material Migrator tool exactly once to fix existing materials.
    - Fixed "Vertex Blend" shaders to stop popping issue between edit and play mode.
    * World is now the default mapping mode.
    * You must run the Material Migrator tool exactly once to fix existing materials.

    Mods:
    - Fixed "Deferred Decal Advanced" shader so that:
    * The shader actually compiles.
    * Base Color and Normals blend sliders work now.
    * Surface material type is no longer overwritten.
    * Surface shadow masks are no longer overwritten.
    * Decal specular occlusion now combines with the surface specular occlusion rather than replacing it.
     
    punk likes this.
  17. thegreyman1

    thegreyman1

    Joined:
    Jun 10, 2010
    Posts:
    164
    This may well be a known and/or stupid issue but after I went through and installed Alloy the inspector UI elements seem broken. No borders and stuff anymore just the code to create them etc. Have a look. Would love some help with this. Even if I could just uninstall everything and try again

    AlloyUnity_01.jpg
     
    Tethys likes this.
  18. thegreyman1

    thegreyman1

    Joined:
    Jun 10, 2010
    Posts:
    164
    So, I think it's because my Unity pulled down Alloy 3.6.4 instead of 4.1
     
  19. Deleted User

    Deleted User

    Guest

    @thegreyman1
    If you're running Unity 2017.1, then yes that would be a problem.
     
  20. thegreyman1

    thegreyman1

    Joined:
    Jun 10, 2010
    Posts:
    164
    Another question- has the intensity gain disappeared for emissive properties? It's no longer underneat hthe weight slider
     
  21. Deleted User

    Deleted User

    Guest

    @thegreyman1
    We deprecated and removed that property years ago in favor of using Unity's HDR color picker on the Tint property. The same is true for all our emissive effects.
     
  22. punk

    punk

    Joined:
    Jun 28, 2013
    Posts:
    408
    @n00body hey bro

    the phong strength slider on the skin tessellation shader (phong mode) seems to be broken
    I've tried 4.1.1, wasn't working for me in 4.1 either, no error just doesn't do anything

    Edit: I've figured this out my new characters were exported with a file size of 1:1 the old ones were 0.1:1 which was dropping the phong effect by a factor of 10
     
    Last edited: Sep 2, 2017
  23. Hexer_

    Hexer_

    Joined:
    Aug 25, 2016
    Posts:
    94
    I need a double-sided Alloy shader. Any advice?
    P.S. Sorry if it's a stupid question, I'm new to shaders
     
  24. Deleted User

    Deleted User

    Guest

    @punk
    No problem. Glad it wasn't something wrong with the shaders.

    @Hexer_
    We have a TwoSided variants of our Transmission shaders. Does that help at all?
     
  25. punk

    punk

    Joined:
    Jun 28, 2013
    Posts:
    408
    Shaders are all good

    Third party support for Hair Designer would be awesome in a future update
     
  26. Don-Gray

    Don-Gray

    Joined:
    Mar 18, 2009
    Posts:
    2,278
    I was running the migration tool after updating to the latest version of Alloy, but think I shut Unity down before it was finished, must have been behind the main interface. So, the issue (triplanar appears as World Mapping on object during Play) on the object still remains, can I run it again or no?
     
  27. Deleted User

    Deleted User

    Guest

    @punk
    Link please?

    @Don-Gray
    If you have a small number of TriPlanar materials, you can manually toggle the setting back and forth once to fix them. The migration tool just does it on a large scale.
     
    Don-Gray likes this.
  28. punk

    punk

    Joined:
    Jun 28, 2013
    Posts:
    408
  29. stylophone

    stylophone

    Joined:
    Aug 16, 2012
    Posts:
    37
    Too asking about the NVIDIA VRWorks, which provides huge improvements for VR project but currently Alloy isn't fully compatible with it, would be great if you could take a look and do something about it. Thanks.
     
  30. Korindian

    Korindian

    Joined:
    Jun 25, 2013
    Posts:
    584
    Hi, do Alloy shaders support MaterialPropertyBlock when GPU instancing is enabled? When enabling instancing, identical meshes get batched, however, modifying any property like color or tiling using MaterialPropertyBlock breaks batching.

    Looking into the shader code, it seems like none of the shader properties are set up to support this, is that right? Thanks.
     
  31. ksam2

    ksam2

    Joined:
    Apr 28, 2012
    Posts:
    1,079
    I'm using "Alloy Deferred Skin" shader in graphics setting section. does this work with UBER too?
     
  32. Radishface

    Radishface

    Joined:
    May 4, 2017
    Posts:
    15
    Hello, @n00body

    First of all just wanted to say that Alloy is great, really pleased with it so far. Recently, however, I ran into one issue with Transmission shader. For some reason, meshes using 2-sided transmission shader appear darker than they should. It seems that back facing normals are darker than the front facing ones. I've made a comparison image between SpeedTree 2-sided shader and Alloy's 2-sided transmission shader:

    Alloy 2-sided transmission shader


    SpeedTree shader

    Any idea how this issue could be solved? I am currently running Alloy version 3.6.1

    Thank you in advance!

    P.S. Invert Back Normals toggle doesn't seem to do anything, and mysteriously disappears after pressing Play... weird stuff.
     
  33. Kiwi-Hawk

    Kiwi-Hawk

    Joined:
    Jul 17, 2015
    Posts:
    288
    Kia ora

    Jus been put onto this as being a life saver for Unity, Tho for me as a hobbyist it's a lot of money and before anybody start jumping up and down it no dout worth every penny. It still a lot for me on a pension not making money from what I do so I ask a lot first I brought this some time ago for doing skin and it's will be great when I get my head round it but I need to know if I'm gonna break stuff mixing these two https://assetstore.unity.com/packages/vfx/shaders/pre-integrated-skin-shader-7238 Also I have World Creator 2 for making terrains that has both splat-maps and heat-maps I can export to make terrain materials https://assetstore.unity.com/packages/tools/terrain/world-creator-professional-55073 that I would like to be able to enhance the use of
     
    Last edited: Oct 5, 2017
  34. Deleted User

    Deleted User

    Guest

    Sorry to everyone about the late replies. The forums didn't send me emails AGAIN!

    @Korindian
    Correct.

    @ksam2
    It will "work with UBER" if you don't use their translucency shaders. This is because we both use the same trick to pass translucency data to the deferred shaders, but then use the data differently in our shaders.

    @Radishface
    Please tell me your Unity version. Thanks.

    @Kiwi-Hawk
    If you have budget concerns, then you should probably go through some pre-planning and make absolutely sure that our product is the best way to get the look you want for your game. The Pre-Integrated Skin shader you linked won't receive our area lights in its shading effect, and I haven't tested integration with World Creator.
     
  35. Kiwi-Hawk

    Kiwi-Hawk

    Joined:
    Jul 17, 2015
    Posts:
    288
    Thanks for the replay
     
  36. Radishface

    Radishface

    Joined:
    May 4, 2017
    Posts:
    15
    @n00body Hey! My Unity version is 5.6.1p1, and we are using Alloy 3.6.4 (upgraded from 3.6.1), yet still the same issue exists.
     
  37. OP3NGL

    OP3NGL

    Joined:
    Dec 10, 2013
    Posts:
    267
    @n00body

    Quick question, will Alloy work when we port to PS4?
     
  38. exltus

    exltus

    Joined:
    Oct 10, 2015
    Posts:
    58
  39. Kiwi-Hawk

    Kiwi-Hawk

    Joined:
    Jul 17, 2015
    Posts:
    288
    Ok I should maybe have asked if I can get that look or realism with Alloy's skin shader, that char your displaying does not do much to install confidence tho the two male heads (If I remember rightly) are from threads dealing with that same or similar skin tech dev lines, trying to achieve as much realism as possible. What I'm after is along the lines of Witcher 3, modded Skyrim or close just as examples, Sparrow and twin Blaster from paragon would work to as examples. I think you can get a general idea what I aiming at. The images post above by RenOli are looking pretty good if he's using Alloy for skin that is
     
  40. punk

    punk

    Joined:
    Jun 28, 2013
    Posts:
    408
    @n00body I thought I'd post you a couple of recent images from Brides Of Vampira, in the top one I'm using Micro Splat for the terrain, but everything else is Alloy. I've been using it recently to create water effects and I even managed to create a realistic ocean with foam and waves etc, amazing what you can do with the effects channels and some scrolling etc, one day I might be able to thank you all in person at some event, but until then thanks again!

    mountain.png blade.png
     
    chelnok, Deleted User and Corvwyn like this.
  41. dizzymediainc

    dizzymediainc

    Joined:
    Apr 6, 2014
    Posts:
    426
    @n00body I read earlier on in the thread that mobile (android/ios) may be supported after 5.6 dropped, since it's been a while I was wondering if there is an update on that. I want to use the car paint shader on an android game, please let me know :)
     
  42. Deleted User

    Deleted User

    Guest

    Sorry for the late replies. The day job has been demanding a huge amount of my time and effort lately.

    @Radishface
    1. Are you in forward or deferred mode?
    2. Are you using the forward-specific variants of the shaders?
    @OP3NGL
    Yes, our customers with devkits have confirmed that it works on the PS4, Xbox One, and even the Switch (albeit only with heavy optimization).

    @exltus
    I believe so.

    @Kiwi-Hawk
    It's possible to get good results with Alloy, but our shaders are primarily focused on being deferred-compatible. As such, they won't have the degree of flexibility that you might need for your project.

    @dizzymediainc
    It compiles and runs, but some of our users have encountered weird NaN artifacts and I haven't hide time to set up a mobile test in which to track them down.
     
  43. Radishface

    Radishface

    Joined:
    May 4, 2017
    Posts:
    15
    @n00body We are currently using deferred rendering path, in linear color space with HDR. And yes, we are using correct shader variants. Also, we've recently noticed that a similar issue occurs with SpeedTree trees while using Alloy SpeedTree shaders. I've linked a screenshot below.

     
  44. OP3NGL

    OP3NGL

    Joined:
    Dec 10, 2013
    Posts:
    267
    @n00body
    thanks, pls kindly explain what kind of "albeit only with heavy optimization"?

    Approx when can you implement Nvidia VR works?
     
    Last edited: Oct 26, 2017
  45. claudius_I

    claudius_I

    Joined:
    May 28, 2017
    Posts:
    251
    wow
    open source now
     
  46. xenius

    xenius

    Joined:
    Sep 30, 2010
    Posts:
    523
    Greetings Folks!

    We have a pretty big announcement today, namely that Alloy is going Free and Open Source!

    Repo Link: https://github.com/Josh015/Alloy

    Josh and I (mostly Josh) have worked on Alloy now for just over 4 years now. It's been a delightful endeavor, and has always been driven by the hybridization of design and functionality needs of internal RUST projects, and the things we found to be of most general utility to the community. It's been a productive process, and an amazing learning process, both in terms of balancing the needs of many systems and approaches, and in just learning more and more about how folks actually use Unity.

    But the time has come for both us where our focus, and the pressures on our time have shifted. Our internal projects are now much much more specialized (room-scale VR using forward mode, focused almost entirely on optimization over fancy visual features), and the number of asset-store systems often requiring some sort of bespoke compatibility shim to be created continues to increase, often necessitating a large outlay of time and effort to support the needs of only a few users. It's simply become untenable for us to keep Alloy being both what the community needs, and what we need, in terms of time and focus.

    Further, with the future of rendering/shader configuration in Unity in a nebulous grey area, due to the announced Scriptable Rendering Loop system, and the way in which that will radically change how all shaders in Unity work, it does not, from our perspective, make sense to put significant further API work into a shader-based system that will have to be whole-sale replaced with a new paradigm in the foreseeable future.

    So with that, as a courtesy to the gfx community whose work we all rely upon when making systems like this, and so that you folks who have found Alloy useful can tear it apart, merge it into whatever suits you, we are Open Sourcing it, and setting the package on the UAS to free. All of the fancy shmancy Alloy Editor code is also there, so if you want to fancy-up your own systems (and want to deal with the added complexity of such editors 0_0) you are welcome to it. Everything is covered by the standard MIT license.

    Future Updates:

    We will likely be continuing to update the git repo for Alloy for our own purposes for a period of time. This should not be taken as any implicit promise to do so on a timely basis, or prior to betas, or for a given version at all. The upgrade/update process for the main fork will be driven by our studio's internal needs. You are of course free to fork it and do what you may.

    Refunds For Recent Purchases:

    If you've purchased Alloy in the past 60 days, and would like a refund, please email alloy@rustltd.com and include your Asset Store purchase receipt, and we will forward our approval for the refund to the Unity asset store team.

    Support:

    As we are a contracting studio as well, paid support/modification for Alloy will still be available on a case by case basis at our studio's hourly rate. If you have needs of this sort that you cannot fulfill internally, please use our contact form found at www.rustltd.com and we'd be happy to return a quote/ask for further information.

    Fin:

    Thanks again for all of your interest and support over the years. Alloy has grown with us as we've grown as Unity users and game makers. We are now off to the next big challenge. Peace!

    - Anton & Josh
     
    elbows, chelnok, red2blue and 5 others like this.
  47. recon0303

    recon0303

    Joined:
    Apr 20, 2014
    Posts:
    1,634
    Thanks for a great tool for the years you been here, and glad to see it up on GIT.... and not shut down .. So we can still use it.. best of luck with your next project.
     
    chelnok and xenius like this.
  48. punk

    punk

    Joined:
    Jun 28, 2013
    Posts:
    408
    Big thanks for all the hard work you guys put in over the years, legends!
     
    xenius and Flurgle like this.
  49. Kolyasisan

    Kolyasisan

    Joined:
    Feb 2, 2015
    Posts:
    397
    Now this is quite unexpected! Thank you for bringing us such an excellent framework!
     
    Flurgle likes this.
  50. OP3NGL

    OP3NGL

    Joined:
    Dec 10, 2013
    Posts:
    267
    pls implement the Nvidia VR works before you guys dissapeear! thanks!