Home Technical Talk

[Blender] Need help with shading artifacts on lowpoly model

Yzii
polycounter lvl 2
Offline / Send Message
Yzii polycounter lvl 2
Hi guys! I need to ask for your help solving these artifacts Im having on my lowpoly model. Artifacts in Blender would not be that big problem,  but Im also getting visible seams in baked normal map (baked in Substance Painter). I have tried triangulate both lowpoly and highpoly models before baking, changing UV seams, scaling up UV islands of problematic parts. 

Can you pleas help be understand what is reason for these artifact and how to get rid of them?

I have bad habit of pretty dirty workflow that I developed by working in small gamedev company, where priority was doing things quickly as possible regardless its dirtyness or problems later in development. So now I am trying to learn how to do these things properly.

PS: I do know there are other problems in bake, I want to solve them later.

Replies

  • musashidan
    Options
    Offline / Send Message
    musashidan high dynamic range
    Are you baking averaged or non-averaged in S Painter?

    You should always triangulate the low poly before baking. Triangulating the high poly is unnecessary.
    Long, thin tris and especially multiple of these that converge at poles usually result in shading errors.
    I would recommend rearranging the low poly topology to get a more even spread of tris closer to an equilateral shape. You could start by adding an edge loop midway between the polar vert and the cylindrical details.

    Also, the cylindrical details add nothing to the silhouette as they would be obscured by the raised rim around the drum at a perpendicular angle. You could add this detail into the normal map and avoid cutting the topology up. Have you tried adding the cylinder details as separate intersecting geo and baking with Blender's bevel shader?(rounded edge shader)
  • Yzii
    Options
    Offline / Send Message
    Yzii polycounter lvl 2
    Thanks a lot for help! 
    I was baking averaged, but I tested it and was getting same results with non-avereged. 
    Im not quite sure what you meant with "adding an edge loop midway between the polar vert and the cylindrical details".  Im probably just lost in translation from english. If I put edge loop on top of this detail it will fix my problems, but polycount will be 3x bigger in this area, because I will have to put it on both sides.
    I have also tried making detail and lid as two separated parts, which will solve problems with artifacts on lid itself, but detail artifacts will remain and I will loose half of hole in center of detail (which would be small sacrifice if it would sort out this problems).
    I did not tried bevel shader that true and I guess that would solve it.

    But I have found possible solution and that would be marking border edges as Sharp and than applying EdgeSplit Modifier with Sharp Edges option only. 
    There may be problems in baking with those sharp edges though. I will test it further and post update.
  • kat
    Options
    Offline / Send Message
    kat polycounter lvl 17
    Where possible don't use Sharp or split edges here, they'll cause hard edges in the normal map where you don't want them.

    Try increasing the size of the lower edge loop a little where the details join to the top of the barrel, sometimes changing the angle of something clears up artifacts like the ones you're getting and you won't have needed to add more polygons.

  • musashidan
    Options
    Offline / Send Message
    musashidan high dynamic range
    Yzii said:
    Thanks a lot for help! 
    I was baking averaged, but I tested it and was getting same results with non-avereged. 
    Im not quite sure what you meant with "adding an edge loop midway between the polar vert and the cylindrical details".
    If baking synced average(mikkT) in SP then you can set all smoothing to be 1 group. Don't export tangents and binormals with .FBX, and upon import, let SP 'compute tangent space per fragment. This is a true averaged bake and you don't need to worry about hard/smooth edges. The mikk tangent basis will take care of that.

    Also, if you have space on your texture sheet you can use it to scale up the islands that comprise the small cylindrical details. This will give you more pixels around those areas for a cleaner bake.

    What I meant by adding that edgeloop was to add it midway between the vertex in the centre of the main mesh and where your small cylindrical detail starts. That way it will make your triangles more regularly sized. Don't worry too much about adding a few verts to the mesh count. It won't make much difference if you're worried about total vert count.
  • Yzii
    Options
    Offline / Send Message
    Yzii polycounter lvl 2
    Thanks both of you guys for helping me!
    kat said:
    Where possible don't use Sharp or split edges here, they'll cause hard edges in the normal map where you don't want them.

    You were right, using  Sharp or split edges may fix one problem, but bring another.

    If baking synced average(mikkT) in SP then you can set all smoothing to be 1 group. Don't export tangents and binormals with .FBX, and upon import, let SP 'compute tangent space per fragment. This is a true averaged bake and you don't need to worry about hard/smooth edges. The mikk tangent basis will take care of that.

    This actually worked! Thanks alot  ;)
Sign In or Register to comment.