Symon Posted October 14, 2015 Posted October 14, 2015 Converting Skyrim meshes to Oblivion Introduction This is a guide to converting Skyrim meshes to Oblivion meshes, retaining the UVMapping and using the Skyrim textures. It is aimed at people who are experienced with both Nifskope and Blender and uses Gerra6's stand-alone 'Convert Pose' Tool. As always there are no screenshots, in part because I despise them and in part because if you need screenshots, you are probably not conformable enough in either Nifskope or Blender to accomplish this. If you aren't familiar with how a Nif Should look for Oblivion, this procedure probably isn't for you. A) Before you begin, think about what you need to convert and what Skyrim textures you will want to retain. If the gloves, boots or any other geometry are nothing special, you'll be better served by using other Oblivion assets. In which case you may not need those meshes or the corresponding textures. Work out what you'll call the textures in Oblivion. A detail texture named texture_d.dds becomes texture.dds; normal maps usually don't need renaming and glow maps should be renamed from texture_em.dds (or similar) to texture_g.dds. Note that Skyrim uses some textures (cubemaps for example) that Oblivion does not so ignore these. You might also find when you get a mesh in game that some glow textures look very poor in the Oblivion engine so just discard them. Decide on the Oblivion body type you will convert the mesh to use. Some will work better than others depending on the Skyrim mesh and whether you'll convert the 0 or 1 version of the mesh. Think about the slots you want the Oblivion mesh to use. Some are obvious but in some cases you might put a collar in the necklace slot or it might be better to ultimately combine it with the upperbody meshes. Sanitize the mesh: Sanitize the mesh in Nifskope as always. Remove any bogus nodes, combine properties and crop to branch if required. Remove any nodes you do not wish/need to convert such as Skyrim bodies or collision meshes. Save this nif under a new name, such as meshop.nif (Oblivion Prep). C) Use Convert Pose to prepare the mesh: Run Convert Pose.bat Click File -> Target Options -> and select either the File(s) or the folder that you want to process Click Game -> and select the game that you want to convert from and to. Game->Skyrim Pose To ->.Oblivion Pose. Click OK. The tool will automatically convert the mesh pose to be compatible with the selected game. It usually does a pretty good job of this but you may need to make some extra adjustments in Blender after importing it. D) Prepare the converted mesh for import into blender 2.49b Open the T-Posed NIF in NIFSkope Delete ALL nodes, except for the Sceneroot, NiTriShape and NiTriShapeData nodes. This retains the geometry and the UVMap. Running remove bogus nodes again after removing the NiSkinInstance Node will speed this up by shedding the bones. You can retain some other nodes such as NiAlphaProperty if you find it helpful. Go to View -> Block List -> Show Blocks in List In the NiHeader node, change "User Version" from 12 to 11. Change "User Version 2" from 83 to 34. Save the NIF - now it's ready for import into blender E) Import to Blender. First import a suitable Oblivion body or partial body mesh in one layer. You may wish to join mesh pieces to assist in Bone weight copying. Import the converted Skyrim mesh that you prepared. (It is often useful to import into another layer and move the import between layers to inspect it with the body or without at need). Then select each mesh piece and remove vertex doubles as there can be a lot of these. F) Make mesh adjustments. Unless you are very lucky, you will need to adjust the imported mesh. Moving it on the Y and/or Z axis is very common. Rescaling the entire mesh slightly may also be advised. You may find you want to slightly rotate the mesh on the X axis. Most tedious of all you may often need to adjust vertex positions slightly, probably using proportional editing. G) Re-weight Select the mesh of the Skyrim armour/clothing (right-click and do make sure all vertices are selected) and also select (using shift-right click) the corresponding body mesh of the oblivion body (e.g. for a shirt select the upper body) With the 2 meshes now selected, go to Object -> Scripts -> Bone Weight Copy Choose a quality of 3, press the 'update selected' button and then start the copy. Repeat for every piece of the Skyrim mesh. This may take a while, possibly hours so be patient. H) Assign the textures to the Skyrim mesh In object mode for each Skyrim mesh: Under Link and Materials, you may need to delete spurious materials. Hit the Delete button if you see "1 Mat 1" or similar text. Continue pressing Delete until there are no more materials. Press the "New" button to create a new material Select the "Shading” tabs by pressing F5. At the far right, under "Texture", press the "Add New" button. Select the "Map Input" tab and choose the "UV" button, and enter "UVTex" in the text box Press F6 to go to the "Texture Buttons" panel and Choose "Image" for Texture Type from the dropdown. Press the "Load" button and choose a texture file from your oblivion Data\Textures directory for this Skyrim mesh (you may wish to copy the Skyrim textures for your meshes to the oblivion Data\Textures beforehand or choose a temp texture and adjust in Nifskope) I) Final export Select all the Skyrim meshes and import the Oblivion skeleton from the Oblivion body mesh, parenting selected. Press <ctrl-A> and select 'scale and rotation to ob data'. Then export the mesh as normal for Oblivion. Final notes. It's not uncommon to spot some clipping when you actually try the converted mesh in game. I inspect it in NifSkope before having a suitable character wear it in game and then cavort about in third person. You'll often spot some clipping or other imperfection so just re-import the Oblivion Nif back into Blender and start fixing things as you would normally. You may also need to use Gerra6's tools or Blender to redo the weighting of rigid objects or problematic geometry such as collars. I've found Gerra6's mesh-rigger script can do a significantly better job on anything that meets the chin than the vanilla-blender bone weight copy. Credits Gerra6 for his tools and scripts kosukosu1 for the initial notes on how to do this.
gregathit Posted October 14, 2015 Posted October 14, 2015 AWESOME!! Thank You!! I hope to try this out soon.
Symon Posted October 16, 2015 Author Posted October 16, 2015 You'll inflate my ego too much! Anyway, just to prove lack of divinity, I've corrected a minor typo (possibly the results of a cut'n'paste error).
Nobex Posted December 15, 2015 Posted December 15, 2015 Hi Symon, First thanks for this guide! I tried to port a piece of clothing for my character and this is my first attempt. Everything was pretty good in Blender (even checking body weights by moving the whole thing in pose mode) and i think in nifskope too, but in game... it looks weird like floating around and inside the body. I wanted to link some screens and the nif file for you to look at but i'm apparently not allowed to do so. If you have any idea on what or where i messed up i'll be thankfull
Guest endgameaddiction Posted December 15, 2015 Posted December 15, 2015 You can, but you need to have 2+ post count to unlock some features. Big Board of Fun is usually a nice place to start.
Nobex Posted December 15, 2015 Posted December 15, 2015 Great i can show you the thing! Here some screenshots And the nif file: Test.nif
Symon Posted December 15, 2015 Author Posted December 15, 2015 Looks OK. Looks like you just need to tweak (tedious at times). One thing always worth trying is Gerra6's Mesh Rigger Testsy.nif
Nobex Posted December 16, 2015 Posted December 16, 2015 Used the mesh rigger but nothing changed. When my character moves the mesh moves really in a strange way like an exaggerated balancing move as if it was attached to a bone and not to the body. Don't know how to explain this cleary , if you want a video i can make one. I forgot to say that i replace a mesh of a big clothing mod. Maybe i should place it in standalone mod that have to create?
Symon Posted December 17, 2015 Author Posted December 17, 2015 Just tried your conversion in game. Looked good to me - no clipping or strange behavior when I ran or walked about. I'm tempted to say it is the esp your 'borrowed'
Nobex Posted December 18, 2015 Posted December 18, 2015 Okay , i've put it in a chest to test in my mod but it still has this weird behavior. I don't think it's the gnd i copied a lowerbody elven armor in the CS and i've kept the same gnd in the world object path. Thanks anyway for taking time to check out, i think i'll give up this time^^
Symon Posted December 19, 2015 Author Posted December 19, 2015 Thank you, although it's a long time since I was paid to program. These days I'm more of a Network admin.
Smidolon Posted March 8, 2017 Posted March 8, 2017 I know it's been 2 years since the last post, but whenever I try to import the .nif into Blender I got the following error: Blender NIF Scripts 2.5.9 (running on Blender 249, PyFFI 2.1.11)pyffi.nif.data:ERROR:Reading <class 'pyffi.formats.nif.NiNode'> failedTraceback (most recent call last): File "D:\Anwendungen\Blender 2.49b\Bin\Blender\pyffi\formats\nif\__init__.py", line 1387, in read block.read(stream, self) File "D:\Anwendungen\Blender 2.49b\Bin\Blender\pyffi\object_models\xml\struct_.py", line 354, in read attr_value.read(stream, data) File "D:\Anwendungen\Blender 2.49b\Bin\Blender\pyffi\object_models\xml\array.py", line 291, in read raise ValueError('array too long (%i)' % len1)ValueError: array too long (4294967295)Traceback (most recent call last): File "D:\Anwendungen\Blender 2.49b\Bin\Blender\.blender\scripts\bpymodules\nif_common.py", line 1235, in gui_button_event self.gui_exit() File "D:\Anwendungen\Blender 2.49b\Bin\Blender\.blender\scripts\bpymodules\nif_common.py", line 1598, in gui_exit self.callback(**self.config) File "D:\Anwendungen\Blender 2.49b\Bin\Blender\.blender\scripts\import\import_nif.py", line 3771, in config_callback importer = NifImport(**config) File "D:\Anwendungen\Blender 2.49b\Bin\Blender\.blender\scripts\import\import_nif.py", line 176, in __init__ data.read(niffile) File "D:\Anwendungen\Blender 2.49b\Bin\Blender\pyffi\formats\nif\__init__.py", line 1387, in read block.read(stream, self) File "D:\Anwendungen\Blender 2.49b\Bin\Blender\pyffi\object_models\xml\struct_.py", line 354, in read attr_value.read(stream, data) File "D:\Anwendungen\Blender 2.49b\Bin\Blender\pyffi\object_models\xml\array.py", line 291, in read raise ValueError('array too long (%i)' % len1)ValueError: array too long (4294967295) In NifScope I have reset the values in the header-section and deleted everything except 0NiNode, X NiTriShape, X NiTriShapeData, X LightingShaderProperty, X BSShaderTextureSet, X NiAlphaProperty. If I delete more the cuirass starts to disappear. Edit: Could it be that NifSkope 2.0 isn't up for the job? Because I'm using 1.1 now and managed to import a Skyrim-Mesh into Blender. Weird.
Bowjobs Posted June 7, 2017 Posted June 7, 2017 at least you upload all the tools you're using so that people will easily do this job done imo
Recommended Posts
Archived
This topic is now archived and is closed to further replies.