Search Unity

Normal Map Only Decal

Discussion in 'Shaders' started by benjaminacct, May 21, 2018.

  1. benjaminacct

    benjaminacct

    Joined:
    May 21, 2018
    Posts:
    2
    Hello all!
    I have a pretty simple question that I have been trying to solve on my own for a while now, and I thought it was finally time to try out the community and see if anyone had some advice.

    Essentially, I am trying to create a projection decal which only effects the normal layer on the surface below. I have accomplished this in Unreal Engine 4 by using a decal, and setting the Decal Blend Mode to "normal", however it is essential that I have this working in Unity ;).


    Bellow is a link to the UE4 documentation where they explain the Normal decal blend.
    https://docs.unrealengine.com/en-us/Resources/ContentExamples/Decals/1_2

    I am currently using Amplify shader and have the Dynamic Decals plugin to try and create decals. If anyone has any suggestions on how I can create this same effect using those, or other plugins, I would greatly appreciate it!

    Here is an example of what I am looking for (see normal blending).
     
    Last edited: May 21, 2018
  2. bgolus

    bgolus

    Joined:
    Dec 7, 2012
    Posts:
    12,343
    Amplify Shader Editor can't make decal shaders, and Dynamic Decals uses custom shaders that would be incompatible with any decal shaders ASE would produce even if it could. However Dynamic Decals should already ship with normal-only decals, but you have to be using Unity's deferred renderer for these to work. If you want to customize them further you would have to author the shaders yourself "by hand" in a .shader file rather than using any of the node based editors out there.

    Unity's upcoming HD Pipeline will support decals out of the box, and may someday support the creation of shaders for those decals via Unity's official Shader Graph, but not today, and probably not in the next year realistically.