Forum: Poser - OFFICIAL


Subject: Best way to morph "too-tight" clothes

DocMatter opened this issue on Jul 02, 2015 · 13 posts


Morkonan posted Fri, 03 July 2015 at 6:50 PM

Since I only have Poser and Photoshop, is there a way I can more easily line up the panties on the dress?  (Of course their UV maps don't line up, so I've been trial and error... lots of error!... so far.)

Well, yes... Sort of. :)

First, you need a good UV Seamguide/Map for your dress object. It's all going to be about how well that dress was UVMapped. If it's a crappy UV Map, it's going to be difficult to get "right", much less perfect.

Did the dress come with a "blank" UV Map? If not, download this program, UVMapper - http://www.uvmapper.com/ (The free version.) This is almost a necessity for any Poser user to have, so even if you don't use it with this project, you'll be glad you had it.

Next up, install the program and run it. Find the Dress model and load its .obj file into UVMapper. If it's all one, flat, UV, then that's great. But, if you see that it has multiple UVs assigned to different materials,

then it's a bit more complex... We'll start with an object with multiple maps,first, just in case:

1)Multiple materials with different maps

Here's an example of an object with multiple materials in it, each with its own UVMap. In UVMapper, they'll be stacked on top of each other like this:

http://i.imgur.com/8dgWoNP.jpg (This is Victoria 4)

I have chosen to Color by Materials under Edit->Color->by Material in order to show you all the different UVMaps a bit better. If your dress object has multiple UVMaps, one for each Material, which is common, then this is what you will see. To get a usable UVMap out of this, what you need to do is to select Materials in the Edit->Select->by Material section, scroll to a material that you DON'T think you'll be using (like "buttons" or "zipper" or something) in order to apply your displacement map, and then shrink those materials down until they're just a squiggly black smudge and their UVMap is out of the way, so you can see the material map you'll be working with. Like so:

http://i.imgur.com/NFnJcKI.jpg

See how I have squished all the uvmapped materials I didn't want to work with over to the lower right-hand corner? I've left three maps untouched - The Torso, Hips and Neck materials. It's these materials I'll be working with.

  1. Now that you have a relatively clean UV Map of the materials you'll be working with, you'll want to export it. It's important to note that Poser doesn't care at all what the resolution of your displacement or bump maps are, only their display ratio. Because you're making a displacement map that is going to have a lot of detail in it, I would advise it to be at LEAST somewhere on the order of 2000x2000 pixels. (IF you're dealing with a 1:1 texture image ratio.) Basically, do this: Take a loot at the texture map for the material zone you will be working with. Let's say it's "Dress_blue.jpg." OK, open that up in Photoshop and what are its measurements? Let's say it's 1000x2000 for some reason. OK, then you want to stay with that display ratio of 1:2, just to be sure everything lines up appropriately. (More typically, a texture map will be something like 2000x2000 or therabouts.)

Now, you're going to export your UVMap from UVMapper using the appropriate ratio, but with good resolution for the fine details you'll be adding. To do that, go to File-Save Texture Map and then input the size of the map according to the ratio of the object's texture map. You want good resolution, so don't be afraid to even double the size of the map you're exporting from UVMapper! It's only going to be a few shades of grey, so it will be fairly lightweight. Export the .bmp image file to someplace you can find it. Note: Be sure to NOT choose to "Save Model!" Don't overwrite your original model's UV maps! :)

  1. Next up, we have a choice of several things we can do. I prefer using a seamguide, when available, of course. But, you can make your own, in a pinch. Something that can really help you is called a "Texture Checker" pattern. These are normally used to check to see how a texture will deform due to the UVMap when applied to an object. If the UVMap isn't good, the texture will deform and those areas for improvement can be easily seen. But, we're going to use some special texture checkers that have numbered quadrants you can use to easily find reference points on your object.

a) Load up Poser and load your object into the scene. Go to the material room and apply one of these two texture-checker patterns to the difuse node of the material you'll be creating the displacement map for. (ie: The Dress or Skirt or main Cloth material of the dress) The patterns, in two different resolutions, depending upon your needs, are here. (Gleaned from this quick link: http://www.terathon.com/forums/viewtopic.php?f=13&t=548 )

https://i70.photobucket.com/albums/i113/Huidafa/UVTextureChecker2048.png (2048x2048)
https://i70.photobucket.com/albums/i113/Huidafa/UVTextureChecker4096.png (4096x4096)

Important Note: Remember that bit about "ratios?" Yes, the texture-checker image must be the same ratio as the difuse texture you'll be using. So, if you're using something like a Dress_blue.jpg image at 2000x2000 resolution ratio, your dispacement map will have to be that same ratio (1:1) and your texture check must also be that same ration, just to be sure you've got everything exactly lined up. But, while it all has to be the same ration, it doesn't have to be the same resolution. If the original maps are 1:1 ratio, then you can load these texture checkers as they are. If they're at a different ratio, you'll have to resize them accordingly in Photoshop or whatever image editing software you're using.

Delete all the other node materials other than the difuse node. Make sure it is at 1, white base color, and leave Gamma Correction as determined by render settings. You should see something like this in the Pose Scene window:

http://i.imgur.com/4oInX7I.jpg

Ah... You can see where I'm going with this, right? :) NOW, you have an exact coordinate system you can match up with your UVMap in order to create your custom displacement map for the panty-lines you want!

b) Conform the skirt/dress to your figure and conform the panties/whatever that you're creating the displacement map to simulate. Leave Poser open, for ease of reference, then open up Photoshop.

  1. With Photoshop Open, load up the UVMap you created with UVMapper. Next, load up the texture-checker image you've currently got applied to the dress/skirt/clothing. It's easier to overlay these images so you can get a good visual reference for where you're going to draw the displacement map. To do that, at least in my archaic CS2 version, choose one or the other and then go to Layer->Duplicate Layer->As Background in Destination Document->whichever one you don't have selected. (OR, alternatively, you can just create a new document and copy both layers, the UVMap and the Texture Checker, into it.)

(Note: Because both of these images are in uncompressed indexed color formats, you will have to change them both to something you can work with. I suggest using Image-> Mode -> RGB color for both. Now you can edit/muck with them in relative comfort.)

Now, create a new layer to work on. Reduce the Texture Checker Layer's Opacity to something managable, like 50% and maybe the Fill value at 50% as well, and put that layer above the UVMap. Put your new, blank, layer above that. So, at this point, you'll have something like this:

http://i.imgur.com/H3X0I0N.jpg

Now, you can truly start work!

  1. Look at your Poser Scene. Find the coordinates on the dress, shown by your properly applied Texture Checker, then translate those coordinates into Photoshop using the brush to move from coordinate to coordinate, painting the lines you want. Compare where the panties intersect the dress material in Poser's Scene window and then draw those lines in Photoshop, using the coordinates of the Texture Checker while also seeing your UVMap, below, for even better references, ESPECIALLY, in how the UVMap might deform and bend away from a good, flat, UVMap. Adjust your drawn lines accordingly so that they follow the map properly. (Alternatively, as you're working you can load up that blank UVMap you created in UVMapper directly to your dress object in order to answer, for yourself, any questions about where the seams are that you need to follow. You can also combine both maps in Photoshop and then apply them to the dress object in Poser for even better visualizations. It's up to you, but if you got this far, I'm sure you can figure it out! :) )

I'm using some old stuff, so I don't have my in-progress files, since I was just doing this for funsies, to see if I could. But, here's my final result for a displacement texture:

http://i.imgur.com/1yHbxWk.jpg

The texture you come up with can be combined with a blend node with the dress's current displacement texture, if you wanted. That way, you can keep some of the fabric texture displacement. Or, even better, you can use this new displacement texture and overlay it with the dress's displacement/bump texture and then lower the contrast for that original displacement/bump texture in the region where you have your new displacement map texture. Save as a new image and apply that one.

  1. Here's my final result. I stopped work on it since I proved to myself it could be done reasonably well. (I did it around a year+ ago or so, I think.) At proper displacement, the goal was for a very subtle effect and, eventually, it was to be combined with another displacement map that contained the fabric texture. Then, I'd use a mask to remove that fabric texture displacement from the region that the panty-lines occupied and replace it with the panty-lines displacement map, blend it in Poser and plug it in.

http://i.imgur.com/PPTZPP4.jpg

I turned the bump/displacement up a great deal, so you could see the obvious effect. With this sort of displacement, it's critical to get a realistic shape to the "pantylines" or whatever else you're simulating. That means that areas where they wouldn't press up against and distort the cloth don't get any effects and you should gradually reduce the effect of the stresses on the fabric with your displacement map, fading that out gradually.

Remember - The higher the resolution of your displacement map, the more detail the final product will show. There is no dependency on mesh density, here, just texture resolution. But, if you're worried about memory overhead, which shouldn't be much of an issue with a B&W displacement map, compared to color texture maps, then plan your maps according to the resolutions at which you expect them to be rendered.

Good luck!

PS - I'd have composed a nice and neat post with embedded images, but I hate Renderosity's forum software and I am not going to muck about with it anymore than I have to. :) This post was proudly composed in Notepad!