Making Liveries For Fs2004 Aircraft
Transcription
Making Liveries For Fs2004 Aircraft
Making Liveries For Fs2004 Aircraft Some insights on the process of making an aircraft livery paint or repaint for the modeler, painter and repainter. by Volker M. Bollig Halle (Saale), October 2010 Preface This paper assumes that the reader is familiar with the concept of texturing CG 3D-models and the general use of tools like GMax/3D-Studio Max, Photoshop/PSP/GIMP and texture file converters. It will not cover how to paint with photoshop or how to model a plane, but will give some general insight and emphasize some of the more often encountered pitfalls of aircraft repainting. It is also not intended as a step-by-step tutorial, since there are many tutorials on this topic to be found out there. Caveat! There is nothing like the "one and only valid way" to properly do texturing, do a paint or a repaint of a model. There are a lot of ways to achieve the desired result. Hence I explicitly do not dismiss any other way of texturing/repainting not mentioned in this lecture. This essay covers FS2004 paints, but applies to some extend to Fs2002 and FSX models also. Contents Preface ...............................................................................................................................................1 Contents .............................................................................................................................................2 1. A Brief Look On Textures And How They Are Working .................................................................3 2. Mapping The Textures.................................................................................................................6 3. Making A Paintkit ...................................................................................................................... 12 4. Excursion Back To Mapping ....................................................................................................... 22 5. The Paintkit - Part Two .............................................................................................................. 29 6. The Alpha Channel .................................................................................................................... 42 7. Fiat Lux – Let There Be Light ...................................................................................................... 48 8. Getting The Paint Into The Simulator ......................................................................................... 51 9. Mapping Examples .................................................................................................................... 53 AFS A318-100................................................................................................................................ 54 Simmer's Sky / Overland Airbus A320 ............................................................................................ 55 PMDG Boeing 737-700 .................................................................................................................. 57 Wilco 737-400 ............................................................................................................................... 59 LevelD Boeing 767-300ER .............................................................................................................. 61 Project Open Sky Boeing B777-300ER............................................................................................ 62 Digital Aviation Dornier Do 27 A1 .................................................................................................. 64 POAB Fokker 50 ............................................................................................................................ 65 Samdim Tupolev Tu 114 ................................................................................................................ 67 10. Conclusion............................................................................................................................. 69 1. A Brief Look On Textures And How They Are Working Let's fire up the sim and change the standard aircraft from the C172 to the default American Pacific Boeing 737-400. We will have this familiar view: image 1 Ignoring the surrounding, we will have a closer look at the model itself. This is best done by examining the model inside an application more suitable in order to have an insight of the very structure of the model. Image 2 shows the model in a 3D-modeling application.1 image 2 1 We will see later how we get there. Any 3D-Model in the realm of DirectX consists of virtual triangles2 defining the surface of the model. The wireframe in image 2 represents the boundaries of all these triangles. They are not visible in the Simulator. To make the model visible, we have to cast a so called material on the model. The material defines how the renderer in FS makes the model visible in the simulation's viewport. This is done by definitions called shaders which define properties like color, opacity, glossiness, illumination, reflection, refraction or lighting of the model surface. The renderer now has to determine which part of the model exactly has which properties. This is where textures come in place. The texture determines which part of the triangles has which color, opacity, reflection and so on. For different properties, different textures are used. There can be a texture for the color, one for opacity, one for glossiness etc. When we open the default B737-400 texture folder, we will find this texture files: 737_panel_decals.bmp 737_panel_decals_2.bmp 737_panel_decals_3.bmp b737_400_c.bmp b737_400_l.bmp b737_400_t.bmp The naming of the first three texture files is self explanatory as they contain the decal textures used in the virtual cockpit. The b737_400_c.bmp contains the virtual cockpit textures itself, the b737_400_l.bmp contains the lightmap3 and at last the b737_400_t.bmp contains the outside texture of the model shown in image 3. This is also indicated by the suffix –t. 2 3 why triangles are used is also discussed in my GMax tutorial at www.vmbollig.de will be discussed later image 3 The texture shown in image 3 covers the whole outer surface of the entire airplane in a single 1024x1024 pixel graphic file. To be exact, this is more than one image in the file as we will see later. If there was no texture file for the model, the plane would look like this in the sim4: image 4 4 The registration number on the fuselage on image 4 is not part of the texture file but rendered by the Flight Simulator separately. This is why it can be seen here. 2. Mapping The Textures Now we have a 3D-model and a texture file. The modeler now maps the texture file to the model. In this example this is done most effectively, using a minimum of space and leaving nearly no unused space of the texture file at all. We will see some examples of the contrary later. image 5 Image 5 shows the entire mapping, the so called uvw-mapping5, of the outer hull of the aircraft. Most of the parts of the plane are clearly distinguishable on first glance, some are not. We see the fuselage broke up into three parts. We see both horizontal stabilizers on the top right, one vertical stabilizer on the bottom right, one engine, and one wing with upper and lower side. On the next image we see both, mapping and texture. 5 uvw are the coordinates of the 3d-model vertices on the texture. They are referred to as uvw due to not being confused with the model coordinates x, y and z. image 6 Here one can see clearly which part of the model corresponds to which part of the texture. Let's have some fun and put this texture on the plane, thus making the underlying model grid visible in the simulator. image 7 What we see in the simulator now is pretty much the same as the modeler sees in the 3Dapplication's viewport as shown in image 8. image 8 When a new model is made, it has either no texture mapping at all or it has a default mapping by choice of the plane's modeler. It is then up to the artist, to layout the texture and it's mapping according to the needs of the model.6 This is, in most cases, done concurrently by first drafting and later refining mapping and texture files. As can be seen in the textures of the FS default B737-400, some areas of the texture are used more than once. Let's have a look on the mapping of the engines. image 9 The grid overlay in fact shows the mapping of both engines, which, as can be seen, are identical. The result is, that the paint on this engine texture will appear on both engines. The effect that both engines perfectly overlap like shown is commonly achieved by doing the engine uvw-mapping prior to duplicating and mirroring the engine. The drawback and first pitfall of repainting lies in the circumstance, that the paint of the second engine is mirrored too, thus preventing the repainter 7 from applying text or logos which cannot be mirrored. Further on, on image 10 we see that a part of the fuselage is mapped twice whereas the front section image 10 6 And when the artist is kind enough, also to the needs of the repainting community. Which is, alas, sometimes not the case. 7 Of cause the painter of the original also. partly is mapped separately. This is the part where most airlines have their company sign or writing painted on. As the result, the rear fuselage and the cockpit section are mirrored with the same consequences as have been seen for the engines. The same applies to the wing, which is also mapped twice. image 11 Painting a registration on the wing will result in the registration showing up mirrored on the right wing as shown in image 11. Registration on the wings will not work with this model. There's nothing a repainter can do about this. The whole mapping of this aircraft model is optimized for using the least amount of texture space possible. This is not bad in general. It minimizes the impact on the simulator's framerate whereas it also allows for the most important parts to be mapped correctly. That leads us to the vertical stabilizer usually refered to as the tail fin. image 12 At first glance, there seem to be two "left" sides of the tail fin. This indicates that one of the fins is mapped mirrored. This will be proved by a little test. image 13 image 14 The right side of the fin, mapped to the upper right corner of the texture is mirrored. This was what could be assumed, considered that also the right part of the fuselage has a mirrored mapping as seen in image 10. Some challenges for repainters caused by different mapping technics will be discussed subsequently. 3. Making A Paintkit Most FS aircraft developers provide paintkits, among them Simmer's Sky/Overland, iFly, PMDG, Flight1, Qualitywings, Wilco, AI Aardvark, The Fruit Stand and many more. This seems sensible to me, considering the high demand of repaints throughout the flightsim community. Doing a proper Paintkit can be a lot of work, but on the other hand, may well pay back since it increases the number of available repaints and the acceptance of the model itself. When we have a look on the default Boeing 737-400 texture, we see that mainly the fuselage, the tail and the engine needs to be repainted normally. Also for the sake of saving my time and the reader from getting bored, I will focus on this parts of an aircraft here. Image 15 shows some repaints I have done for the iFly B737-700/800 recently, using the paintkit delivered by iFly. image 15 A lot of paintschemes, like the Jet Airways or the Southwest in image 15, require that the entire fuselage or, the better, fuselage plus tail fin is to be painted in one piece. Having a proper paintkit and a sensibly mapped model, the entire painting process takes place in the paintkit only. The ready painted livery will then be transferred and pasted to the texture file(s) and converted appropriately. I will show how to achieve this without having to fiddle too much with the texture file. The better the paintkit is, the easier and faster we can repaint. If we are lucky, the modeller provided the uvw mapping grid with the plane. If not, like the default Boeing 737 or a lot of freeware models, we have to obtain the mapping grid on our own. This requires that we read out the 3d-Aircraft models and import them into an unwrapper application. If you ask in any of the numerous flightsim forums how to obtain the 3d-model of a given FS plane, the answer will in most cases be "This is impossible!", "This is not allowed!" or something like this. This is simply not true and I will show how to do this. Before I do, a brief word on this topic. First of all, we do not mess with the model file. That would be reverse engineering and might, under certain circumstances, be considered illegal. Carefully studying the 3D-Models of both, freeware and payware developers, as well as studying the comments on this topic in the forums teaches a lot. It teaches the Newcomer how a model can be built8 and it shows the expert how accurate and diligent the modeler has worked. Astonishingly, at least for me, a lot of highly praised and acclaimed aircraft, both free- and payware, are far from being expertly designed in terms of modeling or texture mapping.9 There is also a fear among developers that someone might steal their model or part of it to make their own one. Although this might be possible to some extend in theory, but this simply does not work this way. We can import the 3D-model including the textures and their mapping but not the naming of parts and shaders 10, animations, LoDs or even the correct size of the model. Building a working FS model from the 3D-model alone requires the complete skills of a plane developer. Also, any model is unique and will easily be identified as ripped or stolen by an expert. Apart from making paintkits and comparing and examining a model, there is no real advantage in having the 3D-model available in the way described. These are the required applications for this task: a working 3D Studio Max11 or Maya as 3d-modeller 3D Ripper DX http://www.deep-shadows.com/hax/3DRipperDX.htm Lith Unwrap by Brad Bolthouse, a Freeware uv-mapper Photoshop, PSP, GIMP or a similar image processing application DXTBMP from the FS SDK or a similar tool as a converter to FS extended BMP-format Flight Simulator 2004 "A century Of Flight" obviously and time saving but not required: FSRepaint by Abacus http://www.abacuspub.com The tool 3D Ripper DX 12, upon it's installation, also installs an importer for it's own .3dr file format. This requires that 3D Studio Max has been installed prior to installing 3D Ripper DX. As the naming may indicate, 3D Ripper DX works with DirectX. It is launched and itself launches the simulator accessing the 3D viewport. Simply fire up the 3D Ripper, start FS9 from within, choose the desired aircraft in the manu and wait until it shows up completely, which will take some seconds. Then press F12 or any defined hotkey, and a copy of the 3D-Model and it's textures in .DDS-Format are stored in the folder C:\Users\$USER%\Documents\3DReaperDX13. 8 In most cases, it shows not the process but the result. Hence it seems to me that a lot of the outcry in the forums on this topic tries to hide the fact, that all modelers are simply cooking with water. 10 which would be essential to make a working model for FS. 11 At least version 5. Evaluation or student version are available for a limited time. 12 which works, by the way, with other DirectX Programs and games also. 13 Yes, the program is named 3D Ripper but the folder is named 3DReaper. 9 image 16 Image 16 shows the user interface of the 3D Ripper DX and image 17 shows where to capture the model. image 17 The captured model is now stored in the subfolder Frames and the textures are stored in the subfolder Textures of the above mentioned 3DReaper folder. We do not need the shaders for our purposes anyway. In 3DS Max, we import the model using the plugin by simply choosing the 3dr-format. The given settings have proved to work fine so far. image 18 The Aspect and FOV14 values are computed by the tool and may simply be selected. The now imported model looks like shown in image 19 in the 3D-modeler. 14 The width to height ratio and Field of View of the viewport within the FS menu in this case. image 19 The image shows only the model's wireframe in this case, but the textures are captured and correctly mapped also. As one can see, the model is shown in the position as captured. This requires us to first do a bit of refinery. The model shall be rotated to the desired angle and the model's pivot point moved to the very center of the model. I also add a camera and some lights for rendering. image 20 Image 20 shows the model in the modeler's viewport and image 21 shows a rendered image. image 21 The model of the default B737 bears a pitfall since it is not mapped correctly with uvw-coordinates ranging from 0 to 1 as required. Therefore we must move the entire mapping of the model to the right position as shown in image 22. This is done in Mesh Modifier – Unwrap UVW – Edit of 3DStudio. This is only required for a few models. image 22 The next step is quite simple. Just export the model to the Autodesk .3DS-format and upon exporting, tick the Preserve MAX' texture coordinates checkbox which is essential since we want the coordinates. In Lith Unwrap choose File – Model – Open and import the model. The result may look like image 23. image 23 As you may see, the whole mapping is flipped vertically, which will be corrected later. This is because the ripper uses dds format textures which store the image upside down by default. We now select the desired mapping in the Materials tree at the right and save the mapping with the File – Save UV Map command. image 24 image 25 As the map's option, I usually choose B&W coloring and 1024x1024 pixel. The result is a UV-map like the one shown in image 26. image 26 We also convert the aircraft's texture file to 32-Bit TGA with DXTBMP as usual and load the texture into Photoshop. Then we import the UV-map as a new layer in Photoshop. Once copied to the texture, we flip the UV map vertically and invert the colors as shown in image 27. image 27 In the next step, we select all white areas with the magic wand with the result, that only the wireframe is left. The result has been shown before in image 6. When putting together the paintkit, we have to ensure that the resulting paint can be positioned correctly into the texture file. To achieve this, we add cross markers to the relevant parts. This is done on a separate layer in the texture file first. What we need to position here, is the aft fuselage section, both front fuselage sections and the tail fins. The marker must be positioned in a way that does not interfere with the paintkit itself as shown in image 28. image 28 The marker must be copied onto the grid layer also, in order to be visible when the grid is enabled and when the grid layer is not visible in the texture file. Once stitched together accurately in Photoshop, we have a left and a right template as well as a left and a right grid for reference. This is what we start to paint with. image 29 image 30 In Photoshop it is a good idea to organize the paint in layers and layer sets as shown. I always mark layers which will not be visible in the resulting paintscheme in grey color as it can be seen with the grid and the template. In this case, I have taken the original texture as a template. We also may use any suitable aircraft photograph. As you may have noticed, the plane grid and texture seems to be a bit too thick for a B737-400 thus the texture appears to be skewed. This is a result of the mapping method used, and this will be the right moment for a short excursion back to mapping. 4. Excursion Back To Mapping Mapping a texture to a 3D model in 3D Max or GMax is done, among other techniques, by either projecting the image planar to the model or wrap it around the model. The former achieves best results on flat surfaces such as wings and fins, and the latter is suitable for tubular shapes such as engines and airliner's fuselages. image 31 image 32 In this case, the model of the FS default Boeing 737-400 fuselage and engine has been mapped tubular as shown in image 31. Most of the aircraft fuselages you will encounter in the FS world are mapped planar as in image 32 by the way. Both methods are perfectly valid and have their advantages as well as their drawbacks. Using the tubular method, the texture around the fuselage, except the head and tail, is free of distortions. You may use any elaborate and complicated paint on it. The planar mapped fuselage paint works very well if used with an aircraft photograph as a template, because a photograph exactly represents a planar mapping or, to be precise, projection, of the tubular fuselage of an airliner. The distortions of the upper and lower part of the fuselage are the same with planar mapping as they are on a photograph. In most paintschemes, this distortion does not lead to problems because airliners paintschemes usually are not elaborate on the very top or bottom. I will demonstrate this with an example. Let's map this beautiful image to the fuselage: 15 image 33 First, we will map it tubular, i.e. wrapped around the fuselage. As we see in image 34, we have no distortion at all. image 34 The image is wrapped perfectly around the tube 16, whereas the texture is distorted when mapped planar as seen in image 35. image 35 15 16 By the way, textures in FS2004 do not need to be square at all. The small rectangle on the right is the plane, the simulator renders the registration on. Now, because planar and tubular mapping in most cases require different handling, how can they be distinguished? Image 36 shows a comparison between the PAD Dash 8Q400 on the top with the default B737 on the bottom. The upper part showing a planar and the lower part showing a tubular mapping. image 36 With tubular mapping, the sections of the fuselage are mapped in equal size whereas the planar mapped grid narrows towards the top and the bottom of the fuselage thus leading to the above discussed distortion. This is the reason that some elaborate paintschemes such as the Northwest Illinois and Florida One, to name a few, are very hard to paint on planar mapped fuselages.17 There is another pitfall adherent to these two mapping techniques. As an example, here is the paint scheme for a German virtual airline named Leipzig-Halle-Airlines (LHA) shown in image 37. The paint scheme requires that the yellow line separating the blue tail from the white fuselage has an exact angle of fortyfive degrees. The model in image 37 is an SMS/Overland model with planar mapping and obiously working perfectly. 17 This applies among others to the PMDG, iFly and Overland B737NG models image 37 Now let's do this with our tubular mapped FS 2004 default Boeing 737-400. 18 image 38 The result looks like image 39 in 3D Studio as well as in the simulator. 18 I dare to cite this texture here. This is not my paint. This repaint is made by Manuel Tischler of LHA. image 39 This line has actually a slightly s-shaped curve. It does not look bad at all, but is not what we want to achieve compared to image 37. How can this be achieved? We will now apply a dirty trick and simulate the planar mapping. We load the aircraft into 3D Max and slice19 the fuselage exactly where we want the line to appear. This is shown in image 40. image 40 We then export the 3ds-model, import it into Lith Unwrap and export the new UV-map again. The result is shown in image 41. 19 Mesh Modifier List Slice, then adjust the slice plane in the 45° angle. Choose refine model. image 41 The planar slice through the model results in a counter s-shaped mapping grid that we can use as a template to draw the separation line as in image 42. Please mind! The mapping and the model itself in the simulator are, and will be, left untouched! image 42 In the simulator, we will have the result shown in image 43. image 43 The image 43 shows the genuine paint from image 40 in the upper and the reworked image as in image 42 in the lower half. Now, let's move on and continue the work with the paintkit. 5. The Paintkit - Part Two We now have our rudimentary paintkit as in image 44, consisting of left and right grid, template and the marker crosses. image 44 In order to be able to precisely cut out the desired part when the paint is ready, we define the boundary for the cutouts now. I do this with a path but this will work with shapes also. image 45 I hide all unused layers, select the entire part plus the marker cross and use the selection to path tool. Then I name the new created path fuselage rear L&R. When I need to select the rear fuselage part later, I only need to CTRL-Click on the path tool entry. I do this with any required part as seen in image 46. image 46 Having the template and the grid, lets add some more to the paintkit. In the paint layer, apart from the template, I put the color paintjob except text and logos which I usually reserve an extra layer for. Also I tend to separate the left from the right side of the paint. Aircraft details such as doors and windows, lines, rivets, hatches and other details are stored in other separate layers. The same applies to the dirt and shadow layer. I set up these layers in advance what makes the layer toolbox look like image 47. image 47 I assume that the reader has essential knowledge of how to paint. Hence I will not elaborate on this but rather give some hints on often encountered issues. Another issue is, how to obtain reasonable shadows for the aircraft. This applies mainly to fuselage underbelly, T-stabilizers, rear mounted engines and high mounted wings. As an example, image 48 is a genuine paint of the PAD Dornier 328Jet as it comes with the download. image 48 There are no shadows at all. Having been asked by the developer to paint the Do 328J German ADAC20 livery, I looked for a way to achieve a reasonable and convincing cast of shadow without having to guess at all. As we saw before, we have all the prerequisites to do this. We fire up 3D Studio and load the desired aircraft. Then we detach all non fuselage parts as a separate object and image 49 shows, what does the trick. 20 Allgemeiner Deutscher Automobil Club – German Automobile Club. ADAC uses these planes to repatriate victims of traffic and other accidents abroad. image 49 We set the non fuselage parts to not visible to camera in the objects properties. In addition we give the fuselage an overall white material. Set up the lighting as required and camera to ortho, image 50 shows the rendered result. I made the magenta background for easy selecting and cutting of the image. image 50 Now, let's cut this out and use it for the paintkit. Image 51 shows it with the mapping grid for proper sizing. image 51 Setting the layer properties to multiply and opacity to about 40% gives the result shown in image 52. image 52 Now we see the shadows of the underbelly, gear housing, wings, engines and horizontal stabilizers. You may compare this with image 48, and consider that this is done without one single stroke of the virtual brush. The ready made ADAC paint looks like image 53, by the way. As can be seen, it has not the exact same lighting as the example above. image 53 Going on with our default B737 paintkit, we rendered the model the same way as described with the Dornier 328 Jet which results in image 54. image 54 A little refinery work later, we have a basic shadow in our paint kit to work with. image 55 We can, of course, adjust the amount of shading to our desire. In some cases, we want to give the aircraft a used look. This is where some dirt is added. This is how I achieve the typical dirt, visible below door and window sills. Onto a separate layer, I draw a thick line as shown in image 56. image 56 In the next step, I then smear the line with the finger tool.21 image 57 Then I select and resize the dirt as in image 58. This is done separately for the windows and the door sill. image 58 Now we have to get rid of the dirt where the windows are and in the spaces between the windows. In the windows layer, we can Click-select the windows and then stretch the selection like in image 59. 21 The best results will be achieved with a touch sensitive board and pen such as the Wacom Bamboo Pen and Touch which is quite affordable. image 59 Then invert the selection and delete the paint in the window dirt layer. image 60 Then reducing the opacity to about 10% will end up with a result as shown in image 61. image 61 In the next step, we add the overall dirt caused by dust and rain. This will be barely visible on the completed livery. Here we need some vertical stripes. I usually make the stripes with the gradient tool, using the noise option. image 62 It doesn't matter which color or preset you use. Image 63 shows the intermediate stage with the blue hue preset. image 63 In the next steps, we set the saturation to zero and the spread22 as desired. image 64 Image 65 shows the result with opacity set to 10%. 22 This is CTRL-L in Photoshop. image 65 As we see, the stripes are barely visible. One may also add some overall dirt with the same technique but using a cloud filter23 rather than the gradient noise. Having covered shadows and dirt, I will not elaborate on the paint itself. I think this is simply a matter of drawing and pasting lines, shapes, text and logos onto the appropriate layers. Once I am finished with the paint, I save the file. Then I rename it filename_flat.psd to avoid accidentally losing the layers through saving the flattened image.24 Then I flatten the image which is then ready to be copied to the texture file. Once a Photoshop image is flattened, there is no access to the layers. This means that we have to flatten the image separately for the left and the right part of the fuselage. The flattened image is now ready to be copied into the texture file. image 66 The ready made paint for the default B737-400 could then look like image 67. 23 24 I use the "Little Fluffy Cloud" filter from the Alienskin Xenofex Filter suite. Those, who have lost a week's work doing so, know what I mean. image 67 Images 68 and 69 show the paint in the simulator. image 68 image 69 6. The Alpha Channel As mentioned in Chapter one, the texture file usually does not only contain the RGB channels but also a separate channel. This channel is by default named the alpha channel. The alpha channel is an 8-bit channel ranging from black to white. In FS2004 the alpha channel determines the environmental reflection as on reflective surfaces such as bare metal or glossy paint. Let's do some tests to see how this works. Image 70 shows the rear fuselage section of the iFly 737700 painted in metallic grey with an all white alpha channel.25 image 70 Image 71 shows the mid section of the same aircraft and image 72 the mid section's alpha channel. The grayscale determines the amount of reflection. Where the alpha channel is white, there is no reflection at all and where the alpha channel shows black, there is maximum reflection. 25 Note that an all white alpha channel will be converted by the image tool as no alpha channel at all. image 71 image 72 image 73 The result in the simulator is shown in image 73. The rear part shows no reflection at all, whereas the front part shows a lot of reflection. This surely is what we expected. Now, what exaxtly is "the reflection" or what is reflected? In the real world obviously the surrounding area of the aircraft and occasionally parts of the aircraft itself are reflected on the surface. In the simulator this would require too much ressources from the viewport renderer. Therefore the renderer takes a generic texture which will dynamically be mapped onto reflective surfaces. This texture is called the environment map. It is stored in the C:\Program Files (x86)\Microsoft Games\Flight Simulator 9\Texture- folder by the filename envmap.bmp and looks like this: image 74 Now let's just do a closer examination. I altered the environment map as shown in image 75. image 75 The images 76 through 79 show the above environment mapped to the aircraft's front and mid section in various angles. We plainly see that the texture is mapped dynamically by the simulator's renderer. image 76 image 77 The mapping dynamically changes with the viewing angle as a real reflection would. image 78 image 79 The RGB (color) channel in the texture file determines which part of the aircraft has which color, and the alpha channel of the texture file determines the amount of reflection while the reflected environment is stored in the environment map. The environment map is used by all other objects in the simulator also. Caveat! When you omit the alpha channel in the environment map, all high reflective areas on the aircraft will be rendered transparent. Though, if you encounter any transparent areas on a downloaded livery, check the environment map first. Image 80 shows varying degrees of reflection on a iFly 737-700 livery. image 80 7. Fiat Lux – Let There Be Light The night lighting is added to the model via the lightmap texture, usuable distinguishable by the trailing _L in the filename. For the default B737-400 the file is named b737_400_l.bmp and looks as in image 81. image 81 Image 82 shows the familiar sight of the aircraft at night with panel and landing light switched on. All non black parts of the light map will be added to the texture in the simulation. In this case it is the landing light reflection on the fuselage, the lighted windows and the window's reflection on the wing26. Be aware that the lightmap is not a black/white but an RGB image and light may also be tinted. The alpha channel of the lightmap works as a mask as described below. also note that the light map does not need to be the same size as the texture itself. In case of the default Boeing 737400 the texture size is 1024x1024 pixel and the light map has a resolution of 256x256 pixel. 26 This is the vertically mapped part on the top. image 82 If we now switch off the landing light but leave the panel light on, we will see the plane like in image 83. image 83 Which part of the lightmap is visible with landing lights switched on, is determined in the alpha channel of the light map. This is shown in image 84. image 84 All areas not white in the light map's alpha channel will be rendered according to the lightmap's RGB channel at simulator's night time when the panel lights are switched on and the landing lights are switched off. Though the alpha channels shown in image 84 and 85 will lead to the same result. image 85 8. Getting The Paint Into The Simulator I consider getting a new or downlowded paint to work in the simulator a common task and therefore will only do a brief outline. First, I copy an already present texture directory and rename it to my preference. Then I convert the new textures including the lightmap to the desired file format. In general I use DXT3 with either alpha or colorkey.27 If the alpha channel is entirely white, I recomment to paint at least one black pixel 28 into the alpha channel. This results in the channel being regarded as colorkeyed upon converting to extended BMP format. Otherwise the paint will look blurry in the simulator. The converted texture files are then copied into the new texture directory. In the aircraft.cfg, we copy an entire [fltsim.x] entry and alter as usual: the subsequent number in the header: [fltsim.x+1] the title, because it has to be unique the texture directory (texture=texture.mytexture) ui_variation for distinction and atc_ id/airline/flight_number and description as required Example: [fltsim.14] Last entry title=iFly 737-800 Hongkong Airlines B-KBU (Normal screen) sim=iFly737_800_24k model= panel=normal sound= texture=bkbu kb_checklists= kb_reference= atc_id= atc_airline= atc_flight_number= ui_manufacturer=Boeing ui_type="iFly 737-800 (Normal screen)" ui_variation="Hongkong Airlines B-KBU" description=Repaint: Volker M. Bollig \/iFly Jets: The 737NG v1.0 for Flight Simulator 2004\n\nAircraft by iFly Developer Team\nFSUIPC payware Licensed from Pete Downson\nNavData from http:\/\/www.navdata.at\/\nSID\/STAR from http:\/\/PlanePath.com\/\n\nemail: [email protected] visual_damage = 1 Last entry copied and altered as shown. [fltsim.15] New entry, subsequent numbering required! title=iFly 737-800 Hongkong Airlines B-KBK (Normal screen) Must be unique sim=iFly737_800_24k model= panel=normal sound= texture=bkbk The new texture directory kb_checklists= kb_reference= atc_id= atc_airline= atc_flight_number= 27 I will not discuss the file formats and mipmaps here because there are a wide variety of excellent explanations available, e.g. on http://www.fsdeveloper.com/ 28 I paint it in the upper left corner ui_manufacturer=Boeing ui_type="iFly 737-800 (Normal screen)" ui_variation="Hongkong Airlines B-KBk old livery" description description=Repaint: Volker M. Bollig \/iFly Jets: The 737NG v1.0 for Flight Simulator 2004\n\nAircraft by iFly Developer Team\nFSUIPC payware Licensed from Pete Downson\nNavData from http:\/\/www.navdata.at\/\nSID\/STAR from http:\/\/PlanePath.com\/\n\nemail: [email protected] visual_damage = 1 A word on the ui_manufacturer entry. A lot of flight sim aircraft developers seem to consider themselves as aircraft manufacturers. I do not agree with this. A Boeing is a Boeing is a Boeing. There is no such manufacturer as PMDG-Boeing, iFly-Boeing, Dreamfleet-Boeing, Feelthere-Boeing or SMSBoeing. I expect to find any Boeing under the manufacturer Boeing, any Airbus under the manufacturer Airbus, any Piper under the Manufacturer Piper and so on. It is the ui_type and the ui_variation entry which may deal with the simulated model's developer. I consider it unpleasant and annoying to have to rework all entries of newly installed aircrafts in order to find them where they belong. 9. Mapping Examples We have recently examined the default Boeing 737-400 mapping and discussed its advantages and drawbacks. Now let's have some fun and couriously examine some other aircrafts to see how they are mapped and textured. To have an easy overview of mapping and distortions I replaced the model's outer textures (fuselage, wings, stabilizers and engines) with chequered textures in different colour like the texture shown in image 86. image 86 Foe each texture I took a different colour scheme, hence we also can easily determine how much texture files are used for the outer paint29. I took payware and freeware models as well, but the focus is on, more or less well known, payware models. The models are: 29 AFS Design A318-100 SMS/Overland A320 PMDG B737-700 Wilco B737-400 LevelD B767-300ER Project Opensky B777-300ER Digital Aviation Dornier Do 27 B1 POAB Fokker 50 Samdim Tupolev Tu 114 Well, not exactly because i omitted some minor detail and the inner and VC textures because there are not really relevant for this topic. AFS A318-100 The recently published AFS A318-100 is shown on the images 87 through 89. image 87 The fuselage is mapped to one texture file for each side. The three part division of the structure is marked 1 and 2. What is also easy to see, is that the tail and the engines are mapped in another scale than the fuselage. This has to be taken into account when making a paintkit. image 88 Looking on the top of the aircraft, the distortions show, that the fuselage and the engines are mapped planar. We see the same on image 89 except for the underbelly, which has a distorted mapping. The wing leading edges and tail rudder are mapped separately from the wing respectively the tail. image 89 Simmer's Sky / Overland Airbus A320 Images 90 through 92 show the SMS Overland A320 which comes, like all Overland airplanes, with an excellent paintkit. image 90 The fuselage is mapped planar and the tail has the same mapping scale as the fuselage. Only the engines are mapped in a smaller scale than the plane itself. The wing's leading and trailing edges as well as the flap supports, the flaps and slats are mapped separately. The right wing's inlay is mapped on a different texture which allows for painting a registration. image 91 As we see in image 92, the underbelly is mapped planar with a viewing angle from the bottom hence does not have the distortion as the fuselage itself. This has to be taken into account when repainting. image 92 PMDG Boeing 737-700 The next one is the PMDG Boeing 737-700 and shown in images 93 through 96. image 93 As can be seen, we have a planar mapping of the fuselage. Also, the engines and the tail are mapped in different scales and to add to this, the mapping of the tail is tilted by some degree. image 94 image 95 The center part of the belly is mapped in another scale which is also a bit skewed. image 96 Wilco 737-400 Now we have a look on Wilco's PiC Boeing 737-400: image 97 Here we have a planar mapped fuselage with the tail in the same scale. This is an easy one for repainting. As with most other planes, the engine nacelles are mapped in smaller scale. image 98 image 99 The Wilco 737-400 also shows a planar mapped underbelly with some distortions. LevelD Boeing 767-300ER image 100 image 101 image 102 The LevelD Boeing 767-300ER also shows a planar mapping with a different mapping scale of the underbelly and the engines. Project Open Sky Boeing B777-300ER The Triple Seven's fuselage is mapped to six sections using three texture files per side. We also have a planar mapping here and a separate underbelly. image 103 image 104 image 105 All the aircraft shown above are mapped similar with planar mapped fuselage and smaller scaled engine mapping allowing more details to be painted on the engines. Also the underbellies are mapped separately. Now we have a look to some examples, showing somewhat more extreme mapping techniques. Digital Aviation Dornier Do 27 A1 image 106 image 107 image 108 If you ever asked yourself, why the DA Do 27 cuts the framerate of the FSX by 10-20 frames compared to most other airplanes, here is the answer. What a waste of ressources. But if you think, one couldn't go further, have a look at the next one. POAB Fokker 50 The POAB Fokker 50 shows a planar mapping, separate mapped underbelly and engines a usual. But using twelve 1024x1024 texture files for fuselage and tail alone is simply ridiculous. Most of the texture files are also used partly leaving up to 60% of their space unused. Keep in mind that the texture files ought to be loadad into the system's memory nevertheless. image 109 image 110 image 111 At the other hand, if painted properly, this model looks fantastic in the simulator anyway. Samdim Tupolev Tu 114 Sometimes, a model desperately tries to resist being repainted. One of them is Samdim's fantastic Tupolev Tu 114, the world's largest propliner ever. I like this plane very much and Samdim did a great job on this model. Therefore I was keen to have it repainted to our virtual airline livery. What I encountered was this: image 112 image 113 image 114 This looks not so bad on first glance, but having a closer look, we see that the fuselage is mapped in a different scale for each of the four sections. Fuselage, tail, wing and engines only take four texture files, their mapping is somewhat inconsistent in respect of the mapping scale. This makes it hard to create a proper paintkit. This seems to be the reason, that there are so few repaints of this plane to be found. image 115 10. Conclusion I am aware that this short essay cannot cover all aspects of repainting any Flight Simulator aircraft. There are a lot of tutorials and information to be found around in the net. My goal was to give a brief oversight on repainting itself and emphasize on some points I consider interesting. December 2010 Volker M. Bollig [email protected]