Jump to content

Some models appear black when importing into Blender


Crash180

Recommended Posts

I understand this is a pathing issue where Blender can't find the materials but I have noticed from importing a variety of nif's that the texture and material paths vary. The ones that import with visible textures use a relative path while the ones that appear black use an absolute path. Also in Nifskope the visible ones have a BSShaderTextureSet which is absent from the black ones. I tried recreating this path and placing the necessary materials and textures there but it did not work. So I have a couple questions.

  1. Is there a way to make the absolute path work like I tried?
  2. Each layer of the imported models have their own .mat file. If I link the associated .dds file under Base Color->Image Texture in the materials properties it all looks good. Is this a working solution or a problem waiting to happen?

path.jpg

Link to comment
Share on other sites

I bet you are using pynifly. As nice as it is to have, it comes with flaws & a stubborn author.

1. It only looks at the texture set, ignoring the material.

2. it expects the textures\blah\blah.dds files to be relative to the path of the mesh, truncated at .\Data\

3. it does not check if the texture is actually there, nor does it use the path set for textures in blender.

 

Note:
Only opaque textures turn black, anything with transparency turn completely invisible.

 

I reported all of this long ago and told author the textures fail frequently, especially as I keep my own nifs separate while working on them, but still use vanilla materials & textures.

But that's where textures should/must be according to the author.

 

Afaik, a full path doesn't work any better. It cuts everything before & up to the \Data\ and replaces it with the one from the mesh. The game-engine does a similar thing. (Some vanilla nifs contain full paths and they still work, although the path does not exist)

 

Re-linking the right dds files is a "working solution" within blender, BUT keep in mind that although the materials are not used/displayed it does store them on import and re-adds them on export.

Changing the texture this way will be a "problem waiting to happen" as you will get to see the textures from the material everywhere, instead of the one you added to the texture set.

 

I usually import a nif after making sure a material is present, preferably, and a texture set to correspond with it (mandatory). (which both is not always the case)

 

In case of sets, I now put them inside my exported data folder (on a separate drive, not under fallout install) I import one. Make sure the textures are ok and rename the .mat to match the texture name. Then import the rest and set the texture .mats to the same ones. So they all use the same .mat for the same texture. Saves a lot of copies & clutter.

Change one and you change all. Otherwise you'll have a truckload of *.mat.001 to *.mat.999.

 

Sometimes (especially on individual nifs) I just replace the material node for a correct one using Nifskope afterwards.

 

Keep in mind that nifskope, CK & the game will all ignore any textureset unless no material is set. This is the 'reverse' of what you get in Blender!

 

Edit:

BTW do not copy/paste but create duplicates. When you copy a mesh blender will also copy the material & texture. Leaving you with long lists of copies. When using duplicate, it uses the same as original. Saving you from the clutter.

Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...