PDA

View Full Version : Help with pixelated exports!


Larkas
4th Nov 2008, 05:08 AM
Hello there, guys. I was trying to make a simple recolor for personal use (i.e.: hue/saturation, nothing worth of notice), but I bumped into a problem. I wanted to recolor a dress made by Maxis and packed with the original game, but every time I export the textures to work on them, they look terribly pixelated. Below are the screenshots showing what I mean (the tights area of the dress is the most critical one). Please note that I didn't edit the texture in any way: I just exported and re-imported it to show you guys what I'm talking about. Also, please note that I also edited all the Graphic Rules.sgr files as recommended elsewhere, and that I'm using Windows XP, so that's pretty much all I have to do. Do you guys know if there's anyway to make Body Shop export the textures in full resolution or, if that's not possible, if there's any other tool to do so?

CatOfEvilGenius
4th Nov 2008, 06:41 AM
BodyShop will do that. Two things you can do, one easy, one not quite so easy, but not too hard either.

not quite so easy
You can get the texture out with SimPE if you want to. Just open the recolor package file, it's in your Sims2/Projects directory, with SimPE. Look at the GZPS resource. It will tell you the name of the mesh. Do a NameMap search for that mesh name. In the big list of stuff found, find the "lifo" resources. Get the lifo-0 ones and export them as *.png files. Those are the high res textures. (If you need help with any of that, ask here, I'll show you how.)

easy
When you create your own recolor, to make the leg shadow not stripey, do this:

Create a black and white gradient (smooth change from black to white).
Make the white transparent. GIMP has a gradient tool to do this, PhotoShop probably has one too, but I don't use PS so don't know about that. That's your leg shadow.

Then add a tiny bit of noise to it. Do that with both the texture and the alpha. Don't add so much noise that it looks noisy in game, just add enough that BodyShop can't compress that area and make it look stripey.

Larkas
4th Nov 2008, 01:01 PM
Thanks a bunch, Cat! I tried going for the not-quite-so-easy method, but I had to make a little adaptation to it. The mesh name separated the first part of the name from the second with a "_", but I couldn't find any lifo resource with that name. Browsing the mesh table though I could find a texture name, where the first part of the name is separated from the second with a "-". I searched for that and found the right resources :)

I just have a few more questions:

1 - Is there anyway I can split the png into two images? Let me explain this better: the png is apparently the skin with the alpha channel already applied to it, so it turns into a transparent png, as it will be used by the game. But Body Shop needs two separated images, one with the solid drawing of the clothing and another with a black and white pattern showing where it should be transparent and where it shouldn't.

2 - Does the body shop support png images or do I have to convert to bmp? I tested and it didn't work, but it may have something to do with the above issue.

Well, that's it, and thanks again! And I will try out the second method in mind when I want to make some greater changes to the skin! It will really help me out, since I'm more used to "flat" alpha, as in B&W with no grays in it :)

EDIT: I found a way to export the alpha channel using SimPE, but no luck in getting the solid image...

EDIT 2: I messed around a little with SimPE and found out that I could also import textures to a package. Therefore I tried importing the edited skin directly to a finished package made by the Body Shop, messing around with the format settings and testing. In the end, I noticed that if you import the texture using Raw32Bit format, you will not notice any loss of quality in the finished product! What's better, you can import a .png with transparency, as given by SimPE when you export something, or a solid .bmp, as long as you import another image as an Alpha channel in sequence. Scrap Body Shop for hi-res editing, it's only good for making the packages themselves, since you're better off importing the textures manually after you finished using it.

But I'm still curious, is there any way to export solid textures using SimPE so you can work the whole stuff and then add an alpha channel?

CatOfEvilGenius
5th Nov 2008, 11:11 PM
BodyShop

BodyShop does require bitmaps (BMP) and they *must* be 24 bit bitmaps, not any other kind.

As you said, you can get the alpha channel from SimPE. You can also use GIMP, right click the image layer, select Add Layer Mask, Transfer Layer Alpha, then copy and paste the layer mask.

It's easy to convert a PNG to a BMP. Any graphics program should be able to save a PNG as a 24 bit BMP for you. Windows Paint can do it, so can GIMP.

SimPE

The SimPE program does *not* require the alpha channel to be separated out. You can change the texture using SimPE and its BuildDXT function. Make sure you download the NVidia legacy DDS utilities first, or BuildDXT will be grayed out. Then just right click the texture image in Plugin View, select BuildDXT. Then in the dialog, click Open, select your image. Then select the format you want. For clothing, usually DXT3 will suffice. Then set the Sharpen option "smoothen" or to "none", the 2nd will be sharper. Then click Build. This is explained with pictures in the Object Recoloring Tutorials in the Create Tutorials section at MTS2.

If you use BuildDXT, remember to shrink your files afterwards. Use jfade's Compressorizer (http://www.djssims.com/index.php?category=1&subcat=5) for this. It comes with instructions. In fact, just always use it on all your files, even ones made with BodyShop. Saving disk space is a good thing. :)

Larkas
6th Nov 2008, 04:54 AM
Wow, thanks a lot for all the info, Cat! I'll check this BuildDXT tool asap, and I'll surely add Compressorizer to my arsenal!