Search Unity

► Advanced Dissolve ◄

Discussion in 'Assets and Asset Store' started by Arkhivrag, Feb 13, 2018.

  1. Arkhivrag

    Arkhivrag

    Joined:
    Apr 25, 2012
    Posts:
    2,982
    Sure, I have to re-write all TextMeshPro shaders and make sure they are 'compile'-able on all devices. Update next week.



    VacuumShaders - Facebook Twitter YouTube
     
    rgjones likes this.
  2. Cris_2013

    Cris_2013

    Joined:
    Nov 25, 2017
    Posts:
    39
    Many thanks again for looking into this :)
     
  3. Jesus_Loves_You

    Jesus_Loves_You

    Joined:
    Aug 27, 2012
    Posts:
    2
    Quick question. Can you dissolve the object, but instead of going to Alpha, display a different texture.
    Thank you =]
     
  4. Arkhivrag

    Arkhivrag

    Joined:
    Apr 25, 2012
    Posts:
    2,982
    No, what you are asking for is texture transition effect, dissolve effect always is alpha cutout.



    VacuumShaders - Facebook Twitter YouTube
     
  5. Shadex

    Shadex

    Joined:
    Dec 18, 2013
    Posts:
    89
    How many keywords do your shaders use? I'm thinking about buying, however i'm fighting the 256 limit lately.
     
  6. Arkhivrag

    Arkhivrag

    Joined:
    Apr 25, 2012
    Posts:
    2,982
    20 keywords. Those describe various effects and can be removed manually.



    VacuumShaders - Facebook Twitter YouTube
     
  7. Play_Edu

    Play_Edu

    Joined:
    Jun 10, 2012
    Posts:
    722
    cool one
     
  8. froddo198326

    froddo198326

    Joined:
    Jun 17, 2018
    Posts:
    2
    Hi I purchased your Advanced Dissolve Shader asset and wondered how do you made the robot @0:34 on your video to appear like that? if you could send me a screen of the settings so i can replicate that effect that would be amazing. Thank you
     
  9. Arkhivrag

    Arkhivrag

    Joined:
    Apr 25, 2012
    Posts:
    2,982
    You can achieve it by using Local or Global Axis mask.
    Check 2. Local and Global XYZ Axis Mask example scene.



    VacuumShaders - Facebook Twitter YouTube
     
  10. froddo198326

    froddo198326

    Joined:
    Jun 17, 2018
    Posts:
    2
    Ah i see, do i have to animate this effect myself? or is there a script for this also?
     
  11. Arkhivrag

    Arkhivrag

    Joined:
    Apr 25, 2012
    Posts:
    2,982
    For animating effect you have write script or use animator.
    Code (CSharp):
    1. material.SetFloat("_DissolveMaskOffset", your_value);


    VacuumShaders - Facebook Twitter YouTube
     
  12. Arkhivrag

    Arkhivrag

    Joined:
    Apr 25, 2012
    Posts:
    2,982
    Next update will include:

    • Dynamic dissolve color (read from gradient texture)
    d_1.gif

    • Dynamic dissolve color (read from Main map)
    d_2.gif

    • Distortion (Main UV's distortion under dissolve edge)
    d_3.gif



    VacuumShaders - Facebook Twitter YouTube
     
  13. CptDustmite

    CptDustmite

    Joined:
    Jun 17, 2014
    Posts:
    61
    Hi @Arkhivrag

    Is it possible to have a Mobile version equivalent to the Standard Shader? The Mobile currently only has Unlit and VertexLit versions if I'm not mistaken.

    I developed a system which switches to your shader when Dissolve is required, and back to original shader after the dissolve is complete. I need a mobile version of your shader which allows my objects to look similar to Standard shader.
     
  14. Arkhivrag

    Arkhivrag

    Joined:
    Apr 25, 2012
    Posts:
    2,982
    Included Standard shader is a copy of the original Unity shader with integrated Advanced Dissolve features.
    There is no mobile version of it.



    VacuumShaders - Facebook Twitter YouTube
     
  15. Arkhivrag

    Arkhivrag

    Joined:
    Apr 25, 2012
    Posts:
    2,982
    Next week's update will have lots of new features and improvements. One of it - screen space dissolve




    VacuumShaders - Facebook Twitter YouTube
     
  16. Deleted User

    Deleted User

    Guest

    Hi,

    Do you work to make a double-sided shader with dissolve ?
    Thanks.
     
  17. Arkhivrag

    Arkhivrag

    Joined:
    Apr 25, 2012
    Posts:
    2,982
    Set Face Cull option inside material editor to Off.



    VacuumShaders - Facebook Twitter YouTube
     
    Deleted User likes this.
  18. Richard_Roth

    Richard_Roth

    Joined:
    Dec 29, 2014
    Posts:
    64
    I'm really interested in your advanced dissolve package, but I have a question regarding nested objects.

    We are creating a space game and want to have our ships emerge from hyperspace (like homeworld), issue is our ships have almost 300 nested objects (turrets, doors, hangers, equipment, etc.) Is there an easy way to integrate your shaders and masks for our ships or do we have to manually change the materials for object on the ship?

    Below is an example with one object. Our new ships are much more complex.
     

    Attached Files:

    Last edited: Jun 28, 2018
  19. Arkhivrag

    Arkhivrag

    Joined:
    Apr 25, 2012
    Posts:
    2,982
    'manually change the materials' - If you mean changing material shader from one you use to the Advanced Dissolve, then you will have to manually per-material. You may speed up that process by script that will iterate all mesh materials in prefab and change shader from one to another.



    VacuumShaders - Facebook Twitter YouTube
     
  20. witcher101

    witcher101

    Joined:
    Sep 9, 2015
    Posts:
    516
    Does this work with unity UI??
     
  21. kdinty

    kdinty

    Joined:
    Oct 23, 2015
    Posts:
    1
    Hi, purchased the asset and so far it’s great! Does it work with the hololens? I have yet to test it out but wondering if you or other customers have successfully used it on the hololens. Thanks!
     
    numerouno979 likes this.
  22. Arkhivrag

    Arkhivrag

    Joined:
    Apr 25, 2012
    Posts:
    2,982
    Does not include Unity UI shaders, but is compatible with TextMesh Pro.


    Tested on Oculus Rift.
    Coming update will make it even better.



    VacuumShaders - Facebook Twitter YouTube
     
    Last edited: Jul 4, 2018
  23. Arkhivrag

    Arkhivrag

    Joined:
    Apr 25, 2012
    Posts:
    2,982
    TeagansDad likes this.
  24. Alzan

    Alzan

    Joined:
    Sep 2, 2012
    Posts:
    81
    Hey,

    I am trying to mix this package with Vertex Tools Pro so we can paint our levels with the VTP V2 shader set and still dissolve objects. Is this something that could be supported?

    Thanks!
     
  25. PeteMichaud

    PeteMichaud

    Joined:
    Jul 11, 2015
    Posts:
    25
    Just bought this, and it looks pretty great! I'm having an issue that's confusing.

    I have a prefab with a Standard shader on it, with various settings. When the prefab instantiates I switch the shader to dissolve so that it can dissolve in, then when the dissolve is complete, I swap the original Standard shader back in.

    If I use the shader on the object in the editor it works as expected and looks fine.

    But when I assign the shader in code, and set up the material like this:

    Code (CSharp):
    1.     static Material SetUpPlacementMaterial(Material mat) {
    2.         mat.SetFloat("_DissolveAlphaSource", 2); //2 maps
    3.         mat.SetTexture("_DissolveMap1", BuildingSettings.PlacementEffectShader.DissolveMap1);
    4.         mat.SetTexture("_DissolveMap2", BuildingSettings.PlacementEffectShader.DissolveMap2);
    5.         mat.SetColor("_DissolveEdgeColor", BuildingSettings.PlacementEffectShader.EdgeColor);
    6.         mat.SetFloat("_DissolveEdgeSize", BuildingSettings.PlacementEffectShader.EdgeSize);
    7.  
    8.         return mat;
    9.     }
    10.  
    But it doesn't work as expected. The whole surface of the object is the EdgeColor, solid. Then if the Dissolve parameter goes below .5f the whole surface is instantly the Standard Albedo. There's no transition at all.

    The first thing I checked was the inspector for the object, assuming I had forgotten some setting or that a texture hadn't been properly assigned. But it's literally identical to the working version (made directly in the editor) in every way. Every setting on the object, including all the shader parameters, is identical. Yet the editor one works as expected, and the one done in code has the behavior described above.

    Is there something special happening in the custom editor inspector code that I also need to do to make it work in my script?

    Edit: One clue I've discovered is that if I have changed the shader to dissolve in the editor and set things up there in the past, then switched back to Standard (also in the editor), then when I assign the dissolve shader in code at a later time, then it works as expected. Only in the cases where I have never manually changed the material in the editor does it break in the way described above.
     
    Last edited: Jul 10, 2018
  26. Arkhivrag

    Arkhivrag

    Joined:
    Apr 25, 2012
    Posts:
    2,982
    I do not know what kind of shader VTP V2 is. Is it using vertex color?
    Advanced Dissolve does not support vertex colors now. Added to a wish-list.




    VacuumShaders - Facebook Twitter YouTube
     
  27. Arkhivrag

    Arkhivrag

    Joined:
    Apr 25, 2012
    Posts:
    2,982
    To use 2 custom textures you have to enable _DISSOLVEALPHASOURCE_TWO_CUSTOM_MAPS keyword.
    Code (CSharp):
    1.  
    2. //First, disable all other 'Alpha Source' keywords
    3. material.DisableKeyword("_DISSOLVEALPHASOURCE_MAIN_MAP_ALPHA");
    4. material.DisableKeyword("_DISSOLVEALPHASOURCE_CUSTOM_MAP");
    5. material.DisableKeyword("_DISSOLVEALPHASOURCE_THREE_CUSTOM_MAPS");
    6.  
    7. //Enable only one
    8. material.EnableKeyword("_DISSOLVEALPHASOURCE_TWO_CUSTOM_MAPS");


    VacuumShaders - Facebook Twitter YouTube
     
  28. Arkhivrag

    Arkhivrag

    Joined:
    Apr 25, 2012
    Posts:
    2,982
    Last edited: Jul 20, 2018
    pixelsteam likes this.
  29. jojizaidi

    jojizaidi

    Joined:
    Jun 30, 2014
    Posts:
    10
    I cant seem to get TextMeshPro to work.

    I've created a new Font asset and then applied the corresponding AdvancedDissolve Text mesh shader but I get this window in the inspector then

    upload_2018-7-16_17-47-54.png

    This is quite different from the screenshot posted in the above comment.

    What am I doing wrong?
     
  30. Arkhivrag

    Arkhivrag

    Joined:
    Apr 25, 2012
    Posts:
    2,982
    First of all you must have original TextMesh Pro plugin inside project.
    If after changing material you do not see Advanced Dissolve parameters, then re-select object and Unity will repaint material inspector window.



    Note, TextMesh Pro's material editor script is locked inside dll and I have no access to it to modify and add Advanced Dissolve parameters into it, so I just had to disable original material editor (that's why it has such ugly interface).
    I advice to setup TextMesh Pro using its original material editor and then switch shader to Advanced Dissolve.



    VacuumShaders - Facebook Twitter YouTube
     
  31. Arkhivrag

    Arkhivrag

    Joined:
    Apr 25, 2012
    Posts:
    2,982
  32. witcher101

    witcher101

    Joined:
    Sep 9, 2015
    Posts:
    516
    I wana buy this. Some questions.
    Does this works on webgl??
    Does this include any exmaple scenes on how to implement various effects shown on your videos.
    Also is it possible to use it like. When i spawn my char i wana use ur dissolve to reveal my char.
    Then i will switch my material to different material for another effect. After that i will switch to dissolve again when char dies.
     
    Last edited: Jul 23, 2018
  33. Arkhivrag

    Arkhivrag

    Joined:
    Apr 25, 2012
    Posts:
    2,982
    Shader is compatible with WebGL.
    Documentation and example scenes are included.



    VacuumShaders - Facebook Twitter YouTube
     
  34. witcher101

    witcher101

    Joined:
    Sep 9, 2015
    Posts:
    516
    Hi
    I already bought it my textures arent glowing. Dont know whats problem dissolve.JPG
     
  35. Arkhivrag

    Arkhivrag

    Joined:
    Apr 25, 2012
    Posts:
    2,982
  36. Kriszo91

    Kriszo91

    Joined:
    Mar 26, 2015
    Posts:
    181
    Hello!

    I'm using a box mask, with several attached materieal, is there any easy way to controll the materials emissive value from the box mask script to apply any value to all the attached materials?
     
  37. Arkhivrag

    Arkhivrag

    Joined:
    Apr 25, 2012
    Posts:
    2,982
    Emissive value (Intensity parameter) is part of the Edge group. Use Controller_Edge example script, it has maritals array (like all example controller scripts) you need to modify.



    VacuumShaders - Facebook Twitter YouTube
     
  38. Kriszo91

    Kriszo91

    Joined:
    Mar 26, 2015
    Posts:
    181
    Hello!

    Thank you, i need to upgrade to the latest version?
     
  39. Arkhivrag

    Arkhivrag

    Joined:
    Apr 25, 2012
    Posts:
    2,982
    Of course.



    VacuumShaders - Facebook Twitter YouTube
     
  40. Necka_

    Necka_

    Joined:
    Jan 22, 2018
    Posts:
    488
    Hello,
    When importing in a clean project (Unity 2018.1 or 2018.2) I have those two errors. Do you know what could cause this?

    upload_2018-8-18_4-16-52.png

    /Assets/VacuumShaders/Advanced Dissolve/Example And Demo Scenes/Example Scenes/Files/Scripts/Example/UpdateWorldPos.cs(28,32): error CS0117: 'RendererExtensions' does not contain a definition for 'UpdateGIMaterials'

    /Assets/VacuumShaders/Advanced Dissolve/Example And Demo Scenes/Example Scenes/Files/Scripts/Example/AnimateCutout.cs(42,36): error CS0117: 'RendererExtensions' does not contain a definition for 'UpdateGIMaterials'
     
  41. Arkhivrag

    Arkhivrag

    Joined:
    Apr 25, 2012
    Posts:
    2,982
    Just tested with fresh install of Unity 2018.2.3f1 and Unity 2018.1.9f1 without any errors.
    UpdateGIMaterials is part of those Unity versions.

    Did you download asset from the store using those Unity versions? Or package is may be for Unity 5.6 or 2017.1?
    Try: Remove plugin from the project, clear Asset Store cache folder and re-download asset using Unity 2018.2.



    VacuumShaders - Facebook Twitter YouTube
     
  42. Necka_

    Necka_

    Joined:
    Jan 22, 2018
    Posts:
    488
    I did clean the cache. I found out the issue is only coming when I'm importing another asset from the store: https://assetstore.unity.com/packages/tools/gui/doozyui-complete-ui-management-system-47352

    When I import it I have those two errors on Advanced Dissolve. I'm not sure what to look for now

    EDIT: I contacted the author of the asset in conflict. It was one script that had missing namespace. Sorry for the trouble, this wasn't on you at all.
     
    Last edited: Aug 20, 2018
  43. Megitus

    Megitus

    Joined:
    Aug 5, 2016
    Posts:
    4
    Hi I recently purchased your shader for my game, and I was using it to dissolve the walls left from a few dropships. However I had a problem. I was using a fairly standard shader setup using XYZ Axis mask type and controlling the offset through my own scripts, you can see the settings here.
    upload_2018-8-22_2-41-25.png

    The shader is already applied to the ship, and when it is time to dissolve, a temporary material is created and that is used to dissolve in order to keep ships dissolving separate. The shader appeared to be working on my ships normally, however, when I instantiate the ships from a prefab most of the ship itself was missing, or so it seemed, as you can see below, circled in blue is the same dropship shown in the editor and on the main camera.
    upload_2018-8-22_2-39-32.png
    It's settings say it should be visible but it clearly is not in the camera view. It also appeared to flicker a bit now and then, some faces showing and then not.

    I was able to temporarily remedy the problem by forcing the offset of the ships back to visible again using setfloat upon immediately spawning, but even then the shadows were screwed up, usually not showing up for any of the sides except the bottom one.

    Like I said the shader appears to be working just fine if the ship is already in the scene, but when instantiated it gives this weird behavior. Hopefully this can be fixed up. Thanks.
     
  44. GnatByte

    GnatByte

    Joined:
    Feb 8, 2018
    Posts:
    1
    I have the same issue can you tell me which script you added the namespace to ?, Found it thanks, for anyone else with the same issue DoozyU/Scripts/Helpers/RendererExtensions needs to be inside DoozUi namespace.
     
    Last edited: Aug 22, 2018
    xibanya likes this.
  45. Arkhivrag

    Arkhivrag

    Joined:
    Apr 25, 2012
    Posts:
    2,982
    As I understand, problem is with shader when controlling some of its parameters from the script?
    Make sure all shader variables and keywords are assigned in script. If still something does not work as you expected, try fresh material without script to figure out what you have missed.



    VacuumShaders - Facebook Twitter YouTube
     
  46. Megitus

    Megitus

    Joined:
    Aug 5, 2016
    Posts:
    4
    I did some more testing. I disabled my scripts, animations, etc. Now it appears to be doing the original buggy behavior whether it is a freshly instantiated object or one that was already in the scene. All scripts that were changing values on the shader are disabled in the active scene. The settings on the shader are the same as my original post. There are 4 separate materials using the advanced dissolve shader and they are applied in a number of different places on this object.

    Right now they are just sitting there and nothing in their values is being changed but it has the same bugged behavior as shown in my earlier picture.
     
  47. Arkhivrag

    Arkhivrag

    Joined:
    Apr 25, 2012
    Posts:
    2,982
    Can you capture video of that buggy behavior, I just can not understand what is the problem. And contact me to vacuumshaders@gmail.com, I may need some more details to resolve your problem.



    VacuumShaders - Facebook Twitter YouTube
     
  48. Megitus

    Megitus

    Joined:
    Aug 5, 2016
    Posts:
    4
  49. Malveka

    Malveka

    Joined:
    Nov 6, 2009
    Posts:
    191
    Amazing package! Using it in my project and I'm very pleased with the results.

    I have a straightforward tessellation shader that I would like to have also support dissolve. I am considering inserting the tessellation function into one of the Advanced Dissolve shaders. Is this a reasonable approach? If so, can you recommend which of the Advanced Dissolve shaders would be a good candidate?

    I was originally thinking of using VacuumShaders/Advanced Dissolve/Standard/Metallic, but there is so much indirection in this through includes that it seems daunting. Perhaps VacuumShaders/Advanced Dissolve/Physically Based/Metallic would be a better choice?
     
    Last edited: Aug 28, 2018
  50. Arkhivrag

    Arkhivrag

    Joined:
    Apr 25, 2012
    Posts:
    2,982
    VacuumShaders/Advanced Dissolve/Physically Based/Metallic is much easier to implement tessellation.

    BTW, Beast will be compatible with Advanced Dissolve.


    VacuumShaders - Facebook Twitter YouTube