Reskinning an item tutorial
This tutorial describes how to reskin, or change the default texture, of items that already exist in-game. As an example, the default textures of the human female mage's apprentice robes will be changed.
Tools needed are the Dragon Age Toolset, and a grafic editing Applications capable of Opening, Editing and Saving DDS Texture Files.
Most armor and weapons have a tint map, and if the aim is simply to recolor a model, then a custom tint should be used. In any case, recoloring a model which already has a tint applied will either not work or lead to unpredictable results. Additionally, a custom tint file has the advantage of working for both high and medium textures at all LOD. See below for further tutorials. However, there are situations where creating/modifying textures is appropriate, but in those situations it is preferable to create a new item variation and associated machinery to add the texture rather than overwriting an existing game resource.
Locating the Model Textures the Hard Way
At the beginning, you only know how the Model looks and what its called. A somewhat difficult task will be finding out which files are tied to the model so that you can edit them.
First and foremost, you are looking for DDS Files. How DDS Files are referenced by an Item you see in Game is a long list of database references.
A quick rundown on references we need to be aware of
- A DDS File is referenced by the Material Properties of a Model
- A Model is then referenced by the "ItemVariation" type of files. In our example, the sub "clothing_variation.gda"
- The different Clothing Variations are then referenced by the Item Type made via the Toolset
- The Item Type is lastly referenced by the Game, when choosing which gender and race this item is worn. And then displays the final version in your game.
To track back to the DDS File, you need to run up this list in reverse. Starting up our example, the mages apprentice robe, as it is worn by human females.
- Open up the Toolset and in the Resource Palette on the upper right click on "Items" (appears as a sword icon). Now comes guessing where this piece is to be found there. These Items are pretty well sorted though, it is to be found under _global / Clothing / Mage Robes / Unique. In the following list you see the ResourceName followed by ItemName "gen_im_cth_mag_app (Apprentice Robes)". Any Item can be found in the "Item" Category. Doubleclick that entry to look inside.
- In the listing of information that appears to the left of the item, note that the "Base Item Type" is "Clothing", which is branching off into the Item Variation. The robe has a "Item Variation" called "Robe, Apprentice". Variation in mind, onto the next step.
- Open up the "ItemVariations.xls" File located under "(dragon age install directory)/tools/Source/2da/rules". It has many pages, locate page "clothing_variation" since we know our "Base Item Type" is of "Clothing". In there, locate the Row called whatever Item Variation your Item had. "Robe, Apprentice" has Namestrings followed by "rob" "app" "a".
- With these 3 Strings, and Dragon Age's Naming Scheme you can find the MMH Main Modelfile.
- At the end of MMH file (extract, open and Expand All with the toolset), is the reference to the material object filename (page up two or three times from the end of the file).
- And inside the MAO File (open with Notepad) are the references to the texture filenames.
Spend a little time browsing through these files, and the naming convention will become clear. The armor prefixes are a compound of a "race" letter -- h, d, e, q, k (for children) and p (for person, or humanoid) -- and a gender letter -- m, f or n. For instance, a Chest mesh (the actual model or msh file) is by necessity both race and usually gender specific, several mmh files will usually reference one msh and are prefixed similarly, while textures will map to any model with the correct UV map, so usually begin with "p" and may or may not be gender specific. Once you understand the prefixes, the textures can usually be located quickly in the relevant erf, with the part code (where applicable) coming next, followed by the item variation code, followed by the texture code.
(There are some anomalies: for instance Ancient Elven Armor is listed in the toolset as Medium Armor E, but is in fact heavy armor so has an item variation code of "hvye" (it also has no tint map, being a one-off piece), but such cases are not too hard to track down once you understand the overall schema.)
Extracting the Texture from the Package
Model textures are located in two "texturepack.erf" ERF packages, corresponding to high resolution and medium resolution textures. These packages can be found in the (dragon age install directory)\packages\core\textures\ folder. For example, the packages might be:
C:\Program Files\Dragon Age\packages\core\textures\high\texturepack.erf C:\Program Files\Dragon Age\packages\core\textures\medium\texturepack.erf
Drag and drop these ERF Files onto the Toolset to browse and extract their content. If you have the Name, finding the Files will be easy. The Files will be in both "high" and "medium" and the quality setting in the game will decide which to choose. To make it compatible enough, taking them all may be neccessary.
Incidentally, high and medium texture versions are only required for certain model types. For example, heraldry and props only have one texture, and these can be found in
C:\Program Files\Dragon Age\packages\core\data\textures.erf
To prepare for extracting the textures, we must create a directory mimicking the structure of the Dragon Age packages folder. To do this, create a new folder named "textures" in a convenient location (for example, on your desktop). Inside this folder, create two new folders, named "high" and "medium". The "high" folder will be where the high-resolution textures are extracted to, and the "medium" folder will be where the medium-resolution textures are extracted to.
For this tutorial, we are interested in the mage's robes. To locate the textures of the mage's robes, scroll down to "pf_rob_appa_0d.dds" in one of the two texturepack ERFs. In each texturepack.erf, select all of the image files prefixed with "pf_rob_appa" (from "pf_rob_appa_0d.dds" to "pf_rob_appa_0tl3.dds"). For the high-resolution texturepack.erf, extract these images to the "textures\high\" folder just created. Extract the medium-resolution textures to the "textures\medium\" folder.
The Suffixes for Texturefiles are describing their Formats, which is described under Textureformats.
To extract one of the textures, right-click on it and select "Extract Resource."
Editing the Textures
At this stage, if we wanted to edit the existing robe textures, we could do so by changing these files. See Textureformats.
Once this has been done for all of the robe textures (in both the "High" and "Medium" folders), we'll be ready to override the default textures in Dragon Age.
Overriding the Existing Textures
Comment : this section doesn't agree with the guidance on Compatibility. Surely textures should be placed in the module's texture folder?
To override the existing textures, copy the "textures" folder containing the modified textures, and paste this folder into the Dragon Age override folder. The override folder is found in:
- Documents\BioWare\Dragon Age\packages\core\override\
for Windows Vista and 7, and in a similar location on Windows XP.
So, after pasting in the modified textures, the structure of the override folder should look like this:
- Documents\BioWare\Dragon Age\packages\core\override\
Creating recolors of existing items tutorial - A way to change the tint of the new texture
Texture Formats - Texture formats in detail.
Art Resources - Broad topic of Art Resources, which textures are a part of.