Welcome to Mutley's Hangar Forums
|Welcome to Mutley's Hangar Forums, like most online communities you must register to post in our forums or to take advantage of our download centre, but don't worry, this is a simple and free process that requires minimal information for you to sign up. Be a part of Mutley's Hangar Forums by signing in or creating an account, you can even sign in using your Twitter, Facebook or OpenID account!
Aircraft Texture Files - February, 2010
Posted 03 February 2010 - 04:35 PM
By John Allard
The last several John’s Corner articles have covered real-world aviation topics. While readers of these pages certainly do have a healthy level of interest in that side of things, this is, after all, a Flight Sim publication. It seemed this month that I ought to get back to the grass roots and address a flight sim topic. I had a suggestion from our esteemed editor Dave Clark for a topic that seemed to fit, but alas, it’s a subject about which I lack even the most rudimentary foundations – formation flying. I know the Blue Angels and the Thunderbirds do it and make it look easy. I know that it’s not nearly as easy as they make it look. That’s pretty much the limit of my understanding of the issue. Not wishing to drench our loyal readers with buckets of propwash without substance or supporting knowledge, I cast about for another topic instead.
It’s occurred to me that I’ve acquired a couple of related pieces of software lately, one freeware and one payware, and started down the road into an aspect of FS that I have studiously avoided for a long time – repainting aircraft. Let me begin with a clear disclaimer. I am not an accomplished re-painter – I’m a rank beginner. I have little experience, but have set out to learn something about it and have gathered at least some of the tools and a little of the understanding necessary for venturing into what I’ve always thought of as a quicksand bog.
From my new and lofty perch, somewhere about five percent up the repainting learning-curve, I’ve had an “Aha” moment. Something has become apparent to me that was not obvious before. I may have had a vague idea of it, and it may even have been that very shallow understanding of it that gave me pause for so long and kept me from venturing into repaints. It is much more clear to me now that there are two distinct sides to repainting aircraft in FS; two bodies of knowledge are required to venture very far into it. Having come to that realization, I no longer see repainting as a quicksand bog; it’s still bottomless for those who wish to immerse themselves deeply into it, but there are some shallow areas where the waders and dog-paddlers amongst us, me included, can splash about with some success.
The twin peaks of re-painting that must be scaled to be even modestly successful with it seem to me to be the artistic part, i.e. the actual repainting, but also file handling. After some brief comments on the first, it’s the latter I’ll concentrate on in this article.
Forgetting for a moment the file technicalities of repaints which will be the crux of this article, let me quickly address the artistic side. The meat and potatoes of repaints in FS are really a matter of editing electronic images with one or more graphics programs. Those are used to make changes to the texture files of an FS airplane. The texture files are those flat blobs in which the 3D model of the craft is wrapped. Repainters use graphics editors to make those images look as they wish them to look, or at least as close as they can manage.
There is a whole range of freeware and payware editors available for editing graphics files, from the low-end MS Paint that is part of Windows up through Adobe Photoshop, an extremely powerful, payware graphics editing program that sells for several hundred dollars. Using these requires the development of a kind of left brain/right brain mix of skills and is very much like any other computer graphics endeavor. Some level of artistic talent, a good eye for colors for instance, is certainly an advantage, as is being able to visualize the 2D applied to a 3D shape, understanding how shadows and lighting work, etc. However it’s not all just about that. Effectively and efficiently using a graphics editor program is very much a technical task too. Often there are a number of ways to achieve what is desired with the editor; some are mind-numbingly tedious while others may be elegantly ingenious and mercifully quick. The geekly types often excel at using the various tools of the editors to best effect. That’s all I wish to say at this point about the actual painting. It’s a high, wide and deep subject and perhaps, once I’ve gotten more experience, may even be a future column topic. For now, however, ‘nuff said about the painting part of repainting.
Ah, but the files… It was those, I think, that held me at bay for so long from venturing into repainting aircraft. It’s an arcane, technical topic that I’ll try to unravel a little for you. It’s not my intent to make a byte-head of you – just to give you enough to understand what’s involved in the file-handling side of FS aircraft repaints, and some concept of the tools required for making it happen. There is still much of it that I don’t understand yet either, but hopefully by the end, that particular mountain will not seem quite so high and steep to you.
To understand repainting FS aircraft, it is necessary to have some understanding of the files involved, not necessarily in detail, but at least in concept. The visual representation of an aircraft exterior in FS consists of two main parts, the model and the textures. I’m neglecting some important things here that go to make up an FS aircraft, mainly the flight model (not the same thing as the model) and the panel. Those are vital elements of a complete FS aircraft, but they don’t much affect nor are they much affected by, repainting. We’ll forget them for this article.
In an FS aircraft, the model is simply the three dimensional shape of the aircraft. As developed by the designer, it’s a CAD-like representation of the airplane, often viewed and manipulated as a wire-frame object. If you’ve ever done any 3D CAD work, or seen it done, you’ll have some idea of this. Fortunately, repainting does not require working directly with the model, but it’s the mannequin on which the aircraft’s clothes are draped.
The other piece that affects the visible aircraft – the most important for the FS repainter – is the texture files. These are flat, two dimensional fragments of electronic “fabric” that, when the AC is loaded and seen in FS, are electronically wrapped around that wire-frame model. The model itself is without substance, having only an invisible shape until the textures are applied to it. It is this digital magic that makes it feasible to have a number of variants of an aircraft available in FS. The Cessna 172, for instance is available in several paint schemes. They’re all the same aircraft, except each has its own set of texture files, which FS applies to the common 3D C-172 model.
Texture files are bitmaps. Bear with me here. A bit is the most basic unit of information a computer works with – a binary digit, that is a 1 or a 0. A bitmap is a collection of bits in a particular, prescribed format which contains the information necessary to display an image. It’s a picture that is coded as a very specific series of 1s and 0s. That collection of bits is created and saved to the computer’s non-volatile storage as a named file, a bitmap, typically with the letters “bmp” as the file extension.
The images that are represented by bitmaps can be thought of as consisting of a rectangular block of pixels, or “picture elements”. A pixel is the smallest piece into which the image may be broken down. A pixel is a monochromatic (single color) piece of the image that is contained in the bitmap. Bitmap images are not unlike a tile mosaic, where the artist creates a picture, sometimes a very complex one, from a collection of small colored pieces laid out in a pattern that forms the desired image. That’s what a bitmap accomplishes. A texture file is a rectangular mosaic of pixels; a pixel is single piece of tile in the mosaic; a bitmap is the set of instructions defining the attributes and arrangement of each of the tiles to create the mosaic. The pattern of bits in the bitmap defines the position and color (and sometimes some other attributes) of each individual pixel.
As an aside, there are many other image file formats besides bitmaps. Most of those formats use complex tricks for keeping the file size smaller than might otherwise be needed. For instance, a contiguous block of pixels, all in the same color, may be coded as a separate, more compact entity within the file, saving space over what would be needed if each pixel were to be rigorously and individually coded. Some do not even render files as pixels at all, but rather as elements called vectors. In any case, bitmaps don’t use such tricks – each pixel in the bitmap is painstakingly “mapped”, in order, in exactly the same way.
A typical Flight Sim AC texture file bitmap defines a block of 1024 X 1024 pixels. Some high-end payware is now using 2048 X 2048 texture files. Note that a 2048 X 2048 pixel image is not twice as large as the 1024 X 1024 variety, it is four times larger. Some other bitmaps for specific parts of an AC, e.g. the propeller disk, may be considerably smaller. A complete FS aircraft image may be made of as few as two or three bitmaps or may require dozens to render it.
Colors in computer graphics are typically represented by three values, one each for the strength of red, green and blue present in that particular color. To define the color of a pixel, it is necessary to know the strength or value of each of the three colors. Those values, for each pixel, are the primary information that is contained in a bitmap. You can think of a bitmap as a stream of numbers representing the three values for each pixel, red – green – blue, in order, comprising as many sets of numbers strung together as there are pixels in the bitmapped image. Of course the numbers must be represented as bits, i.e. 1s and 0s, so the values are binary numbers made up of 1s and 0s, not the base-10 numbers that we normally think of and work with.
The next level of complexity arises from how many discrete values of red or green or blue are allowed by a particular bitmap format. The more values allowed for red, for instance, the more bits must be allocated to represent those values for each pixel; ditto for the other two basic colors. Different bit mapping schemes exist, using different numbers of bits for each color value. This gives rise to a level of complexity that some low end graphics editors are not equipped to handle.
Let’s take an example. If red is permitted to have 256 discrete values (0 to 255), then eight bits must be reserved to represent that range of values. In a bitmap that follows that scheme, assume that the first eight bits (1 to 8) are the red value of the first pixel of the file, the next eight bits (9 to 16) are for the green value of that pixel and the third set of eight bits (17 to 24) are for the blue attribute of that same first pixel. The next bit, the 25th, could logically be expected to be the first of the eight bits that define the red value of the second pixel. Incidentally, that’s a pretty common bitmap recipe, a so-called 24-bit image.
What happens, however, if the bitmap scheme only permits four bits for red, four for green and four for blue? That would mean that only 16 values for red could be encoded in that first set of four bits, and that the encoding of the green value would begin, not at the 9th bit as in the first example, but at the 5th bit. The green bits would end at the 8th position and the blue value of the first pixel would lie at 9 to 12. It’s not hard to see that different mapping “recipes” for bitmaps make for a very different arrangement of numbers within the file and that decoding a bitmap becomes difficult unless the mapping scheme is known.
It gets even worse. Sometimes other information is contained in additional bits for each pixel of the image. These file types are sometimes referred to as “extended bitmaps” and are quite common in FS aircraft texture files. One example of this consists of something called the alpha channel. While I’m not an expert on this aspect, it’s another attribute of an image pixel. You could think of it as a fourth color value, though that’s not strictly correct either. In FS, that “channel” or set of extra bits for a pixel contains information that tells FS some other things about that pixel, commonly having to do with transparency or reflectivity, or sometimes light maps for night textures.
Have you ever seen cockpit windows on an FS aircraft that appear to have a green tint? That’s the kind of thing that the designer conveys to the FS graphical display engine through the alpha channel information, along with other kinds of information that may be buried in one of the more complex types of bitmaps. Those things go beyond the simple red, green and blue values of the plain bitmap and they are used extensively in FS texture files. FS is designed to use many/most of the encoded information types and the result is the sometimes stunning graphical representations we see of aircraft when those are used.
The result of all this, however, is a wide variety of bitmap types, which makes working with them a potentially complex task. At very least, the editing programs used for repainting must understand the bitmap scheme that the file uses in order to open, edit and save it successfully. In the case of the more complex bitmap types, the editor must also be capable of somehow rendering and working with the complex information that is encoded.
When examining FS aircraft texture files (bitmaps) from the Windows Explorer, you may have noticed that some of them will display a viewable thumbnail image of the file, but many will not. You may have even attempted to open some of them with a graphics editor. If you did, you probably noted that those with a viewable thumbnail opened quite readily in the editor and those that did not show a thumbnail probably failed to open at all, presenting an error message of some kind. That’s the result of the graphics program not being able to determine the nature of the bitmap file it’s attempting to open. In a simplified example, it doesn’t know if the 5th bit is part of the red value, or the first bit of the green value. It’s more complex than that, but that illustrates the nature of the dilemma. The program doesn’t understand the file structure that was used to encode the image.
All that is the hard part, but take heart. You don’t have to understand the file formats in detail to do repaints, you only need to be aware that they exist and that you must use certain tools and techniques that take them into account. I felt I had to explain that so you’d understand the next part, which constitutes the solution to all that tomfoolery about bitmap file types. They are necessary. They add the capability for high-end developers to give us the stuff that really knocks our socks off. At the other end, the lower resolution bitmaps are very apropos to AI aircraft or freeware offerings that work well on lower powered computers, or for those who want 80+ frames per second no matter how cartoonish the aircraft look. You wouldn’t like the FS world nearly so much if either end of that bitmap spectrum were not available.
I mentioned initially that I have recently added two software titles to my library which are aimed at repainting activities. I’ll cover the payware one first, FS Repaint from Abacus. It’s a global package, i.e. it provides everything you need to do a repaint. It’s a reasonably powerful, user-friendly interface that lets you create additional variants of FS aircraft that you already have.
It will create the new variant as a copy of one of the existing types, doing all the necessary file folder creation, texture file copying and aircraft.cfg file changes required for FS to see that there’s one more version of the AC available. Completing that part is pretty easy, but if you were to open FS at that point and go look at the new one, it would look exactly like the one from which it was copied. That’s to be expected, of course, since nothing has been edited yet, just copied over to a new texture folder under the parent folder for that aircraft.
The other part of FS Repaint, however, is that it contains quite a good graphics editor that permits you to do the actual editing from within the program. It understands almost all of the bitmap file types in common use in FS, though there are a very few exceptions – airplanes it just cannot handle. Those are few and far between and for the most part, if you have an AC, you can repaint it in FS Repaint. The editor allows you to do the repainting and most importantly, knows the bitmap format that was used and can save the edited file back in that format. It’s not necessary that you know how many bits are used for the red value of each pixel. You are insulated from most of the arcane file type machinations if you choose to be. It also understands the alpha channel and other such things. It makes that information available for you to edit as well, if you wish to, and handles the results without you having to understand too much about the details.
One very powerful feature of FS Repaint is a full-motion, 3D view of the AC that you are repainting. It is automatically updated as you make changes to the bitmap files. You don’t work directly on that 3D image, but you can see it change in real time as you edit the bitmap. By grabbing the aircraft image with the mouse you can turn it every which way to look at it from any angle. You can see it in day or night lighting and control the direction from which it is lighted. That instant gratification image is a very powerful and useful feature of FS Repaint. For example, if there’s a part shown on a bitmap that you can’t identify, it’s a simple matter to make it orange or purple or chartreuse and see instantly on the 3D aircraft just what part it is – then hit the undo tool and it goes back as it was. That’s a great feature.
My other new software package is a freeware utility, DXTBmp.exe. It was developed by Martin Wright, a graphics wizard who is on the staff at Just Flight in the UK. It’s easy to use once you understand just what it is that it accomplishes, though that may be a little difficult to explain.
DXTBmp is, in simplest terms, an unwrapper/rewrapper for FS texture bitmap files. If you were to open an FS texture file that is in an extended bitmap format directly from your favorite editor, it is likely it will either fail to open at all, or will open but will “simplify” the file and you’ll lose some of the embedded information. If you edit and save the file directly from that editor, the aircraft rendering will have lost some of the attributes and details that were contained in the “extra” elements of the original bitmap.
DXTBmp solves that by opening the extended bitmap file you wish to edit, converting it to something your editor can use, and sending it to said editor (which you specify), while remembering what the file type was. When you’ve done your work there, you save the file from the editor, but then return to DXTBmp and save again. DXTBmp restores the file to the correct bitmap type, incorporating your changes and restoring the parts your editor couldn’t handle or that you chose not to make changes to. It’s no more complicated than that – simple but vital for working with the complex bitmap file types.
The help files linked from the DXTBmp freeware application are the source of much of what I’ve recently learned about FS texture file formats and are very good. They go into much more detail than I did about the specifics of the various bitmap types. It’s good information to know, but not really necessary if you want to make a white and red J3 Cub from the default yellow and black one or put your company logo on your AirHauler aircraft.
My conclusion – repaints are nothing to be afraid of and I allowed myself to be intimidated far too long before venturing into this. My artistic talents are few, but my repainting needs are modest anyway. I’ve learned that I can do this. There is much I haven’t covered here, some of which I only have a glimmering of understanding about, but I’m at the point where I can successfully create a new variant of an aircraft. You can too. It’s not as hard as they make it seem.
If you’re considering getting your feet wet on repaints, it can be done entirely with freeware. DXTBmp and Paint.Net are all you really need. Spending some money for some payware such as FS Repaint and/or a high-end graphics program like Photoshop may make the experience easier, or may not, since high-end editors require a lot of learning to use effectively. Take it in small steps and have fun with it. Like all the other facets of FS, help from others is easy to find.
Abacus FS Repaint: http://www.abacuspub...b.com/repaint/"
Thanked by 1 Member:
Posted 03 February 2010 - 08:15 PM
A very interesting article. As usual you have taken something a lot of us take for granted and have us now appreciating some of the complexities behind it.
I am sure if people took more time to grasp a few of the relatively straight forward concepts of repainting we would see a lot more obscure regional airline repaints?
Thanked by 1 Member:
Posted 06 February 2010 - 04:42 PM
It was good to read it from the point of view of someone who started from scratch. I dabbled with repaints many years ago, once you start it is very addictive and time consuming. Based on that I gave up and got back to flying
Thanked by 1 Member:
0 user(s) are reading this topic
0 members, 0 guests, 0 anonymous users