Repainting in FS2004
by adlabs6 11/16/06
For those coming from the IL2 series, creating a new skin, or 'repaint', for FS2004 is not the straight forward process that many are used to. There are some extra steps required relating to file compression, mip maps, and alpha layers, but the effort is rewarded with opportunity for more detailed artistry. This article will focus on those steps and how the techniques can be used in creating a new livery. Before getting into the processes in detail, I'll take a moment to talk about the programs required for this article,
ImageTool and
DXTBmp.
Imagetool
Imagetool is a utility developed by Microsoft, and is included with the FS2004 Gmax gamepack which is avaliable
here. This gamepack is designed for developers using gmax to create addons for FS2004, and enabled the export of 3D models in compatible formats. However, once the gamepack is installed our interest will only be in Imagetool, which can be found at the following directory:
C:\Program Files\gmax\gamepacks\fs2004\tools
Loading up Imagetool reveals it's very sparse interface. Textures for FS2004 are simply loaded into the application, which will then display the file. Looking to the right hand side, the information reported will tell you the filename, filesize, image dimensions, the compression system (more on this later) and whether there is an alpha layer. The last two items are related to whether the texture has mip maps and how they are being displayed.
Most of the essential areas in Imagetool for a skin artist are in the menus. I'll mention some of these and what they do.
Image : Format - The list of image formats is shown here, and the checkmark indicates which format the currently loaded image is saved in. Selecting another from the list will make the conversion to this format, which then will need to be saved.
Image : Create Mip Maps - This command is useful when you want a texture to contain mip mapping. Clicking this item will automatically generate a set of mip maps from your loaded texture. Saving is required after creating.
View : Alpha Channel - When checked, this will show the alpha layer instead of the main texture from the file.
View : Zoom - The controls are here for zooming on the texture in the application.
DXTBmp
The DXTBmp application is developed by Martin Wright, and is avaliable for download
here. After lauching the application, you'll notice that there is a much more friendly interface. Looking at the program, the main window is showing the texture from the open file. To the upper right is a small preview window which shows the alpha layer from the file, if avaliable. Also on the right side are the mip map settings and at the bottom, a button which allows you to select your preferred image editing application (choose the program you create your skins in here).
Screenshot showing DXTBmp with labels.
Below each preview is a series of icons that automate some of the steps in the file editing process. I'll cover some of these buttons functions below.
First the folder with the upward arrow, which simply lets you load a texture into the program, or for the button beneath the alpha preview, load a bitmap as an alpha layer. The folder with the downward arrow brings up a save dialog for the current image, and for the alpha preview this button will save the alpha layer as a bitmap. Next is the small image with a downward arrow. This is a handy one-click tool to open the current texture in your chosen image editing application, which is selected as mentioned above. The same button beneath the alpha preview opens the alpha channel in your editing program.
It's very useful to note here that clicking these buttons will launch your image editor and load the texture or alpha with NO extra conversion steps! This is a very big time saver! Simply make your edits, and click SAVE on the file. The file will be saved in a temporary spot for now, but don't worry about where just yet...
Next button to the right is a small image with an upward arrow. Clicking this image will grab that temporary save from your image editor, and replace the existing texture or alpha (which ever you edited) with the new version. Very simple.
From here there are some buttons unique to the texture and alpha previews respectively, so lets look at those starting with the main texture window. Firstly there are two buttons, with horizontal and vertical arrows. These are used to flip the image or alpha (or both) in the horizontal or vertical plane. Right click these buttons for some extra options. Last is a magnifying glass, which previews the current texture in a new popup window. Right clicking this icon gives a selection of compressed formats which can be saved in, and when clicked the preview will show the results of this compression.
Moving the the alpha preview window now, after the 'refresh after edit' button is the 'create new alpha' button. Clicking this button will create a new alpha layer that is blank, replacing the existing alpha layer if there is one. This is a very useful way to remove an existing alpha layer if it's giving problems. Finally, the magnifying icon will popup a new preview window which shows how the alpha layer will create transparency in the texture. Transparency is shown in the preview as checkered squares.
From what's described here, it should be clear that DXTBmp is by far the easiesr of the two programs presented. Imagetool can be used in a pinch, but it requires significantly more manual operations to get to the same result. For the duration of this article I'll assume the reader is using DXTBmp.
About the compressed file formats
Also see this
article for information on color depth and conversion.
Just briefly I'll talk about a couple of the most common formats that textures are saved in for FS2004 aircraft. First is '32bit' mode, which is really an uncompressed 32bit BMP file, having 24bits in the main texture (8bits per channel) with an additional 8bit alpha layer. File sizes will be largest with this format, and will also take the longest to load in FS2004. The second common format is DXT3, which is a part of the S3TC group of algorithms. The DXT3 format saves files with a 'lossy' compression, meaning that during the compression some image data is lost resulting in slightly lower image quality. The format uses 4bits per color channel for the texture, and an additional 4bits for the alpha layer, resulting in a 16bit image. The primary advantage to using DXT3 is the savings of disk space and significantly faster loading due to the smaller file sizes.
Ultimately DXT3 is a very common format and provides good visual results overall combined with faster performance, whereas 32bit is best used only where the highest quality is needed.