Home Technical Talk

In need of advice on normal mapping/texturing large buildings

Hey guys, first post here as the discords I am in are mainly weapon related, and as ive found these things are very very different issues.

I am in the process of making a bunch of buildings. To preface this, I know modular components are very versatile and many of the more basic buildings in the project are comprised of modular components with some trims to dress them up, but im talking about very unique buildings. I have made many large warhouses, factories, all with full interior spaces etc and I have what id say a big misunderstanding on the next part.

Firstly, if it matters, I have modelled them to be very efficient triangle wise due to their size, I havent wasted triangles bevelling every single edge unless it is actually a large bevel in real life or in reference images, so for example the corner of a building is a sharp 90 degree edge, even though bricks may have a slight worn curve irl.

The issue comes with texturing. In order to get great texture resolution and allow techniques such as POM to shine, and make concrete/bricks look extremely realistic and high resolution, I have to make the UV islands much bigger than the 0-1 space allows. The side effect to this is that I cant bake a normal map and despite the resolution being fantastic, things look sharp and ugly at times. I feel like as beautiful as texture resolution is, sharp edges are equally ugly, and vica versa.

The other issue for this comes with objects like window frames. They take a ton of triangles for a whole building, but putting a sort of chipped wood texture on them requires them to be scaled up to really show the detail in the paint and wood, but as a result they dont have normal maps again and it makes them appear really previous gen and ugly.

I really dont know what to do. I feel like I cant chamfer every single edge and I cant make them fit in the 0-1 UV space and bake for them. Is there a solution?

I can post pictures of the buildings etc if needs be.

Thank you very very much for reading and I massively appreciate any support!

Cheers guys!

Replies

  • Quack!
    Options
    Offline / Send Message
    Quack! polycounter lvl 17
    You really should not bake much of anything for a building these days.  What you need to do instead is to make a handful of high resolution tiling materials and then unwrap your model to the textures.  Edge wear details can be taken care of by floating 1-bit alpha geometry cards of edge wear if you need that granular of detail.

    Materials first, then model to them. 
  • hambo
    Options
    Offline / Send Message
    Hey Quack!

    Thank you very much for the response.

    We do actually hav some really nice tiling high resolution textures and a bunch of interesting shaders to add certain effects, but im talking more in terms of, are there actually any rules of thumb/techniques to always follow. I still really feel like things look sharp and ugly, getting the resolution isnt the problem, its the sharpness of having no normals and the buildings having many 90 degree edges. It is interesting to see what you said however about nothing being baked. When you say edge wear being taken care of floating 1 bit alpha geometry cards, do you mean decals essentially, geometry decals?

    Edit# For example one of the buildings I have made is called a Khrushchyovka, it is already a very blocky looking building, I downloaded a tech art aid demo which has a very similar apartment block, his has no interior but the outer elements are basically modules with full normals. This wouldnt work us as far as I know, but regardless, they have great normals and the concrete looks real and soft, but up close because of that, the lovely textures break down and look low res.

    Ours is the opposite, very high res but it lacks a soft look to the concrete and windowframes etc which makes it look really nice.

    Cheers!


  • toxicsludge77
    Options
    Offline / Send Message
    toxicsludge77 polycounter lvl 5

    You tiling textures should have normal maps to go with them. So for example, your brick texture will have a normal map to suit, so will your chipped painted wood texture. I don't think anyone bakes a normal map for a COMPLETE building.

    As for what Quack was talking about, yes he means edge decals. Check out this post by Leonardo Iezzi https://leonano.artstation.com/projects/l3wwa

  • hambo
    Options
    Offline / Send Message
    This is exactly exactly exactly what I needed to read, thank you very very much for this, I knew that you could create decals like this I didnt know that it was something this widely used, covering vast amounts of corners in a game! I have normals for the maps yeah like bricks etc but the corners always looked sharp. That article has answered a lot. Are there any other techniques used for my problem or is this the most efficient/prominent technique??
  • hambo
    Options
    Offline / Send Message
    Quack! said:
    You really should not bake much of anything for a build these days.

    Hey Quack,

    Ive been reading more into techniques such as the one that Toxic posted, and it got me thinking about what you said. Do you literally mean I shouldnt be baking anything? What about window frame meshes and doorframes for example?? Or walkway railings etc etc??

    Cheers!
  • Quack!
    Options
    Offline / Send Message
    Quack! polycounter lvl 17
    The vast majority of environment assets these days should NOT be high -> low baked if you care about production times.  Our vertex count ceiling for games is so high these days (3-15 million per scene for a AAA-style game), that you can get away with a ton of geo density and still be in the realm of running perfectly fine.  Of course there are plenty of exceptions but the old school high-low bake is way too much of a time sink to be viable on larger projects for all assets, in fact you should use it as rarely as you can get away with.  You can achieve near detail parity with a faceweighted/custom normals workflow and edge/mesh decals.  Toxic's example is a great one.

    For all of the items you listed hambo I absolutely would not recommend baking and just use faceweighted/custom normals and bevels and tiling materials.

    Hero props, hero characters, hero guns, hero anything of course can get a pixel perfect high low bake if you want, but your average video game player isn't going to notice it. 
  • hambo
    Options
    Offline / Send Message
    Thanks for the advice Quack!

    I have never heard of faceweighted/custom normals but after doing some research ill definitely give this a shot. Honestly imglad that the whole high -> low is not viable. I do it sometimes for easy assets as I can smooth a model in an extra 20 minutes but making high polys is a pain. Ill give this a crack.

    Cheers!
  • Millenia
    Options
    Offline / Send Message
    Millenia polycount sponsor
    Also something that hasn't been mentioned yet - you can add some extra edges throughout your mesh and then use vertex colour & vertex painting to add variation to your tiling materials to avoid an obviously tiled look. Great for adding a bit of breakup.
  • toxicsludge77
    Options
    Offline / Send Message
    toxicsludge77 polycounter lvl 5

    Face weighted normals (FWN) are a great and fast way to achieve that high poly look without wasting time going through the whole high/low/bake process. It's also called 'medium poly' modelling I believe.

    If you haven't come across it yet, check out this post by one of the artists from Star Citizen. It's an invaluable resource.

    https://www.reddit.com/r/starcitizen/comments/3ogi3o/im_an_tech_artist_in_the_industry_and_id_love_to/

Sign In or Register to comment.