Search Unity

  1. Unity 2019.1 is now released.
    Dismiss Notice

Terrain instancing incompatible with tessellation/surface shaders [1111579]

Discussion in '2019.1 Beta' started by jbooth, Dec 26, 2018.

  1. jbooth

    jbooth

    Joined:
    Jan 6, 2014
    Posts:
    3,475
    Had texture arrays not been broken through the entire 2018.3 beta, I might have caught this earlier. But basically the new instancing system used for terrain is incompatible with surface shader tessellation. It will complain that the input (inout) parameter to the displacement function is not fully initialized, because the instance ID is not initialized before being passed to this function.

    Bug id: 1111579
     
  2. TerraUnity

    TerraUnity

    Joined:
    Aug 3, 2012
    Posts:
    700
    @jbooth Did you manage to solve the issue finally?
     
  3. jbooth

    jbooth

    Joined:
    Jan 6, 2014
    Posts:
    3,475
    Nope, not something that can be worked around. Unity seems to be happily ignoring it too, since they are trying to move away from surface shaders.
     
    TerraUnity likes this.
  4. TerraUnity

    TerraUnity

    Joined:
    Aug 3, 2012
    Posts:
    700
    Oh ok, thanks for the answer Jason. Actually the current state of surface shaders are somewhat ambiguous, because Shader Graph is only available in SRPs, and normal pipeline still uses surface shaders and is the same in the latest versions yet we hear they will drop them soon.

    Shader Graph is what we need as developers and also normal users but what about all these missing features in normal pipeline!