Edited mesh crashes Skyrim

Post » Thu Jun 21, 2012 3:17 pm

I've edited an existing (modded) mesh in Blender following the Skyrim Nif Import/Export tutorial. I've followed both the html and video tutorial.

The only thing that seems different than the tutorial is when I go to save the uv map in blender - in the tutorial it shows an image of the mesh in the uv part of the split screen, but my mesh doesn't show a uv map on that part of the screen (just an empty box). It also doesn't show a uv map on the unedited mesh. I still follow the tutorial and save the "blank" uv map - but then some sort of map appears in the bottom left, so I think something is happening.

I'm not getting any errors during the editing process, and seemingly successfully save and copy the nif into the correct Skyrim folder (the existing mod mesh works fine in that directory, so mine should too) - but when I run Skyrim, the game loads but when I coc to the location it crashes to desktop instantly. When I revert to the existing modded mesh, it works fine.

I've tried this whole process several times today (being doing it for 9 hours now including the minor mesh edit) and am getting quite depressed!

Is there anything obvious I'm missing?
User avatar
Jack Bryan
 
Posts: 3449
Joined: Wed May 16, 2007 2:31 am

Post » Thu Jun 21, 2012 9:23 am

Depending on the edits you made you shouldn't have to re-UV map the mesh.
If you added parts to the mesh, you need to give it a material and texture, then UV the new part.
If it's just moving vertices around, it should be fine.

In the UV editing window, you need to load up your texture image. Image > Open, find your texture. If it doesn't show up right away, use the little box with an up and down arrow to select it. In the 3D window view, you need to be in Edit mode with all the vertices selected to have the UV map show up in the UV editor window.
User avatar
Laura Shipley
 
Posts: 3564
Joined: Thu Oct 26, 2006 4:47 am

Post » Thu Jun 21, 2012 12:42 pm

Thanks for your response - I was in edit mode and the entire mesh was selected, but there was as empty box with gridlines where the tutorial showed a mesh in the uv window. It was like this with the original modded mesh before I edited it, so I don't think it should be a problem - unless something awry has happened in the export from nifskope. Which texture image do you mean to load in the uv window? The dds texture that comes with the original mesh, or the tga file created when I tried this earlier? Apologies for my confusion.

If it makes a difference, the mesh I'm editing is a new creature added by another mod.

I deleted some vertices, could this be causing the issue? There was a bit sticking out of the model I wanted to remove, so manually deleted vertices until there was a small hole where the bit sticking out was before. I didn't "fill in" the hole as I was unsure how to do this and it wasn't a priority, woould be happy just to get the model working in game.
User avatar
keri seymour
 
Posts: 3361
Joined: Thu Oct 19, 2006 4:09 am

Post » Thu Jun 21, 2012 3:08 am

Yes, I mean the .dds file that goes with the mesh.
If you've put the textures in the same texture path that the mesh is looking for, it should load automatically. If it can't find the texture path, all you'll see is the box with the grids. Did you click the little box with the arrows to find it?
If you're texture is in another path, you'll have to go Image > Open and scroll to find it on your HD.

Does the mesh look fine in Nifskope?

Also, just to be clear, are you exporting a nif or an obj file from Blender? (Blender cannot export Skyrim nifs)
User avatar
Sami Blackburn
 
Posts: 3306
Joined: Tue Jun 20, 2006 7:56 am

Post » Thu Jun 21, 2012 10:11 am

Yep, the mesh looks fine in Nifskope at the end of the process - I see the creature with the edited mesh and it seems to be textured correctly in Nifskope. This is why I'm surprised it crashes Skyrim!

I'm exporting the file from Blender as a Fallout 3 NIF as in the tutorial (but I also had to uncheck the stripify option to make sure Trishape is maintained - the tutorial didn't say to do this but if I don't then it says TriStrip in Nifskope and I can't follow the rest of the tutorial correctly.

Edit: one other thing that differed slightly from the tutorial is that when I tried to convert BSShaderPPLightingProperty to BSLightingShaderProperty there was no option to do this (just BSShaderProperty which Nifskope gave a warning on when I selected) so instead I created a new block with the correct BSLightingShaderProperty and then associated this block with the properties of the NiTriShape.

Tutorial as follows:

Spoiler

Preface:
This guide will teach you how to prepare a nif for import into Blender (how you must trick Blender into reading your nif properly), what to do once inside Blender (though an in-depth guide on how to 3d edit is not included and will not be supported in any way), and what to do once you export from Blender to get the nif in a format the game will read properly. This method will leave the model completely weighted and rigged how it was when you imported, so at that point it's basically just like editing for any other game, you know with bone weight copies and whatnot, it's just these few extra steps to get things in to Blender and out of it again in a format Skyrim can work with.

This tutorial assumes you have basic working knowledge of Blender and does not aim to teach you how to use the program completely. The aim of this guide is simply to cover the import and export of fully rigged nifs. I will not provide Blender support whatsoever. If you need help learning Blender I suggest checking out the free http://en.wikibooks.org/wiki/Blender_3D:_Noob_to_Pro wiki book. If you're committed enough, you can learn how to use it in a day with that guide. I did.

Required Utilities:
Python 2.6.6 (32-bit): http://www.python.org/ftp/python/2.6.6/python-2.6.6.msi
PyFFI 2.1.10 (32-bit): http://sourceforge.net/projects/pyffi/files/pyffi/2.1.10/
Blender 2.49b: http://www.blender.org/development/release-logs/blender-249/
Blender Nif Scripts 2.5.8: http://sourceforge.net/projects/niftools/files/blender_nif_scripts/2.5.x/2.5.08/
Nifskope (1.1.0-rc1+throttlekitty's nif.xml known to be working): See http://skyrimnexus.com/downloads/file.php?id=3790 section of Nexus page.
Prepare .nif for import:
First of all, open Nifskope and click Render > Settings > General and set the Startup Version to 20.2.0.7 if it isn't already.

Next, we're going to open up the NiHeader and make the following changes...
User Version: 12 -> 11User Version 2: 83 -> 34

Next, we want to delete BSLightingShaderProperty because Blender can't import it. So select it, then hit Ctrl+Del.

SAVE. We are now done with preparing our .nif for import.

Note: If you aren't sure how to even get the nif in the first place, then you need to get a program called Fallout Mod Manager and use the BSA Browser included. If you do not own Fallout 3, you're going to need to do some file renaming wizardry where your copy your Skyrim exe and rename the extra one to Fallout 3's exe name and there maybe some other file you need to create, and then you'll be able to install FOMM and it'll work. I won't be covering that in this guide, sorry!
Now, once we're in Blender...
import with default Fallout 3 settings - [img]file:///C:/Users/Anthony/Desktop/Blender-imp-exp_1_2/pictures/vertex-buttons.png[/img]
(click to enlarge)

Right. So, in the above image you can see where the Delete and Assign buttons are. You can also see the area you will need to click to type out a name for the New vertex group you created. The up/down little arrow button there shows all of your vertex groups - don't mess with anything that doesn't start with BP_ unless you know what you're doing because this is your weighting.

The reason we're using BP_TORSO is because this is a name that the nif scripts will export properly as a part of your mesh as a dismember partition. If you're working with bodies, a few more names you will use are BP_LEFTLEG and BP_RIGHTARM.

Once we've created the new BP_TORSO we have to assign the faces to it that belongs to that particular dismember partition. To find these dismember partitions we need to open up the original mesh in Nifskope and we'll find them like so:
(see pic)

Ahh, yes, finally. We're almost done now!

Tip: If you're fairly new to modding, you might find it useful to be able to copy weighting from one object to another. This was very commonly used in modding for all the other games. So, I'll just very briefly cover that for you... Once you import your new object you right click the object that will be weighted, shift right click the object to weight from, Object>Scripts>Bone Weight Copy, quality 3, hit ok. Then it'll run for a little bit and your thing should be fully weighted. Then right click the object, shift right click the armature (skeleton), ctrl+p (parent to armature), don't create groups, ctrl+a, apply scale & rotation. It may not be perfect or anything, but it should be pretty decent assuming they're fairly similar in shape and whatnot.
Fixes in Nifskope afterwords...
open in nifskope

right click BSShaderPPLightingProperty
Block > Convert > Bethesda > BSLightingShaderProperty
select NiTriShape
Num Properties > 0
refresh it (little green recycle looking icon)
delete everything but shader & save

after save...
User Version: 12
User Version 2: 83
NiTriShape > Property Link 1 (to BSLightingShaderProperty's #)

NiTriShapeData
BS Num UV Sets > 1
Has Normals > no

BSDismemberSkinInstance
Partitions > Partitions> Body Part
BSDismemberBodyPartType (match to vanilla #)

If you check the partition in the original instead of something like BP_TORSO it will have a number. For the body it is 32. So you will replace BP_TORSO with 32. What we assigned BP_LEFTLEG is 38 and BP_RIGHTARM is 34, so assign those appropriately. If you're editing a different mesh, obviously you will need to check that dismember partition and see what number it uses and use that.

Now before we go to the next step, let's just make sure we have both of these flags checked for all of these partitions:
[img]file:///C:/Users/Anthony/Desktop/Blender-imp-exp_1_2/pictures/flags.png[/img]
(click to enlarge)

delete BSLightingShaderProperty
open a modified mesh (or vanilla if there aren't any yet but those are screwy a lot of times so use one from a modified mesh if possible) NiTriShape>BSLightingShaderProperty >ctrl+c
NiTriShape>ctrl+v
NiTriShape>Property Link (# of shader's node)

Save.

And now we are done. Congratulations. Hopefully this has been helpful!

P.S. Please don't message me on Nexus asking for help... I already have to combat my inbox size as it is, so if my inbox gets flooded with people asking for help with this I will cry T_T. I don't know very much about the technical Blender & Nifskope stuff anyhow, I'm more of a texture person. I just barely scraqe along with Blender & Nifskope as it is, lol. So please keep all questions and problems in the comment thread and you'll get a much better and faster response from the rest of the community who know more about this stuff and can help you!

Credits:
  • 2pac4eva7 for the video tutorial and momentous level of amazing help he's given me; <3 him! you should too :tongue:. He discovered basically everything on his own, and all information provided here is from him, all I've done is organize it all and present it in an easily viewable format to help out the community.
  • Nifskope Team
  • Bethesda
  • Blender contributors
User avatar
Jesus Duran
 
Posts: 3444
Joined: Wed Aug 15, 2007 12:16 am


Return to V - Skyrim