Home Technical Talk

Tiling texture vs unique unwrap

polycounter lvl 9
Offline / Send Message
Chase polycounter lvl 9
Tell me if I'm just over thinking this but I was planning on using 3 tiling brick textures, creating the normal maps from these textures and then throwing on some decals to break up the tiling. That's my first directional thought.

However I've been going back and forth as to whether or not I should take my model into ZBrush and really damage it up instead of just relying on photo reference and sticking with a bland looking model. If I go this route and bake out the high poly am I still able to use the tiling textures even though the UVs for the bake have to fit in the 0-1 UV space? Meaning I pack everything specifically for the bake and then afterwards can scale out the UVs for the bricks past that 0-1 UV space?

Here's the modular piece so you know what I'm working with.

94967051.jpg
Again, I know I'm over thinking this, but had to ask anyways :poly136:

Replies

  • dpadam450
    Offline / Send Message
    dpadam450 polycounter lvl 12
    Well I can't speak for other game engines you might be using but you can have multiple uv coordinates per vertex for this same reason. One case this is applied is terrain. It has a 0-1 uv light map/normal map, but the tiled coordinates could be -2000 to 2000 or more depending on how much tiling you want. Mostly this idea is applied when tiling though there may be other reasons to have multiple uv's though I can't think of them right now.
  • Chase
    Offline / Send Message
    Chase polycounter lvl 9
    So I can still have the bake under one map channel and the diffuse under another? Is 5 map channels, 6 including a light map, too many?
  • passerby
    Offline / Send Message
    passerby polycounter lvl 12
    just keep in mind that having multiple uv channels results in more verts. since there are more spilt verts.
  • passerby
    Offline / Send Message
    passerby polycounter lvl 12
    also why 5 channels that seems like over kill. channel 0 could bring tileing detail, channel 1 local detail(ao, cavity), than channel 2 for lightmaps why would you needle more than that?
  • Eric Chadwick
  • dpadam450
    Offline / Send Message
    dpadam450 polycounter lvl 12
    What do you mean by map channels. Have 1 tex coord for unique thinks like baked lighting and 1 tex coord for uv tiling.

    Adding multiple uv coord does not produce more verts. you can store as many attributes and data as you want. you onlu have to split verts if the vertex is shared on faces that make the vertex have multiple uvs such as tangents.
  • Chase
    Offline / Send Message
    Chase polycounter lvl 9
    I was thinking about that last night passerby. I can just have all the tiling textures in map channel 1, masks in map channel 2, and light map in 3. I originally had the 3 brick textures with their own UVs because the bricks were different sizes on the texture sheet. I just need to match the scale of them in PS which I wasn't realizing.

    I've already had those bookmarked Eric ;) I know there are a ton of ways to go about modularity and I've looked into them all. I don't want to bake out my own bricks, but instead I want to sculpt on the model and then use a photo reference on top of that. The only issue I seem to come to is the rules of normal map baking vs tiling textures. If I bake a high poly of my model the UVs have are confined to one UV space. However, using a photo reference of a tiling texture gives me the freedom to expand the UVs outside this UV space. Am I just forced to texture the UVs within the one UV space which would mean scaling the bricks over the unwrap instead of scaling the UVs to fit the texture in 3ds Max. Hope that makes sense. This is how my UVs are set up as of now

    32491286.jpg

    Here's the concept I'm using
    55464111.jpg
  • Eric Chadwick
    Depends.

    You could use one brick texture for all four, and use material switches to create all the variations. This would decrease memory cost but at an increase the shader cost.

    You could pack four brick textures into one bitmap, for example in a vertical strip (so the sides tile), and subdivide the geometry (to make it tile horizontally). This would decrease texture fetches but increase the vertex count of the model.

    You could use four separate tiling brick bitmaps. But this would increase the draw calls for the models, because you have four separate shaders.

    It all depends on what's best for the game at hand. For a portfolio-only piece, I would just do option 2. Simple setup, and easy to showcase.
  • Chase
    Offline / Send Message
    Chase polycounter lvl 9
    Sorry for the late reply. I've been working on these textures, trying to figure out how to create these shaders. There's so many possibilities that it's overwhelming. I'm not experienced enough to go with your first method Eric, at least make each texture look different that is. I don't know what I could do to add variety to 1 texture to make it look like 3 other completely different textures.

    This second method seems like a much easier solution for now. I could put each texture in the RGB channels to save on texture space. Would this make me lose out in the resolution of each texture? You're method sounds like it could be feasible but I don't understand what you mean about subdividing to tile horizontally. I'm imagining 4 textures on 1 PSD. I can see how it would tile vertically, but horizontally I'm not getting it.

    This third method seems to be what I have going already, and the most simple.

    As far as vertex blending goes, maybe you guys can help me out with what I'm doing right and doing wrong. I intended to have multiple map channels since I was using multiple masks for each brick texture to show up differently on the model, if that makes sense. Having 5 map channels for one model is a nightmare to keep track of so I'm consolidating map channel 1 to be used for all the brick textures, map channel 2 for the masks, and map channel 3 for the light map. Map channel 2 is going to have the masks so I can move the UVs around for where I want one brick texture to show up over another. In 3ds Max I'm making a composite material, moving the UVs around, and collapsing the unwrap so it all transfers to UDK.

    Without make the second map channel this is what I've put together
    80319259.jpg

    As you can tell it's completely unrealistic, but gives a good representation of what I'm trying to accomplish. If I vertex paint these textures they're not going to be revealed over one another evenly, which is where the masks come in. Since I can't simply tile the masks like I can the textures, cause I'd get a result like I'm seeing now, how else can I go about this?

    Here's what some vertex painting was able to accomplish
    97670913.jpg

    I was just messing with lerps, seeing what connecting one texture vs another would do. This all looks like a hot mess to be frank. So in as few words as I can come up with now, help please :(
  • dpadam450
    Offline / Send Message
    dpadam450 polycounter lvl 12
    I have no idea what I'm looking at in your latest post. The tiling in your first image from your first post is barely noticeable. If you apply some decals (by adding quads a tiny tiny bit above the brick surface) that have some dirt/mud/moss and the rest being alpha, in a few locations, you will get rid of your tiling problems.
  • Chase
    Offline / Send Message
    Chase polycounter lvl 9
    It's not the tiling I'm worried about. It's masking out parts of one brick texture to blend with another. I know I can take care of the tiling with decals and grunge masks. The first pic in my recent post just shows how I blended a mask with 2 textures. I just want to be able to define where that mask is on the model.
  • Chase
    Offline / Send Message
    Chase polycounter lvl 9
    Well I figured out my situation so if anyone runs into the same problem hopefully they find this helpful. I create my masks in photoshop, went into 3ds Max and made a composite layer but I'd think a multi sub obj might work? Don't quote me on that part which is why I'd stick with a composite layer. Then I copied the UVs from map channel 1 that were intended for the tiling bricks to map channel 2. I loaded 2 brick and 1 mask texture in the composite material. I set the mask texture to use map channel 2, which I then scaled the parts I wanted to show through in the white sections of the mask and just scaled the excess parts down and into the black parts of the mask. Here's what set up looks like.
    71847683.jpg

    In UDK just load the textures you use and consolidate into one material. I used the Lerp node to blend the 2 brick and mask textures to get this....
    55156958.jpg

    I'm still trying to figure out how to combine Lerp nodes together so I can maintain the mask, but also vertex paint with other textures. How might the shader set up look like? I tried plugging 2 Lerp combos into the A and B slots of another Lerp node to combine them, but vertex painting wasn't working.
Sign In or Register to comment.