Search Unity

Question Low poly roads - static lighting problem

Discussion in 'Global Illumination' started by blade2206, Jun 2, 2021.

  1. blade2206

    blade2206

    Joined:
    Nov 22, 2020
    Posts:
    4
    I have problem with models I have created. I use color pallete 8x8 pixels wide and coloring low poly models with it. I created road section in blender that I imported to unity. Problem is when I select static on those GameObjects and I bake lighting the result is that almost every road section have different color. Example below. Why is it happening and how can I fix it? I tried to search forum but can't find an answer :( Please help. light_static_problem.png

    Edit:
    Lightning settings
    light_settings.png
     
    Last edited: Jun 2, 2021
  2. kristijonas_unity

    kristijonas_unity

    Unity Technologies

    Joined:
    Feb 8, 2018
    Posts:
    1,080
    Does your road mesh have lightmap UVs? Such artifacts could be caused due to UV overlaps. Either authors lightmap UVs yourself (they would have to be placed in a second UV channel), or let Unity generate lightmap UVs for you in the mesh importer settings.

    Alternatively, this could be an issue related to smoothing and UV splits. Make sure that all your UV islands are stitched and that you are using the same smoothing angle for all surface polygons.
     
  3. blade2206

    blade2206

    Joined:
    Nov 22, 2020
    Posts:
    4
    Thank you! Generate lightmap UV on import helped. Is it ok to leave generating lightmap UVs to unity or should I unwrap and manually modify in Blender?
     
  4. kristijonas_unity

    kristijonas_unity

    Unity Technologies

    Joined:
    Feb 8, 2018
    Posts:
    1,080
    It depends. If automatic lightmap UV unwrap is giving you good results, then there's no need to modify them manually. However, there many instances where automatic lightmap UV unwrapping would fail, especially with more complex objects. In that case, you'd need to author lightmap UVs manually in Blender (or any other DCC tool).