User:Anonanon

= My Texmod Handbook = People have been asking me alot of questions regarding working with Texmod and Photoshop. I thought it'd be a good idea to document on these topics with solutions and comments.

Texture formats
Now this is asked often, what format should you be exporting and saving as? People are also getting confused what the formats are used for, and how they should be used. Something that grinds my gears is people saving as particular formats to be able to use bump maps.

Bump maps
Now assuming you're creating an interface for Guild Wars, bump maps is an automatic NO. There's absolutely no reason why you need to be incorporating bump maps into your interface files. Some of you may be misunderstanding the term, and taking it too literal. Just because you want your interface to have cool looking bevels and emboss, this does not mean you use 'bump' maps. This is not what it is used for in game development. Bump maps are used by modern game engines to give an illusion to a flat surface to make it look like it's texturized (bumped) with a sense of depth, by using light sources that are hitting on the surface. When it comes to game menus and interfaces in general, the 3D bevel look is simply just a drawn effect done in Photoshop with plain pixels. There are no extra specular maps that come into play, this is just a plain drawing of what seems to be an embossed graphic.

Alright, so what formats do I use?
You are given several output formats in Texmod:
 * BMP
 * JPG
 * TGA
 * PNG
 * DDS
 * etc.

Right away, we are familiar with bitmap and jpeg, right? Forget those, rule those out. According to what I already know (read: don't take my word), bitmaps only used in older game engines, such as GoldSource engine (Half-Life 1, Counter-Strike), bitmaps are no longer used in modern game engines. And then there's jpeg which is used for photographs, completely useless.

To avoid a wall of techno babble text, here's the quick low down:
 * DDS - What today's game engines use, after being decompiled from their own formats and into this DDS raw texture file. DDS is the only format out of the list that supports mip mapping, which is crucial to today's games. However, as amateurs, we don't need to have to deal with mip mapping. Not only that, but menus and interfaces never have mip mapping. You should output to DDS format when working in Logging Mode.
 * TGA - This is what you should be saving as in Photoshop. Save as Targa (*.tga), and choose 32 bit. Done.
 * PNG - Now a PNG is not recommended, however it works and it's functional. Glazed UI was done this way, until I discovered something through trial and error. See below for the full story.

My experience with the formats
Both TGA and PNG can do transparency, they both work in Guild Wars. Glazed UI was done using PNG format. However a couple weeks ago I started working on a new interface (aiming for a late July release date!) and I started getting some transparency glitches with my menu textures. White edges started appearing around my button graphics and such, no matter how accurate they were drawn in Photoshop, these anomalies wouldn't disappear. So I switched to TGA out of curiosity. It came to my surprise that TGA can render transparency perfectly. No glitches, no nothing. Now why didn't I choose to work with TGA in the first place? Read on...

Doing transparency
To achieve transparency, you need to go through different procedures with TGA and PNG. I initially used PNG because of how easy it was to make something transparent. With a TGA (which apparently wields perfect results), you need to do more work. It's worth it.

To get make a transparent background in PNG, you need to delete your Background layer in Photoshop, assuming you have another layer on top of it. Obviously you can't delete the Background Layer when it's the only layer that exists. You will know when a background is transparent when a white/gray checkerboard grid is shown.

To achieve transparency in a TGA, color your Background layer absolute black (RGB 0,0,0). Make sure you have a selection around your button, or whatever you want to be opaque, hop over to the Channels palette, and click on new layer. A new layer should be made, it should be completely black and should be called Alpha 1. With your selection still active, fill it in with white (RGB 255,255,255). The result should be a silhouette of your graphic in a layer called Alpha 1. Whatever is in black will be transparent, whatever is white will show up. Save as TGA 32 bit.

Rename your files
This is sort of important if you don't want your tear your hair out. Well, you'll be doing that anyways if you're redrawing about 200 textures. Maybe it's just me. A proper work flow is important to keep your textures organized, so when you come back to search for a specific texture, it's not a pain in the ass. As you may already know, Texmod outputs textures and their names are defaulted to their memory checksum code. Who's going to remember that the graphic for a button is called 0xE730F7C3.dds? Not me. Do yourself a favor and rename them accordingly in your Texmod.log definition file.

For example:
 * 0xE730F7C3|C:\Guild Wars\Out\0xE630F7C3.dds
 * should now be
 * 0xE730F7C3|C:\Guild Wars\Out\Button.tga (assuming you want to save in TGA)

Don't overwrite the original files
Let's say you're in Logging Mode and you outputted a button graphic as X.dds, when you finish redrawing the button in Photoshop, don't save it as the same file. Keep that original DDS as the original ArenaNET copy, and save your new custom one as X.tga. This is what I personally do, I keep the game's originals are .dds files, and my new redrawn ones as .tga. Make sure you open up your Texmod.log definition file and change '.dds' in all the lines to '.tga', to tell Texmod that you're using a different format.

Design a concept/prototype first
Do not go straight into editing your first .dds file and start drawing on it. You have no guarantee that your interface is going to look consistent and align properly with other texture files. When I have an idea for a new interface, I tend to create a prototype of my interface first in Photoshop, as a plain PSD file. So make a shape for your the in-game window, color it, do whatever you want to it. Then when you feel like you made it into how you expect it to look like in Guild Wars, splice title bar and window frame into their respective Texmod .dds files. This way, you'll be almost guaranteed that the title bar and frame graphics will fit together flawlessly with no hiccups, no awkward change in colors, etc.