Reskinning Rudiments
Tools used in this tutorial
Required |
Reskinning Rudiments 1[edit | edit source]
This tutorial is now substantially out of date in light of newer versions of TR. It remains here only on the basis that it may contain some info omitted elsewhere which some readers may find helpful. I would urge you instead to use: Retexturing Made Easy
With huge thanks to: Throttlekitty, EdgeofForever, xdarkstarx, RedFeather1975, phoenixamon, ClayFI, ModelMan, Hayly, lowell and crew. And of course: JOG and Ghostwheel.
- All errors contained herein are my own. If you encounter any problems please PM me over at the forums.
This tutorial gives an alternative approach to reskinning objects in Oblivion from that provided in Retex Guide. Whilst I do not seek to criticise that tutorial in any sense I would warn nooBs somewhat against using NifSkope for simple retexturing. Whilst it has an obvious appeal to the point'n'click generation, NifSkope is actually an extremely powerful tool capable (and indeed primarily designed) for altering the NIF file data itself.
At this stage I am dealing only with what I would call simple objects (i.e. those consisting of only one NIF - not characters and most creatures which are comprised of multiple NIFs called by an underlying skeleton.nif). More complicated objects will be dealt with in the forthcoming Reskinning Rudiments 2.
First some vocabulary:
NIF = Net Immerse File (or Format?)
These are the 3d models (also referred to as "meshes") used by Oblivion. You will notice that some items (such as armour) have more than one .nif. One of these will be suffixed _gnd - this is the World Object nif (i.e. how the item will appear as an object in the game independent of being worn).
DDS = Direct Draw Surface
On top of the NIF you have the textures. These are stored in DDS format. There are
different levels of DDS (DXT1-5), but for present purposes don't worry about that -
for reasons I'm going to come onto.
Each NIF has a standard DDS (the "colour map") and also an _n.dds. The latter stands for normal and refers to "normal mapping" see below. The n_dds also has an alpha channel which controls the way light interacts with the suface.
Some NIFs also have a _g.dds which is a "gloss map" (these are outside the scope of the current tutorial, but I will eventually get around to an advanced texturing tutorial to cover it).
Normal Map This governs the suface property of the NIF; all the lumps, bumps, scratches and scars.
You can use the same "_n.dds" file for several textures by using an underscore ("_") and choosing the texture-names in such a way, that the text before the "_" is the same as in the "_n" file. The textures "texture.dds" "texture_1.dds" and "texture_2.dds" for example, will all use "texture_n.dds" as normal map.
Also keep in mind that the "_n" file is required. When you forget it, there will be display problems when the object is moved in-game.
With these principles out of the way, we can move on to the actual process of reskinning.
Step 1:
First of all you will need to gain access to the NIF and DDS files. To do this you need to use either BSA Commander or Ghostwheel's commandline BSA unpacker tool. Links to the latter and an excellent guide to it's use can be found here - BSA Unpacker Tutorial. I would however differ from the author on his final point. Take the BSA folder which contains all your unpacked meshes and textures and store it somewhere other than your Oblivion\Data folder - this helps to avoid later unfortunate confusion.
Step 2:
Open your Oblivion\Data folder and create two new folders within it, one called "meshes" and the other "textures" It is imperative that you use these names! Now open the BSA folder (created in Step 1) and find the item you want to reskin. Let's say changing the leather cuirass. Go to BSA\meshes\armor\thief\m and copy and paste into the meshes folder you made inside Oblivion\Data the cuirass.nif and cuirass_gnd.nif. Do likewise for the textures: BSA\textures\armor\thief\m and copy over into Oblivion\Data\textures the cuirass.dds and cuirass_n.dds.
Now close the BSA folder and forget it for the remainder of this tutorial.
Step 3:
The next stage is to make the NIF file reference your texture as opposed to its default. The easiest way to do this is with JOG's tool: Texture Replacer (TR), available from here.
Like BSA in step 1 TR is a command line tool.The above link will link you to a guide on how to use it. TR can do many things but for now all you need do with it is this: i.) copy TR.exe into the folder Oblivion\Data\meshes folder. ii.) Open the Command prompt, type CMD and open the console, now type: cd ; change directory and then the file path to your meshes folder; so for example:
cd C:\Program Files\Oblivion\Data\meshes
iii.) Now start TR by typing TR ; then a space ; and then the name of the mesh you want to edit ; another space then: -#1 ; then in quotations the path to the texture you want to use instead followed by the name of the texture file; so for instance:
TR cuirass.nif -#1 "textures\cuirass.dds"
The -#1 replaces texture number 1. If you want to see what textures are applied to the nif and their id number just type TR cuirass.nif ; Use this to check that the path to the texture is now the one you set.
Step 4
At this point your NIF is essentially reskinned. However, there are no instances of it in the game yet. Open the CS. Select the original item (eg. items > armour > thief > cuirass). In the edit window click the NIF button and navigate to your reskinned NIF in the Oblivion\Data\meshes folder. - if your doing an object which refers to it (such as armour) repeat this for the _gnd.nif. But note that you don't have to reskin the _gnd.nif with TR!
Rename your object. When you close the window it will ask if you want to create a new form ID, say yes. Now in the Items > Armor menu find your new object and drag and drop it into a cell. Make it one near to where you will start the game so you can see it ASAP.
Step 5
Now, you have a model in game the texture of which will be set to whatever is in your Oblivion\Data\textures folder with the same file name as you set in TR. Now you actually need to edit the texture. How you do this will depend on the software you have access to. If you only have something very simple use DDS Converter 2 (available here - [1]) and switch from DDS into JPEG. If you have Photoshop or Paintshop you can use the NVidia plugin to open the DDS file directly (plugin available here - [2]). There is also one for GIMP - here
Knowing how to repaint the texture really is just a question of trial and error. Again I'll hopefully get a chance to put up another tutorial describing techniques. You may find it helpful to use NifSkope at this stage, this will put up a 3D model of your mesh the texture of which will change every time you save the changes in your drawing application (although only if you're working directly on the DDS file). NifSkope is freely available here - [3].
How you save the changes to your texture will again depend on which way you opened it. If you're using the NVIDIA plugins they can save out directly in DDS. Make sure to have generate mipmaps ticked and use DXT5 (interpolated alpha) format or DXT3. Usually DXT3 will suffice, but for more intricate normal maps DXT5 may be preferable. If you're using JPEG or PSD, save in that format and use DDS Converter to switch back to DDS, replacing the original file.
More will follow on normal maps, speculars, particles, etc.