Upside down texture problem

I am perplexed. I am learning how to make shirts in ZBrush and then import them in to DAZ. It took me forever to figure out that I need to Flip V all of my textures, Normal & Displacement maps so that they match up with the shirt’s Uvs made in ZBrush. I can now export from ZBrush a test texture, open it in an art program, and then add a big F to the shirt’s front.

I then bring the shirt into DAZ using either import or GoZ and then add that test texture. Everything aligns perfectly - the shirt's texture fits like a glove and the F is on the shirt’s front. Hurray I figured it out.

Everything seemed well until I added a shader which had a bunch of dogs. They were upside down. I even imported an image (from Filter Forge) of a bird. It too was upside down.

So as long as the shader is just a color or pattern which can be viewed just fine upside down, I am OK. But not something with a picture.

What am I missing?

Examples.jpg
827 x 479 - 128K

Comments

  • crosswindcrosswind Posts: 6,914

    It depends on the orientation of UV island in terms of material zones, so better show the UV Layout of the shirt....

    But you can always flip it in DS for such a case... go to Surfaces pane and select the corresponding surface, set the value in Vertical Tiles to negative.

  • Jay VersluisJay Versluis Posts: 252

    It's a ZBrush oddity, before export you need to flip the textures. There's a preference setting in ZBrush to make this happen automatically. Or use Crosswind's fix, that works too.

  • LD1LD1 Posts: 135

    Crosswind and WP Guru - thank you for helping.

    Crosswind - your idea to set the Vertical Tiles to a negative number did work - thanks! But since you asked to see my UV layout, I put together the step by step process I used to get the textures from ZBrush to work. Each image has an explanation (I hope it isn't too confusing). I would like to get it correct right from the beginning in ZBrush (so I don't have to set the tiles to a negative number in DAZ). So if you have any other ideas, I am all ears.

    WP Guru: you will see from the step by step process that I took, I did try flipping the Texture. But that wasn’t enough for the shaders in DAZ. BTW: Jay, I just realized that you are the one who does all of those DAZ In the Studio videos, etc. Thank you for taking the time from your busy schedule to reply.

    Thanks again to the both of you.

    Step by step.jpeg
    1274 x 771 - 319K
  • felisfelis Posts: 4,305

    Which texture set is the hounds from?

    Try to apply a UV test texture to your shirt, and let us see how that look.

    UV test texture such as:

  • LD1LD1 Posts: 135

    Felis, thanks for trying to help too.

    I did what you asked. You can see that the G and F are upside down

    Crosswind: It dawned on me that my thanking Jay for taking time out of his busy schedule to help and not thanking you for the same thing wasn’t nice. So thanks for your time (you too Felis).

    test.jpg
    295 x 248 - 17K
  • LD1LD1 Posts: 135

    Felis, I missed your first question. The hounds (puppies) were from the texture set with the correct “F” which ZBrush created (bottom right corner of my step by step examples).

  • felisfelis Posts: 4,305
    edited March 29

    You can see on the image with UV texture that your UV map are upside down. And that is why your hounds are upside down.

    So I have a hard time believing that your UV layout are as 2).

    Try in DS to select all surfaces of the shirt, and switch your viewport to UV layout. Then you can see how DS sees the UV map.

    Post edited by felis on
  • LD1LD1 Posts: 135

    Felis: 

    Since you were wondering about my layout - I went ahead and re-did everything:

    I flattened the Uvs in ZBrush and took a screenshot - looks like the #2

    I unflattened and exported an OBJ>

    I went to the Texture palette, pressed "New from UV check". The I pressed: clone Texture

    I went to the Texture menu, made sure the new texture was selected and then pressed: Flip V. Afterwrd I exported the texture.

    I brought the texture into an art program and added a big F to it to be sure it is oriented correctly in DAZ.

    DAZ: I deleted the previous shirt OBJ from the scene and then imported the new OBJ and the texture that ZBrush made. The F was on the front and readable.

    I then imported your test image - it was upside down.

    Finally I took a screenshot of the Uvs in DAZ. Yes, it was upside down. It is my understanding that DAZ Flips Uvs imported from ZBrush. That's why textures from ZBrush must be flipped.

    Before you ask: If you go back to my step by step, I first tried flipping the actual Uvs in the UV map palette and then NOT flip the textures - it didn’t work (5). When I then flipped the textures - the F showed up, but it was backward in DAZ (6). So I am stumped

    Final test.jpg
    1085 x 466 - 143K
  • LD1LD1 Posts: 135

    A thought just came to me - I have purchased many items from DAZ where it said it was modeled in ZBrush. Not once did I have to flip the tiles to get  its textures to show correctly. So I have to be missing something here.

  • felisfelis Posts: 4,305

    I don't have ZBrush. I am just surprised why the UV layout is upside down when imported to DS.

    In my view I would target to get the UV right, else you might have issues every time you use a shader, if it has any kind of orientation.

    Your texture with an F should anyway be able to correct in an image editing program so it matches.

    Of course, you can tile shaders with negativ values, if that is your preference. 

  • LD1LD1 Posts: 135

    I guess you’re right, if nothing else I can always change the tiles to a negative number. I sure wish I knew how the other ZBrush artist do it without me having to change their tiles to a negative number. Hopefully one of them can clue me in to what I am doing wrong. 

    Thanks for trying to help. 

     

     

  • crosswindcrosswind Posts: 6,914
    edited March 29

    Well, I simulated the case you have then show you an alternative way first.

    1) In DS, you GoZ with the shirt first. In ZB, Flattern it, you'll get Ss1. Then Rotate it, you'll get Ss2.

    2) Export it to OBJ file. In DS, follow Ss3 to Load a UV Set with the OBJ file, name it as "Flip UV".

    3) Go to Surface pane, set UV Set to "Flip UV". You'll get Ss4 which is a "right shader result". Then you can export and re-import this shirt with correct UV for rigging... etc.

    Now similarly, in this way, work on a Clone in your original ZB project, rotate the UV before export to mesh OBJ, recreate a Wearable in DS, see if works or not.  I never use ZB to make clothing and texture but using MD / Pt / Blender instead... so never have to do the above. Then I either paint on the mesh of the clothing or make texutures based on UV layout.

    Finally I show you a product from a Daz PA who mainly uses ZB / Maya, etc. You can see the same inverted shader issue on the back of the dress in Ss5... The way of fixing it is just to rotate that UV island... but for a User, there's no way to set a nagative tiling value since there's only a single Body surface....unless the user separate the polygons to create a surface for Back.

    So such the issue you have also happens to some Daz products...

    SNAG-2024-3-30-0017.png
    2560 x 1400 - 1M
    SNAG-2024-3-30-0018.png
    2560 x 1400 - 1M
    SNAG-2024-3-30-0022.png
    2560 x 1400 - 862K
    SNAG-2024-3-30-0024.png
    2560 x 1400 - 1M
    SNAG-2024-3-30-0026.png
    2560 x 1400 - 1M
    Post edited by crosswind on
  • LD1LD1 Posts: 135

    They both worked! I think a modified version of the cloning one is the simplest. I say modified since after getting the clone steps to work, I tried not cloning and just rotate the original Uvs. That worked too! So no need to clone. I guess it never dawned on me to just rotate the Uvs because everything I was reading was saying that you need to flip the textures to get it to work in DAZ. Oh well, at least I have the solution now.

    FYI: There is one peculiarity with both the rotating version and the “Load UV set” version. Though the shaders show properly, an imported image is back to being upside down. But if I rotate the image in an art program and then load it in DAZ - it will appear right side up. 

    I will have to investigate why my ZBrush exported textures and textures from other sources don’t work properly now. I will probably use Substance Painter for creating textures so getting the ZBrush textures to work isn’t as high a priority as making the Substance Painter ones work. But that is a research project for another day since my brain is fried now. It may come down to: If I am going to use textures from ZBrush or Substance Painter, I save the Uvs one way. If I am going to use shaders, save the Uvs another way. Not a great plan, but it might work in a pinch.

    Final thoughts: I have no idea why there is a difference between the shaders and the imported images. But I can live with Crosswind’s work around for the shaders (if there is no quick fix for the images). Besides, I think I will be using shaders 90% of the time. So this shouldn’t be a problem too often.

    Thank you very much Crosswind. You have been a great help. Now I can proceed with my shirt construction endeavors.

  • LD1LD1 Posts: 135

    Grrrrr! An instant after uploading my last reply, I started wondering about something: Yes the shaders show right side up, but what about left to right? So I loaded a shader that had a bunch of sail boats which were pointing to the right. Sure enough they are now pointing to the left!  Well I guess that unless there is writing in the shader, it won’t be noticeable. But it is another thing to try and fix.

    I am now wondering if all this is worth the hassle? I guess I will have to investigate this at a later time. Oh well. At lease 99.9% of my shaders will be usable as-is.

    Signing off with my head held low.

  • felisfelis Posts: 4,305

    The reason why left-right is swapped, is that you have flipped the UV instead of rotate it.

    But I would try to figure out how you can export an UV from ZBrush with correct orientation, else you could use another modeller to correct the UV.

     

Sign In or Register to comment.