Posted 05 October 2013 - 12:08 PM
Okay since I am getting a bit tired of repeating myself! :)
Also I guess its a good idea to get this guide out in the open so people can solve their texture issues themselves!
Okay the point in this guide/post is to help you identify when you have a purple or black texture in the game.
First a bit of technical details to help understand what all this is about!
Diffuse texture: all files with only .dds after them are diffuse textures. These contain what you see ingame.
Normal texture: These contain depth information about the diffuse texture. To make a model as a whole look nicer. They normally have the ending _n.dds.
There are other types of special textures, and perhaps I will add them in the future if there is a need for it. For now these two will suffice, since the vast majority of issues with textures is in either of those two. But back to the colors.
Purple: If you see this color ingame then it means that only the normal texture is applied, and the diffuse is for whatever reason not working.
Black: Means that no texture is applied to the model. The most normal cause for this is that you have run out of memory. Since if you do not have a texture, then the game will automatically go back into its bsa archive and fetch the vanilla one. If it is for a mod with unique textures then it most likely mean that you have not installed the textures at all!
The most common cause for this happening is optimization gone wrong for whatever reason. Automated processes can sometimes fail. It could also be that the installer did not properly install a texture for whatever reason.
Whatever the reason then its a pain to try to find the name of the texture since it is fairly well hidden!
Before we begin the following is required! You need to unpack the meshes.bsa archive! We need to be able to access every mesh in the game. Place these files in a separate location in their own special folder. As long as they are away from whatever other mods you have installed.
Also you will need nifskope. Free program that can be found at http://niftools.sourceforge.net/wiki/NifSkope
You will also need Tes5edit. Free program that can be found at the nexus.
Everything in the game has its own ID number called a FormID. Except for textures more or less. However every single mesh in the game has a formID and the mesh has the texture information stored in it!
So once you see a model ingame that is purple, then what you do is the following.
1: Move up as close as possible to the model.
2: Open the console (Key varies from keyboard layout so your on your own there).
3: click with the mouse on the model.
This will give you a number on the screen, this is the formID of that mesh.
Open up tes5edit. Load in the official .esm files.
Under formID put in the number you just found. This should provide you with the mesh in question.
Vital!!!: Double check that what you find makes sense! For example if you had a purple rock, and the entry describe some sort of FX or shader etc. then something is wrong. (effects can have an ugly tendency to overlap with meshes giving wrong formID´s)
In the colums to the right look for the following.
Model -> MODL - Model Filename
This is the mesh you need to find. Open Nifskope.
Now first try to search your mods, or data folder for the mesh. If some mod made changes to the mesh its vital that you use that.
If nothing is found then you go to the folder you made earlier with all the meshes. It has to be in there then.
Open that file in Nifskope. File -> load
Now you have the mesh loaded and without a texture.
Down in the bottom of the view there is a section called Block Details
Scroll down that list until you find BSShaderTextureSet
Open that and you will get the texture path that the model is looking for its texture in!
That is is people. About the fastest way to isolate a texture outside of practice and getting to know what everything in the game is!
You can also go to the render menu and load up that texture so it displays it in the render window. This is normally a good idea to test out the texture.
In any case you should now reinstall the mod that is responsible for this texture, or just the texture itself. Then you can test it like this again, and see if it is working.
Hope that was somewhat understandable and helpful!
Please do come with advice on how to make it all better so we more people can learn to do this and then we hopefully do not have to answer so many threads about missing textures anymore!