Home Fallout 3: Basic Retexturing using Geck

Download Area

Make a donation

Guild Poll 1

Can you feel the spirit of my old Respawn site returning ?

Search

Mod Quiz Results

Mod Poll Results

I see the Brotherhood of steel idea took a lead at one point but was quickly by passed by the city upgrade idea after I posted a few blogs about it. I am leaning in that direction since its all achievable ideas whilst we wait for the next Fallout game to be released.

Live Stats

JoomlaWatch 1.2.12 - Joomla Monitor and Live Stats by Matej Koval
Fallout 3: Basic Retexturing of an Existing Mesh using Geck PDF 
Written by ilesman   
Wednesday, 22 April 2009 16:16

Basic Retexturing of an Existing Mesh using Geck

Utility Programs Used During this Tutorial
* The GECK to retexture the meshes.
* NifSkope to view NIF files and find out where the textures are placed.

Other Useful Utility Programs
* FOMM to extract the texture and meshes BSA files.
* WTV by nVidia to view DDS files.
* FO3Edit to compare ESP files and efficiently cull wayward objects from the mod.

Introduction

Fallout 3 provides a simple method for retexturing a mesh using texture sets, an object type found in the GECK under the Miscellaneous heading. A texture set stores data for multiple texture maps including the standard diffuse map and its corresponding normal/gloss map. In addition, texture sets allow for an environment mask, glow/skin/hair maps, height maps, and environment maps. A check box allows the user to specify if a texture set has a specular map, and there is additional space for decal data.

Texture sets are an alternative to the mesh editing techniques required to retexture a mesh for use with Oblivion. The attractiveness of texture sets is that the modder is not required to use NifSkope to edit the mesh, which means that the retexture mod being developed will need roughly half as many files as before. Interestingly enough, NifSkope is still required so that the modder may examine the mesh to note where the new texture set must be applied in the GECK.

This tutorial will focus on using a basic texture set that includes a new texture and a normal map.

Exploration - Texture Sets

Load the GECK so that the Fallout3.esm file is the only one selected. Select the Miscellaneous category in the object window and then select the Texture Set sub group. Displayed in the list area of the object window will be all the texture sets defined in the Fallout 3 master file. Most, if not all, of these texture sets are referencing textures found inside of the Fallout – Textures.bsa file that are not referenced directly by the object meshes in the Fallout – Meshes.bsa file.

Double click on the texture set titled 1950sSuitDark. Since this texture is stored in a BSA file you will probably receive an warning message stating:

Icon file “Textures\\Armor\1950StyleSuit\OutfitDarkm.dds” not found.
Context: DEFAULT
“Yes to all” will disable all Warnings for this context.

Click “Yes to all.” This warning is simply stating that the GECK does not have direct access to the textures referenced by this texture set since they are all zipped up in a BSA file. The only real impact for you is that the window that opens will not be able to display the texture maps associated with the file in the preview window. Not a big deal as far as we are concerned.

Click on the Diffuse line in the list box on the left hand side of the window. Click on it all you want. Nothing happens. Now glance down and directly beneath the list box is a text box called Texture. This is the full path of the file listed for the diffuse map line under filename. Now click on the Normal/Gloss line in the list box. The full path of that texture now appears in the Texture text box.

To the right of the Texture text box is a button labeled Edit. Click on this button to open a dialog box that allows you to browse to a new texture selectable for this field. Be careful because once you click edit you have effectively overwritten the reference for the texture set and clicking cancel will clear out the file name for the map you are currently editing. Cancel out of the dialog box now to verify and then cancel out of the Texture Set window to prevent any changes from being saved to the GECK.

Clearly there is more to texture sets than the Diffuse and Normal/Gloss settings, but they are beyond the scope of this tutorial.

Exploration – A Default Armor Object

Select Items and then Armor from the Object Window in the GECK. Select 1950StyleSuit to load a list of all objects in the category. There are three such objects:

* OutfitPrewarBusinesswearDirty
* OutfitPrewarBusinesswearDirtyDARK
* OutfitUniquePrewarBusinesswearDirtyDARK

Double click OutfitPrewarBusinesswearDirty to open the Armor window for the object. There is a lot of information here, but we want to focus our attention on the Biped Model and World Model fields for the Male and Female versions of the outfit. The text fields under each of these headings display the full path to the mesh that these objects will use in the game. In this case the mesh is stored in the Fallout 3 – Meshes.bsa file. Notice that the full path for the Male Biped Model is “Armor\1950StyleSuit\M\Outfit.NIF.” This will become significant later on.

Click the Edit button next to the Male Biped Model to open the Model Data window for the mesh. The default mesh with the default textures is displayed in the preview window to the right. You can choose a new mesh for the object by clicking the Edit button next to the blank Model File Name text box. Of primary interest to us is the Alternate Textures list box. This is where you will be assigning new textures to the various parts of the model. Notice that for this model all these areas are blank. That is because this is the default mesh using the default textures as assigned in the NIF file. Click OK to exit out of the Model Data window and Cancel to return to the Object Window.

Exploration - A Retextured Armor Object

Now double click OutfitPrewarBusinesswearDirtyDark to open the Armor window for the object. Notice that the path for the Male Biped Model is the same as it was in the previous exploration.

Click on the Edit button to open the Model Data window for the Male Biped Model. Notice that there are entries in the Alternate Textures list box for this model. These textures are referencing the texture set 1950sSuitDark that was the focus of our texture set exploration. Notice further that the entries are only for the fields upperbody, arms, PipBoyOff, and PipBoyOn. The other fields are left blank. This is because only the fields listed actually use the texture set. The other fields reference different textures which may include a flesh texture for skin visible on the model or something called MeatCapGore01. We will explore this in more detail later. Click OK to return to the Armor window.

Now click on the Edit button to open the Model Data window for the World Model. Notice that the fields in the Alternate Textures list box are both filled referencing the same texture set used for the Male Biped Model. I think this is cool because here are two completely different meshes that utilize the same texture and look good doing it. I mean, the world model is folded clothing! That’s awesome. Click OK to return to the Armor window and Cancel to return to the Object Window.

Exploration - Using NifSkope to Determine Texture Paths

Before you can retexture a mesh you have to know how the mesh will be referencing the texture. You can use NifSkope as a research tool in this case much the same way that it was used to edit meshes for Oblivion. For this section of the tutorial you will need to have extracted the meshes BSA to a safe location. A safe location is basically anywhere that is not your Fallout 3 directory.

Before we get to the research, make the following settings adjustment to NifSkope:
1. On the file menu, ensure that Auto Sanitize Before Save is not checked.
2. On the view menu, ensure that Block List and Block Details are checked and that the option Show Blocks in List has been selected.

Open NifSkope and load the file meshes\armor\1950stylesuit\m\outfit.nif located wherever you stored the extracted mesh resources. You want to locate each paired occurrence of the headings NiTriShape and BSShaderTextureSet. These settings always occur together and in relative closeness on the list. You will want to note the name of the NiTriShape heading and then the list of textures associated with the BSShaderTextureSet heading. For example, our suit has the following settings:

BSShaderTextureSet:
* textures\armor\1950stylesuit\OutfitWeatheredM.dds
* textures\armor\1950stylesuit\OutfitWeatheredM_n.dds

Used for the following NiTriShape components:
* PipBoyOn, PipBoyOff, arms, upperbody

BSShaderTextureSet:
* textures\gore\MeatCapGore01.dds
* textures\gore\MeatCapGore01_n.dds

Used for the following NiTriShape components:
* MeatCapBody, MeatCapLimbs, meatneck, meathead

You’ll want to do this for the biped and world models for both male and female biped objects. The break down for the 1950stylesuit meshes will be included at the end of this tutorial for ease of reference.

Tutorial Disclaimer

At this point we are about to start using existing objects to create our new objects, so whenever the GECK asks to make a new form ID, you be sure to hit the yes button or you'll be modifying originals and we don't need that.

Tutorial 1 - Preparing the Textures

So you have downloaded this sweet new texture replacer by another artist or perhaps you have created your own new texture. However, instead of doing an overwrite you want to create a whole new object to place in the game world. This tutorial is going to show you how to do that using texture sets and the research we have completed so far.

You will want to create a new folder called textures inside the Data directory of your Fallout 3 installation. Inside that folder create a new folder called mystuff. Inside that folder create a new folder called armor and inside that folder a new folder called 1950stylesuit. The final directory tree should look like this:
* textures\mystuff\armor\1950stylesuit\

Copy and paste the desired texture and normal file into this folder. I like to rename my files at this point to be more descriptive and orderly in my directory. In this case I will be using a green suit retexture, so I choose to rename the textures accordingly:
* 02_Green_F.dds (retexture of OutfitF).
* 02_Green_M.dds (retexture of OutfitWeatheredM).

Now, you will need a normal file for these suits which the author may or may not provide. If they do provide the file it is likely to be the same one used by Fallout 3 as the default normal file for the mesh’s textures. I like to use WTV or the dds file viewer for Windows Explorer to check this and eliminate unnecessary duplication of these normal files. Both applications are available from nVidia for free.
If the normal is not provided or it is duplicated, I will use the default normal. Copy it from the safe location where you extracted the Fallout 3 – Textures.bsa file and paste it into the directory with your new textures. I like to rename this file as well:
* n00_default_F_n.dds
* n00_default_M_n.dds

I am a bit of an obsessive compulsive with my files, which is why I do this.

Tutorial 2 – Creating the Texture Sets

Open the GECK using the Fallout3.esm file and then save as GreenSuit.esp. Select the Miscellaneous then Texture Set categories from the Object Window.

The easiest way to create a new texture set is to copy an old one. Double click the 1950sSuitDark texture set to open the Texture Set window.

Rename the texture set to TS1950sSuitGreenM.

Select the Diffuse map and click the Edit button. Browse to textures\mystuff\armor\1950stylesuit\ and select 02_Green_M.dds. An image of the texture file will appear in the preview window.

Select the Normal/Gloss map and click the Edit button. Browse to textures\mystuff\armor\1950stylesuit\ and select n00_default_M_n.dds. An image of the texture file will appear in the preview window.

Click OK to create the new texture set. The GECK will ask you if you would like to create a new form ID. You do, so choose yes.

Repeat this process for the female version of the suit, naming the new texture set TS1950sSuitGreenF and setting the Diffuse map to 02_Green_F.dds and the Normal/Gloss map to n00_default_F_n.dds.

Click OK to create the new texture set. Again, the GECK will ask to create a new form ID, and again choose yes.

Tutorial 3 - Creating the Retextured Armor

Select the Item then Armor categories from the Object Window. Open the Armor window for the object OutfitPrewarBusinesswearDirty. Now, I could have easily selected the DARK version which is already a retexture of the default mesh, but many meshes in the game do not already have a retexture as part of the Fallout3.esm file. So I will do this the “hard” way using the research we did earlier with NifSkope.

First rename the object to MyOutfitPrewarBusinesswearGreen then hit Edit for the Male Biped Model to open the Model Data window.

Look at the Alternate Textures list and notice that the list is in the reverse order of the same references in the NIF file you explored earlier. This always happens and is not a coincidence. You will want to set the new texture set to each part that received the outfit texture in the default NIF. For the male version of this mesh those parts will be upperbody, arms, PipBoyOff, and PipBoyOn.

Double click each of these parts in turn to open the Select Form window and then find the TS section and select TS1950sSuitGreenM by double clicking the texture set you want to use. The Select Form window will close and you will see the model in the preview window change to reflect the newly assigned texture.

When you are finished click OK to close the Model Data window.

Now click the Edit button to open the Model Data window for the Male World Model and set the appropriate parts to the TS1950sSuitGreenM texture set.

Repeat the process for the Female Biped Model and the Female World Model using the texture set TS1950sSuitGreenF.

When you are finished click OK to close the Armor window. When you do the GECK asks if you want to create a new form ID. You do. So do it.

NIF Analysis: 1950 Style Suit

Male and Female World Model

BSShaderTextureSet:
* textures\armor\1950stylesuit\OutfitWeatheredM.dds
* textures\armor\1950stylesuit\OutfitWeatheredM_n.dds

Used for the following NiTriShape components:
* 1950'sStyleSuitGO:0, 1950'sStyleSuitGO:1

Female Biped Model

BSShaderTextureSet:
* textures\armor\1950stylesuit\OutfitWeatheredM.dds
* textures\armor\1950stylesuit\OutfitWeatheredM_n.dds

Used for the following NiTriShape components:
* Arms2, UpperBody3, Arms, PipBoyOff, PipBoyOn, UpperBody, UpperBody1

BSShaderTextureSet:
* textures\gore\MeatCapGore01.dds
* textures\gore\MeatCapGore01_n.dds

Used for the following NiTriShape components:
* meatcaparmlimbs, meatcapslegslimb, meatcapslegsbody, bodymeat, headmeat

BSShaderTextureSet:
* textures\characters\female\UpperBodyFemale.dds
* textures\characters\female\UpperBodyFemale_n.dds

Used for the following NiTriShape components:
* Upperbody4

 

Last Updated on Tuesday, 06 October 2009 23:46