Fixing Invisible Meshes for Fallout 4
Some people (including me) are experiencing the invisibility bug in Fallout 4: for some reason some custom / modified meshes are invisible in game. In my experience it is related to the mesh having one or more bones attached to it that actually have no weights (they can have no weights from the beginning or the exporting process from Blender or 3ds Max has removed them).
Meshes invisible in game
In my case I have experienced the invisibility bug with several items, and, until now I have been able of fixing them and make them visible in game. I have used two different methods to fix this.
The first method that works, in my experience, is to check the mesh in Blender and delete all the vertex groups that have no weight attached ot them in any part of the mesh.
For example: I deleted the Vertex groups SPINE 1 and SPINE 2 of the trousers. Those two vertex groupds had no weight assigned in that particular mesh. Deleting them made the mesh visible in game.
Once you've deleted the extra vertex groups, repeat the process of exporting the mesh from Blender.
The second method, that also works, is to check out the mesh in NifSkope and fix the problematic bones there. This has the advantage thatyou don't have to repeat all the exporting process.
- Load your mesh in NifSkope and expand the BSSubIndexTriShape node, and then the subnode BSSkin::Instance as shown in picture Correct bone parameters
- Then select the BSSkin::BoneData node and in the lower window expand the Bones item.
- Select each of the bones and if they are correctly defined you will see a sphere in the preview window as the one shown in picture Correct bone parameters
- Check all the bones until you see one (or more than one) without a sphere as shown in picture Incorrect bone parameters
- Then expand the Bone data, and the Bounding Sphere data as shown in picture Incorrect bounding sphere
- You will see that the Bounding sphere has odd values for the center and the radius like the ones shown in picture Incorrect bounding sphere, where the wrong bounding sphere values are encircled in red and the ones of a working bone are encircled in green.
- Change the bounding sphere values to the right ones for that bone (you can copy the right values for that bone from another mesh), as shown in picture Fixed bounding sphere and that will make the mesh visible in game.
Probably, what happens here is that the nif exporter doesn't know what parameters to assign to a vertex group with no weights and enters incorrect data. That would explain why both methods achieve the same goal, either deleting the problematic vertex groups in Blender before exporting or fixing them in NifSkope afterwards.