How to create hair morphs

The hair in Oblivion can have 1 morph attached to it. It is controlled by the hair length slider in the character generator. The morph doesn't have to change the length of the hair, it could do anything. e.g. to align the hair to avoid clipping.

What this guide will do is to tell you how to create your own morph. It won't however tell you how to create a hair mesh in the first place, I assume you already know this.


What you'll need.

A working hair nif file. (The file must only have 1 mesh in it).

A copy of NifSkope.

A modelling program that doesn't reorder the vertices. (The only 2 I know of are Anim8or and MilkShape. 3DS Max can be configured to do this as well but I don't know how).

A copy of 010editor.

My 010editor script files.

[Optional] FaceGen Modeller. The Demo or Full version.


What you need to do.

1. Install any of the programs above if you haven't already done so.

2. Load your hair nif into NifSkope. Click on the mesh node and export the mesh to an obj file. I'll call this hairoriginal.obj. Piccy.

3. Load the hairoriginal.obj file into the modelling program. Piccy. Now reshape the mesh into the morph shape. You must be careful not to remove or add any vertices. You can only move the vertices around. When you have the right shape save/export as an obj file. I'll call this hairmorph.obj. Piccy.

4. Run the obj to tri.1sc script file. (You should just have to double click the file and 010editor should automatically start up). It will ask for an obj file to convert. Select the hairoriginal.obj file. Piccy. It will then ask for the name of the tri file to create. Name this the same as your hair nif file. Piccy.

5. Now run the add morph.1sc script. It will ask you for a tri file. Select the tri file you created in the step above. Piccy. It will then ask for an obj file. Select the hairmorph.obj file. Piccy. It will then ask for the name of the morph file to add. This must always be HairMorph. (It will default to this). Piccy. All being well if should add the morph to the tri file. If it doesn't ask you for the name of the morph then the number of vertices in the obj file doesn't match the number of vertices in the tri file. You'll need to try and remodel the morph again.

6. You can try out the morph in the FaceGen Modeller if you want to test it out. Locate the FaceGen directory and copy your new tri file into the csamDefault directory. In FaceGen use the change polys button to select your hair model.

7. You can also adjust the amount the hair gets morphed. Load the tri file into the 010editor and run the TRIfile.bt template. Open the morphdata branch and the HairMorph branch. You can now modify the scale min x,y,z and scale mult. The scale mult is the scale multiplier and increases the scale expodentially. The normal amount for this is between 55 and 57. Anything out of this range will be either too small or too big. The scale min values are for fine tuning the scale.

8. Copy your tri file into the same (oblivion data) directory as your hair nif. The game should now give you the option of adjusting the hair length slider. Piccy.


This is what happens if the modeller reorders the vertices.
Hair at minimal length.
Hair at maxed spikeyness.
An in game screen shot.
Thanks for the post... A request though from those of us (read me) who don't want to purchase yet another hex editor... Could you possibly tell us what exactly the scripts do (which bytes get modified? what the new values are? etc.) so we can use other hex editors to do the same stuff...

Thanks smile.gif

After checking out the script contents, there seems to be a LOT of changes going on. How easy/difficult would it be to write programs to do the same as these scripts? i.e. a little command-line tool to do the convertions, etc?
QUOTE(Breeze582000 @ Nov 27 2006, 09:52 AM) *

Thanks for the post... A request though from those of us (read me) who don't want to purchase yet another hex editor... Could you possibly tell us what exactly the scripts do (which bytes get modified? what the new values are? etc.) so we can use other hex editors to do the same stuff...

Thanks smile.gif

After checking out the script contents, there seems to be a LOT of changes going on. How easy/difficult would it be to write programs to do the same as these scripts? i.e. a little command-line tool to do the convertions, etc?


I've been putting off rewriting the scripts into stand alone programs but it looks like I should give it a go. The scripts are written in a language pretty close to c so converting them shouldn't be a problem. It's just a case of finding the time and relearning how to program in visual c++.

I think the 010editor has a 30 day trial period, so you could use it in the mean time.
Amazing work Scanti!

This thread needs a serious bump.
Breezes modelling skills + scantis morph scripts = a happy Vahi

(Okay, I just didn't want to write a simple "bump" just because this scripts/tutorial deserves one wink.gif)
Added screenshots to the original post.
Wow, this is pretty awesome. This method in combination with your Conformulator could really make existing hair packs look really GOOD! The only thing missing now is Laura Croft-style havoc'd hair. hehehe.

Thanks for these awesome tools!
Submit a Thread