Search Unity

  1. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

Question Terrain "grass" is shiny

Discussion in 'General Graphics' started by tleylan, Oct 31, 2023.

  1. tleylan

    tleylan

    Joined:
    Jun 17, 2020
    Posts:
    601
    I have a park terrain with tiles and some green patches, some plants and such. One day the overall look changed and I don't know why. The result is a triangular shine on areas that I have painted with grass (green). If I look straight down it appears normal but you can see from the image when viewed from ground level it has an odd pattern.

    Does anyone know what the cause might be and how I might resolve it?
    from_above.png

    shiny_grass.png
     

    Attached Files:

  2. tleylan

    tleylan

    Joined:
    Jun 17, 2020
    Posts:
    601
    I would have thought this was one of those "you're doing it wrong" or "check 1, 2 or 3" types of issues. It doesn't look like this when built for Windows but only for Android. This is part of a VRChat world project, BTW.

    Found a few other messages re: shiny terrains but if they applied in this case I couldn't tell. I doubt it is something in the terrain builder or there would be lots more messages. I can try adjusting the texture but I have no idea if that is the cause.
     
  3. tleylan

    tleylan

    Joined:
    Jun 17, 2020
    Posts:
    601
    Well I've determined that it is related to compression. I'm getting a recommendation that the default texture format on Android s/b ASTC. When I set that I get the glassy look above. There is a suggestion that individual textures can have their compression adjusted but I don't "quite" see that option. There is a Format (set to Automatic) and a Compression set to "Normal Quality". Anybody know if I can set the default to ASTC and override the textures that appear glassy by setting one or both of these?
     
  4. tw00275

    tw00275

    Joined:
    Oct 19, 2018
    Posts:
    65
    @tleylan If you're using Unity's terrain system, you may want to use the Channel Remapping settings to control the reflectance of the terrain material.



    Mine is set up so that Metallic and Smoothness is clamped to 0 and Ambient Occlusion is clamped to 1. If you don't clamp these values then they're controlled by the R, G and A channels of the Mask Map texture.
    https://docs.unity3d.com/Manual/class-TerrainLayer.html

    However, even with these settings the terrain will be slightly glossy and reflect what's in the skybox or reflection probes. To disable all reflections, I set "Reflection Probes" to Off.

     
  5. tleylan

    tleylan

    Joined:
    Jun 17, 2020
    Posts:
    601
    Thanks I'll play with some of the settings. I was able in the end to set the project to use ASTC and to then set the few individual textures that were shiny to not use ASTC. My grass and tiles are back to normal, finally :)