Home General Discussion

Normal Map - Smoothing groups / beveling edges

PetSto
polycounter lvl 4
Offline / Send Message
PetSto polycounter lvl 4
Hi polycomnunity, I have couple of questions but first I write what I know for better understanding problems. When we creating normal maps (in this case tangent space) for creating nice transitions in corners for illusion of beveled edge, we can have one or more smoothing groups , we can have one UV or have multiple UV pieces and LP can be inside or outside HP, or LP corner can be connected to HP middle of beveled edge.
Some examples:

First case, multiple smoothing groups/ hard edges and known problem on edges, when have hard edges on UV connected to others.
2kogmd.jpg

Second case show multiple smoothing groups/ hard edges with separated UV shells where all hard edges are not connected to others.
2rh76g5.jpg

third and four case show one smoothing group / smoothed edges on entire LP with one UV shell and when all edges are sepparated, there isn't difference. We have nice edges but on sides have undesired and ugly transition. We can here add som beveled edge or supported edge loop for less transition between two sides of this box.
9ullqd.jpg

Conclusion: As we can see, first case isnt usable, second is best, and third and four case have specular problem on sides of boxes.


Last what we can do is right setup LP and HP and ofc Cage. And this is my question, what you use and what is better from these examples.
1zexibq.jpg
2e16u52.jpg
In this case we have on A1 LP corner exactly on HP middle of beveld edge and LP is inner of HP (smaller size), on B1 we have LP on same size as HP and C1 is outer of HP.

attop.jpg
In this case I have topology for LP (hole in mesh), but I dont know what is better.

Replies

  • Bek
    Options
    Offline / Send Message
    Bek interpolator
    http://tech-artists.org/wiki/Beveling

    http://www.polycount.com/forum/showthread.php?t=107196

    basically a hard edge requires a UV seam, but a UV seam does not require a hard edge. Hard edges at UV seams are 'free' so it makes sense to do so in 99% of cases. If you want to use one smoothing group for some reason you're going to have to have a synched bake (that is, you bake in the same tangent basis your engine uses).
  • ZacD
    Options
    Offline / Send Message
    ZacD ngon master
    One big disadvantage of one smoothing group is that it does worse with compression and mipping, so even with a synced workflow it's not the ideal option.
  • Obscura
    Options
    Offline / Send Message
    Obscura grand marshal polycounter
    Its far not that bad if you already reduced the gradients with chamfers or edgeloops. If your limits allow you to use as much geo as needed to reduce them as much as possible, then I wouldn't say its not an ideal option.Then it won't compress and mip badly. But then the question comes, do you really need that normal, if you also have many geo?... Case dependent of course.

    Anyways, usually the hard edges method is preferred, however there are some companies, who use their own solution and tools, like ID, where you have to bake with one smoothing group.
  • almighty_gir
    Options
    Offline / Send Message
    almighty_gir ngon master
    What did you bake in and with what settings?

    If xNormal and using Mikktspace, make sure "calculate binormal in pixel shader" is checked in the plugin settings. (i say this because i noticed some waviness on the flat surface of the cube).
  • PetSto
    Options
    Offline / Send Message
    PetSto polycounter lvl 4
    ..

    For baking I use xNormal, target engine is UE4 and tangent calculator is ofc mikk tspace and in plugin have checked compute binormals in shader and waviness on 3 and 4 case is because I have 1 smoothing group for entire mesh.
    2wbuejc.jpg and I dont have there any support edge loop or beveled edge on LP for reduce angle of raycasting.

    My question is, when you create normal map and using hard edges, I thing if angle is more then 45 how you setup LP against HP, what you prefer (A1,B1,C1) and why. And from images (A2,B2,C2) when creating silhouette for LP what you choose.
  • skyline5gtr
    Options
    Offline / Send Message
    skyline5gtr polycounter lvl 9
    What did you bake in and with what settings?

    If xNormal and using Mikktspace, make sure "calculate binormal in pixel shader" is checked in the plugin settings. (i say this because i noticed some waviness on the flat surface of the cube).

    What is this Mikktspace you speak of
  • gnoop
    Options
    Offline / Send Message
    gnoop sublime tool
    Since every hard edge and UV seam basically means a split in geometry and doubled vertex count you can be free adding geometry bevel + edited normals instead of every hard edge without UV splits .

    Until it's very tiny bevels which cause extra problems

    For an engine would be no difference actually.

    Once following such pattern you could no more care much if baking synced or not. Otherwise that problem just could make you crazy
  • Obscura
    Options
    Offline / Send Message
    Obscura grand marshal polycounter
    I'm on the same opinion... It makes your life much easier if you add a few chamfers or edgeloops, because you don't have to care about any sync and smoothing shit. Those extra edges or chamfers are also almost free nowadays. Actually I don't really understand why people still mess with this so much, when it would be faster and easier to simply use more geo. Its also looks better, so it totally worth.
  • WarrenM
    Options
    Offline / Send Message
    Yes! I've been heading that way myself. Trying to get right angles to smooth correctly and seamlessly and all that ... fuck it, just round the edge out. Problem solved and the renderer doesn't even notice a few hundred extra triangles.
  • skyline5gtr
    Options
    Offline / Send Message
    skyline5gtr polycounter lvl 9
    WarrenM wrote: »
    Yes! I've been heading that way myself. Trying to get right angles to smooth correctly and seamlessly and all that ... fuck it, just round the edge out. Problem solved and the renderer doesn't even notice a few hundred extra triangles.

    Going to try this next model for sure. Been concentrating too much on edge crap
  • Obscura
    Options
    Offline / Send Message
    Obscura grand marshal polycounter
    Exactly! Glad to see I'm not the only one who see it like this.
Sign In or Register to comment.