Home Adobe Substance

On every UV island, I have artifacts on Normal.

Hi. This is my very first post in polycount forum. (First time ever posting in forum asking for help please be kind on me)
I'm some sort new to lowpoly hardsurface baking. I've been trying to solve this issue for the past few months. I read and learn from so many posts and threads, slowly learning and improving. But i hit a wall. Please if there's any pros out there can guide me and help me understand what am I doing wrong~

I read posts about MIKKT tangent thing. I roughly understand most of them, but I got no one to ask and re-confirm so I know the thing that I'm doing might be correct or might have the wrong idea of it.

Problem:
On every UV island split, I get artifact blacklines.

Here's one of the video that i watched but i still don't quite get it.
This will end up in Unity so i kinda followed the instructions from the video.

Mesh:
・Got smoothing group.
・Got cage mesh prepared.
・Got high poly mesh prepared.
・No hard edge.





Here's the link to the files:

Thanks in advance!

Replies

  • FourtyNights
    Options
    Offline / Send Message
    FourtyNights polycounter
    Check if you're using enough edge padding/dilation when baking. I skimmed through the video you linked, and the instructor left the edge padding as 1, which is bad. Crank it to the max:


  • Aruto
    Options
    Offline / Send Message
    Thanks for the reply! Umm, i did another test. I put 40. I still got the same result. :(


  • poopipe
    Options
    Offline / Send Message
    poopipe grand marshal polycounter
    this is perfectly normal

    normal maps are not magic - if you're getting that close to it, you need more geometry, 

    There are ways to mitigate it.  - eg.  you should harden edges at UV seams  - but you're not going to get a perfect result under any circumstances 


  • Aruto
    Options
    Offline / Send Message
    Tq for the reply!
    I read some posts that say we need to harden the UV borders (which also means UV seam in a way).
    But i still get those black line artifact along the UV split.

    Is this perfectly normal? I wanna do my very best and fully understand this normal thingy.



  • FourtyNights
    Options
    Offline / Send Message
    FourtyNights polycounter
    Nowadays current hardware eats polygons for breakfast, so I'd say you could bevel those edges instead to have easier time with baking normal maps (and other maps too).

    I took a look at your low poly and its polygon count is 184 triangles, so nothing to worry about. Like I tested here by beveling some key edges, the triangle count is 544 now, which is still very low. You'll get much better low poly shading, and normal map doesn't need to compensate so much when baking something like this:



    Answering to your concern of your latest post... remember this golden rule: "All of your hard edges are always UV seams, but not all of your UV seams need to be hard edges."

    And if you're using hard edges on seams, those UV islands need to be away from each other to get the normal map bakes to work.

  • Neox
    Options
    Offline / Send Message
    Neox veteran polycounter
    It certainly shouldnt be as strong as you see it. what does it look like in the target engine you are using? Our marmoset toolbag baked unreal stuff often looks weird and partially broken in substance painter but looks perfectly fine in unreal.
    I personally wouldnt trust substance painter for final bake quality.
  • EarthQuake
    Options
    Offline / Send Message
    This is normal. If you zoom in far enough you'll tend to see these sort of issues at any UV seam. The problem is there is only so much resolution to represent the normals, so if you zoom in, eventually you're exceeding the resolution of the content.

    A quick way to verify this is to bake out a 2x or 4x size map. Does the issue get better? If so, it's just simple resolution limits and you shouldn't worry about it.
  • EarthQuake
    Options
    Offline / Send Message
    Nowadays current hardware eats polygons for breakfast, so I'd say you could bevel those edges instead to have easier time with baking normal maps (and other maps too).

    I took a look at your low poly and its polygon count is 184 triangles, so nothing to worry about. Like I tested here by beveling some key edges, the triangle count is 544 now, which is still very low. You'll get much better low poly shading, and normal map doesn't need to compensate so much when baking something like this:



    Answering to your concern of your latest post... remember this golden rule: "All of your hard edges are always UV seams, but not all of your UV seams need to be hard edges."

    And if you're using hard edges on seams, those UV islands need to be away from each other to get the normal map bakes to work.

    These micro bevels can cause just as many problems. Firstly, if you're adding bevels and not using hard edges, generally speaking the normal map has to do more, not less work. Beveling only really helps in the case where you have a sparse mesh and aren't using hard edges. But hard edges are free at UV borders anyway.

    Secondly, any resolution issues are going to be very problematic here. With these long thing faces, you can (depending on resolution) end up with cases where you've got 1px or less to represent these areas. Even if the full size bake looks okay, it may not look hold up as well in game when mip-mapped or at lower texture quality settings.

    Lastly, while modern GPUs can handle a lot of triangles, rendering long, thin triangles is generally inefficient.
  • poopipe
    Options
    Offline / Send Message
    poopipe grand marshal polycounter
    All true.. 

    What you decide to do is determined by expected view distance. 

    If you're close enough to see that seam, you're close enough to notice the silhouette issues of not having a bevel.

    You need to build your model so it looks good at that view distance and ensure that you have enough texel density to support it. 


    Also fourtynights has it the wrong way round.  Uv seams should be hard,  hard edges don't need to be uv seams 
  • EarthQuake
    Options
    Offline / Send Message
    poopipe said:


    Also fourtynights has it the wrong way round.  Uv seams should be hard,  hard edges don't need to be uv seams 
    This is incorrect, there is no requirement for uv seam edges to be hard, they can be, and it's free (in terms of vert cost), but there is no requirement to do so. On the other hand, you do need a UV split (and padding between islands) anywhere you have a hard edge, otherwise you'll get artifacts in the bake.
  • poopipe
    Options
    Offline / Send Message
    poopipe grand marshal polycounter
    Yep, sorry. 

    Hardening seam edges is force of habit from working with LODs where maintaining flat normals on flat surfaces trumps any other considerations. 


  • Aruto
    Options
    Offline / Send Message
    Woaahhh! So much discussions!

    @FourtyNights I really would love to add more bevels to it but I'm restricted at a certain polycount. This is just a part of the whole model. xD
    Issit a must for hard edging UV border? I kinda did some tests on them. It just doesn't have as much average baked into the normal map. (I might be wrong, I'm not too sure)
    @Neox Its going to be used in Unity. So this is how it looks like in Unity.

    @EarthQuake I baked at 4k resolution. (the highest my PC can get in substance)
    Of course i baked at 1k and 2k to try out. 4k gives me the best result. So i guess its perfectly fine and i dont have to worry about anything?

    @poopipe I guess you're right about if we're going to zoom that close, the silhouette will gives away about it being not having a real bevel. But the thing is that I got no idea how others gonna use the model, so I wanna provide the best detail that I can provide.


    Summary of continuous question spree:
    If average baked into the normal can help with the compensation of not having hard edges, what's the benefit of doing the UV island split and adding padding and also hard edging the edge? Because I watched some other videos, saying that the UV vertex count will be higher if we do so. (which means eats more memory)

    Super TQ for all the replies!

  • Neox
    Options
    Offline / Send Message
    Neox veteran polycounter
    if you already have uv cuts, you can use hard edges for free, but you dont have to
    if you add hard edges because you have too much lowpoly shading going on with sharp angles, you have to add uv cuts. yes hard egdes will add to the render vertexcount in that case
  • EarthQuake
    Options
    Offline / Send Message
    @Aruto if you're seeing worse seams at lower resolution, that tells you it's a resolution dependent issue. So yeah, it seems perfectly normal.

    One thing you can do is use softer edges / larger bevels on the high poly mesh, this way you're not trying to represent micro bevels with limited resolution. Exaggerating bevels can help with asset readability as well. This gets down to art style though so it's really up to the project and visual goals.
  • Aruto
    Options
    Offline / Send Message
    @Neox okay! After really think about "hard edges for free", I get it now. Tq for the explanation!

    @EarthQuake Okay! As long as its professionally done! Now i got no more doubts! Tq!

    TQ all for the explanations!
Sign In or Register to comment.