Home Technical Talk

Normal mapping outside of 0-1 space?

node
Offline / Send Message
baccene node
Hey everyone,

My professor wants me to make tiling materials for some modular assets. She wants us to stretch our uv's past the 0-1 space. I didn't know this before this week's project and I decided previously to make game res and high res assets for baking normal information. Is there a way to use the high and game meshes to bake normals when your uv's are laid out beyond the 0-1 space? Any creative solutions? 

Thanks!
Trav

Replies

  • Farfarer
    Offline / Send Message
    Farfarer Polycount Sponsor
    For the purposes of tiling textures, no. The default behaviour for UVs is usually to repeat the image infinitely in all directions.

    So you bake to the 0-1 space and make sure that it tiles. Depending on what you're baking, this is usually by having some of the high res mesh duplicated (so that what runs off one side comes back onto the other).

    UVs with unique image data beyond the 0-1 range are usually called UDIMs and aren't often used in games. If you've been tasked with doing tiling textures, it's not these you're after :)
  • baccene
    Offline / Send Message
    baccene node
    Hey Farfarer thanks for the responce. My head hurts lol. It's been a long day. I'm trying to understand what you said here. So, it's not possible to bake high res mesh info if your game res uv's are laid out past the 0-1 space? Correct? Or were you saying there is a way by duplicating the high res mesh? I'm not sure what you were saying, sorry.
    Thanks again
    Trav
  • EarthQuake
    Generally there are a few different approaches to take:

    1. Fully unique UVs. Typically this would be for hero assets (characters, guns, props, etc) that have unique detail and are small enough to be mapped and textured uniquely. You'll usually have a high poly mesh to bake normals from.

    2. Tiling textures. Generally you'll use tiling textures for large structures like buildings and terrains. There really isn't a reasonable way to map these sort of assets uniquely, so you'll rarely (basically never) make a full high poly for this sort of asset. It's a common student mistake to think you need to create a unique high poly mesh for like, an entire building. What is more common is making a high poly just for the tiling texture sets. Or skipping the high and doing it all in Substance Designer.

    3. Modular tiling sets. This is sort of the in between, and is often used with buildings or other structures. The idea here is that you have a number of lego-like swapable parts, and you may do some high poly modeling for some elements and mix in some more traditional tiling texture techniques. An example of something you may model out fully would be window sills and doors/door frames. Modular tile sets are often laid out with large textures that have multiple elements, but there are a number of ways to do this.

    The two common ways to tackle texture sets are  A. use simple tiling textures, B. use more unique unwraps for your lego pieces, and then use geometry to mapped to the 0-1 space. So you may have a wall section, a window section, a door section, floor section, etc, all mapped to one UV layout. You can mix and match A and B here as well, with tiling textures used for the big masses and unique texture sets used for the more unique assets.
  • Farfarer
    Offline / Send Message
    Farfarer Polycount Sponsor
    baccene said:
    Hey Farfarer thanks for the responce. My head hurts lol. It's been a long day. I'm trying to understand what you said here. So, it's not possible to bake high res mesh info if your game res uv's are laid out past the 0-1 space? Correct? Or were you saying there is a way by duplicating the high res mesh? I'm not sure what you were saying, sorry.
    Thanks again
    Trav
    Usually when making tiling textures, your low res "mesh" is just a single quad that's mapped to the 0-1 UV space, and you're baking down some high res mesh to get your baked data from.

    The classic example is a brick wall, where you're likely to have bricks that end outside of the bakeable space. In this case, you want to make sure that the chunks that exit the frame on one side are duplicated back over to the other side, so that the baked image tiles seamlessly.

    e.g. the bricks that stick out of the edges here are duplicates of each other, offset exactly so that the point they exit the frame on the right is the point they enter the frame on the left.

  • Eric Chadwick
Sign In or Register to comment.