Home Technical Talk

Face weighted normals question and methods...

jordank95
polycounter lvl 8
Offline / Send Message
jordank95 polycounter lvl 8
Help me understand this all correctly. Trying to wrap my head around face weighted normals and when to use them vs baking. My understanding is it's better/easier to use them on simple assets that aren't highly detailed or bigger environment pieces that use tiling textures. I know this differs asset to asset, but I'm just making sure I'm getting this. Please correct me where I'm wrong:

method 1 - face weighted normals with tiling texture (pros: no need for baking)

method 2 - create a high poly and low poly, bake and texture uniquely with substance painter. (cons: takes longer)

method 3 - face weighted normals, but add more detail in the height/normal map with Subtance Painter like vents, screws etc. (pros: no need to create a high poly and can still add small details via Substance Painter)

all methods vert count stays relatively the same, so would method 3 be the best, or would method 2 be the better one of them if I wanted to add detail? Does anyone even do method 3 or is that wrong?

Is it acceptable to use a normal map with an asset that already has the extra polys for face weighted normals?

Replies

  • zachagreg
    Options
    Offline / Send Message
    zachagreg ngon master
    None of these are and none of them are better all around, they all function in different scenarios based upon how a game is being built or any project for that matter. There are also several other methods you didn't list that have their use cases. Method 1 is usually not just by itself most of the time there are decals/trims/floaters on it as well, at least in the end product. 

    It depends if you're working with a hero prop, projected textures and a whole bunch of other things. There is no end all be all which is why they are all used.

    As for the normal map, yes in some cases though you have to make sure your edge splits in UVs are synced with your face weights. I don't know exactly what you mean by this because painting in greebles and such in painter is using a normal map. 

    Also you or someone on your team would likely be making highpolys for such stamps anyway. Do not fear highpolys


  • ant1fact
    Options
    Offline / Send Message
    ant1fact polycounter lvl 9
    jordank95 said:
    Is it acceptable to use a normal map with an asset that already has the extra polys for face weighted normals?
    Hello. Modern GPUs handle poly counts in the millions with ease. A few extra polygons will almost never be a concern unless your target platform is mobile phones.

    Also, polygons don't really matter but vertices do. If you don't use face weighted normals (i.e. you are most likely baking the roundness of your edges from a high poly) you will need a UV split which means your vertices along the split have now doubled. If you use FWN then you don't necessarily need a UV split so you end up with the same amount of vertices. Consider the following scenario where the red edge indicates a UV split. Both meshes have the same amount of final, in-engine vertex count:


  • gnoop
    Options
    Offline / Send Message
    gnoop polycounter
    But if you have  UV seam along with that  beveled edge  it still more efficient to have just single hard edge
  • jordank95
    Options
    Offline / Send Message
    jordank95 polycounter lvl 8
    Thanks for all the comments. Makes some more sense now.

    Just trying to understand this a little further. 

    Why not just always model boxes and other 90 degree geometry with face weighted normals if it’s the same vertex count in the end? Why ever make a high poly of the 90 degree geometry? 
  • Valvoa
    Options
    Offline / Send Message
    Valvoa polycounter lvl 8
    How are artists unwrapping bevels with face weighted normals exactly? I'm interested in using this technique for a hard surface model but unsure about the unwrapping process. For a hero piece or focal point should I just stick with the traditional UV seams on hard edges and just bake my smoothed edges? Thanks. 
  • poopipe
    Options
    Offline / Send Message
    poopipe grand marshal polycounter
    First thing
    This is not face weighted normals - this is normals that have been edited. Face weighted normals are automatically weighted by face size (Maya does this by default) 

    Second thing. 
    Doing this and baking are not mutually exclusive 

    Third thing
    Manually editing your normals is destructive and cannot reliably be reproduced.

    Fourth thing. 
    Adding supporting geometry for this  means your lods will look shit and/or be expensive

    Fifth thing
    A single segment bevel is no more expensive than fudging the same look by messing with normals and doesn't produce shadowing artefacts

    There's nothing wrong with editing normals but using the technique to get around the need to build assets properly will fuck you in the long run.
  • gnoop
    Options
    Offline / Send Message
    gnoop polycounter
    jordank95 said:
    Why not just always model boxes and other 90 degree geometry with face weighted normals if it’s the same vertex count in the end? Why ever make a high poly of the 90 degree geometry? 
    if you bevels  are very thin   it creates some other issue for a renderer for rendering  a tiny thin triangles from distance  when  they are like 1/10 of screen pixel and vertexes are super close to each other  . Something with screen rasterization process.         So at some lod you supposed to get rid of them  and be hard edge  anyway  but this time without  necessary UV split and lowres texture mip  .   That switch could still cause  some visible shading flickering  if happening too close  as it would be with super thin polygons.

    So in a word  if your thing does have real bevels or rounding corners of visible  size  do it with one poly  bevel  and  FW normals  turning to hard edge  at some distant lod .    If not  it's better be hard edge  from the first lod .

    As of unwrapping   a bevel with face weighted normals  is supposed to have no UV split , otherwise you  still doubling vertex count  but that bevel should still be propagated to lod02  and 3 probably. 
      In general  Face weighted normals and  bevels  would  make you do your own decisions about lods  vs  AI  or automatically generated  so add few extra pain to your  a...

    ps. I still consider directly edited/projected normals a good practice for killing shading artifacts around holes  in cylinders for example vs  extra loops  you have to do with smooth groups .
      


Sign In or Register to comment.