Tiling a texture across a figure

mtl1mtl1 Posts: 1,508

I'm currently attempting to tile a seamless texture across a figure -- say, G2F or G3F -- to no avail as I keep running into issues with the seams cutting off textures and not lining up properly. As well, the UV tiling across each surface is different -- which is expected as different surfaces have different UV spacings. I can hide the seams somewhat by increasing the tiling number to 10 or so, but that seems like a poor solution.

Has anyone found a set of UV tiling and offset numbers that worked? Or is this a fruitless experiment?

Comments

  • Oso3DOso3D Posts: 15,085

    You could use an Iray Decal, which allows you to do a projection map.

    The problem there is that the decal does not discriminate between material zones, which means the texture applies to EVERYTHING, eyelashes and eyes and teeth included.

    Another approach is to use a procedural tiler, like in my sig.

    Both solutions are Iray only, but there are other procedural things for 3DL, I believe.

     

  • fixmypcmikefixmypcmike Posts: 19,686

    For Genesis 1, http://www.daz3d.com/sculptural-genesis-ultra-fun-kit contains a tile-friendly UV set.

  • 3anson3anson Posts: 314

    not gonna happen. because of each UV islands unique shape, tiling a skin texture without doing a lot of work in photoshop/blacksmith  etc will not give acceptable results.  at the very least you would need to work on the seams to get each UV islanded blended nicely into the adjoining one. plus, having resolution differences between each 'UDIM' tile is likely to give issues with texture stretching and compression.

  • mtl1mtl1 Posts: 1,508
    edited September 2016

    For Genesis 1, http://www.daz3d.com/sculptural-genesis-ultra-fun-kit contains a tile-friendly UV set.

    I'll experiment with this! Thanks :) I'll probably couple this with the Map Transfer to see if it'll work on G2F...

     

    You could use an Iray Decal, which allows you to do a projection map.

    The problem there is that the decal does not discriminate between material zones, which means the texture applies to EVERYTHING, eyelashes and eyes and teeth included.

    Another approach is to use a procedural tiler, like in my sig.

    Both solutions are Iray only, but there are other procedural things for 3DL, I believe.

     

    Well, my main issue is that I need it to project across both the front and back of a body, and I haven't gotten any of my Iray decals to do that, unfortunately. :(

     

     

    3anson said:

    not gonna happen. because of each UV islands unique shape, tiling a skin texture without doing a lot of work in photoshop/blacksmith  etc will not give acceptable results.  at the very least you would need to work on the seams to get each UV islanded blended nicely into the adjoining one. plus, having resolution differences between each 'UDIM' tile is likely to give issues with texture stretching and compression.

    I definitely noticed the texture stretching across the torso and face... I was hoping that I could've hacked through it with UV tiling/offset settings, but I suppose not :( Not that I mind using photoshop or a painting program to work on the texture; just that it would've been easier to do it from inside DAZ Studio itself.

     

     

    edit: Hmmm... On second thought. Why don't I just create a new projection on blender and use that? O_O Why am I making life hard for myself?

    Post edited by mtl1 on
  • Oso3DOso3D Posts: 15,085

    Iray Decal has an option under Parameters > Decal for 'Front, Back, Front & Back'

     

  • mtl1mtl1 Posts: 1,508

    Iray Decal has an option under Parameters > Decal for 'Front, Back, Front & Back'

     

    Hmm, maybe I'll give this another shot. I've tried Front & Back but it doesn't seem to like projecting onto the backside for some reason.

  • Oso3DOso3D Posts: 15,085
    Check scale, too; most human figures need scale at 300-400% to be fully covered.
  • mtl1mtl1 Posts: 1,508

    So I created a custom UV for G2F using a front-back planar projection... However, I'm running into a small UV issue: the vertices packed along the projection edge so tightly that it causes considerable stretching. Any way to fix this? The tiling is quite nice... just that the seams need work.

    Also, I tried the Iray Decal again and I did manage to get it to cover the back side -- not sure why my previous experiment for another project didn't work in that case. Anyhow, it actually has the *same* issues as me creating a planar projection in that the "edges" of the projection end up stretched.

    tiling.png
    480 x 480 - 210K
  • Oso3DOso3D Posts: 15,085

    That's just going to happen with planar projection. Projection methods are like, well, setting up a slide projector and aiming it from far away at your figure. Planar projects at the front and back, and if you imagine someone loads a slide in... well, there you go.

    Cubic projects from each side, which often helps. So does spherical or cylindrical, when the general shape is roughly like it.

    But, really, there is no simple automated system for creating a UV map that is going to avoid all seam problems; that's why people who can create good skin textures are so prized. Heh.

    (It's also one reason I made procedurally-based stuff, which avoids this problem in most cases)

     

  • mtl1mtl1 Posts: 1,508

    That's just going to happen with planar projection. Projection methods are like, well, setting up a slide projector and aiming it from far away at your figure. Planar projects at the front and back, and if you imagine someone loads a slide in... well, there you go.

    Cubic projects from each side, which often helps. So does spherical or cylindrical, when the general shape is roughly like it.

    But, really, there is no simple automated system for creating a UV map that is going to avoid all seam problems; that's why people who can create good skin textures are so prized. Heh.

    (It's also one reason I made procedurally-based stuff, which avoids this problem in most cases)

     

    Yeah, that's true. I did have "good" results with cylindrical projections -- at least the stretching on it didn't collide with a seam! 

    I've been working on my own seams too -- with some pretty good results too. I just need to figure out how to do material groups in Blender, but that's more of an interface issue :)

  • 3anson3anson Posts: 314

    using 'projection' views to UV an organic obj is basically wasting your time. UV'd that way, even procedural materials can look really bad.

    as for G3F, she was UV'd the way she was to MINIMISE any texture stretching/compression issues. an organic obj needs proper seams cut, and a good deal of relaxing/flattening of the islands after 'cutting'

  • Wish there was a cheap app or something that can create seamless textures from a seamless tile.

  • Oso3DOso3D Posts: 15,085

    Well, the projection method can be seamless, but you want distortion-free.

    And there's really only two ways to do that -- paint it, or procedurally generate it from the surface.

    Carrara, I think, has some great power in this regard because it has rather sophisticated procedural texturing methods (but I haven't played with Carrara textures and may be giving it too much credit)

     

  • mtl1mtl1 Posts: 1,508
    3anson said:

    using 'projection' views to UV an organic obj is basically wasting your time. UV'd that way, even procedural materials can look really bad.

    as for G3F, she was UV'd the way she was to MINIMISE any texture stretching/compression issues. an organic obj needs proper seams cut, and a good deal of relaxing/flattening of the islands after 'cutting'

    Yes, fully agreed. I was actually shocked at how even simple seams improved the stretching. All I did was take convenient edges and used edge loops.

  • Oso3DOso3D Posts: 15,085

    One of my distant hopes is for some sort of funky 'vector' UV skin technology where, say, you have a list of freckles and skin blemishes that are pinned to various points on the mesh, and stay there as it flexes/poses/etc. And then underneath some sort of procedural base skin, maybe with various 'regions' outlined where it grades from one base to another skin (like darker around the eyes, etc)

    Or something.

     

  • How about each polygon gets its own uv section

  • How about each polygon gets its own uv section

    Atlas Mapping, as that is called, produces lots of seams.

  • djigneodjigneo Posts: 283

    Wish there was a cheap app or something that can create seamless textures from a seamless tile.

    GIMP (which is free) has features to do that, but I haven't screwed with them a lot.

     

    Generally, the way I'd approach the problem in the OP would be to create a Geometry shell for the Genesis figure and configure it to use a single material group (instead of matching Genesis' material groups), then tile that single surface so I could avoid the "seam" problem. No idea if that approach has the same sort of "stretching" problem, but you'd think it'd give a fairly reasonable UV base that could be tweaked if you know how to do that sort of thing. Another advantage with this approach is that you don't "overwrite" the figure's material groups in case you have a need to swap back and forth.

  • Oso3DOso3D Posts: 15,085

    Djigneo: That wouldn't help. How the material zones are laid out has no big impact on UV mapping, other than some areas are mapped differently than others. I mean, the only reason you don't have a seam visible on an arm is that the texture has been painted carefully so that one edge of the map meshes with the other edge. If you just tiled something onto an arm, you'd see seams, even though it's all one material zone.

     

  • djigneodjigneo Posts: 283
    edited September 2016

    Yeah, seams are off as you said. Here's the experiment I did.

    1. Load Genesis 2 or whatever you want.
    2. Tool Settings pane > set Active Tool to 'Geometry editor'
    3. Right click 'Surfaces' node in Geometry editor, select 'Create Surfaces...' Name it something, I chose 'All'.
    4. Right click in Viewport > Geometry Selection > Select all
    5. Right click in Viewport > Geometry Assignment > Assign to Surface > select surface created in step #3
    6. Surfaces pane > Editor > Genesis 2 > Surfaces > All (or whatever you named the surface) > Select a texture, set tiling

     

    tiling example.png
    988 x 801 - 430K
    tiling example2.png
    988 x 801 - 431K
    Post edited by djigneo on
  • mtl1mtl1 Posts: 1,508
    djigneo said:

    Yeah, seams are off as you said. Here's the experiment I did.

    1. Load Genesis 2 or whatever you want.
    2. Tool Settings pane > set Active Tool to 'Geometry editor'
    3. Right click 'Surfaces' node in Geometry editor, select 'Create Surfaces...' Name it something, I chose 'All'.
    4. Right click in Viewport > Geometry Selection > Select all
    5. Right click in Viewport > Geometry Assignment > Assign to Surface > select surface created in step #3
    6. Surfaces pane > Editor > Genesis 2 > Surfaces > All (or whatever you named the surface) > Select a texture, set tiling

     

    That actually had better results than I expected, haha.

    Truth be told though, even http://daz3d.com/sculptural-genesis-ultra-fun-kit as suggested earlier isn't perfect either; there are islands on certain parts, and you can see the projection mapping on the sides of the head. It manages to avoid that on the arms, which I suspect is a custom seam.

Sign In or Register to comment.