3ds Max/Guides/Dismemberment

From NifTools
Jump to: navigation, search

Contents


This guide is describes one procedure used to add dismemberment partitions to Fallout 3 skinned meshes. BSDismemberSkinInstance is a custom blocked added by Bethesda to the NIF format for holding information related to how a body will fall apart when being killed in VATS mode.

The dismemberment partitions are used to tell the engine what parts of the mesh can be selected in VATS as well as how to dismember the body when it is destroyed.

This procedure may not be the optimal strategy but is a technique that can be used.

Software

Software used during this procedure was 3ds Max, and NifSkope.

Download

The NifTools Max Plug-in can be downloaded from http://www.niftools.org. Click on the Downloads link in the navigation pane to download the latest release from the sourceforge website.

Basics

Getting Started

Ensure you have setup for Fallout properly: Configuring Max for Fallout

Setting up the Model

I'm going to assume that you have a model that is already rigged using the Skin Modifier and just needs dismemberment and meat caps added.

I'm going to take an existing model from Bethesda for an example since I'm lazy and dont actually have anything of my own to legally redistribute.

I've selected the meshes\creatures\brahmin\brahmin.nif model because it has a couple of common features. First, it is a single mesh with a single texture and second it has many possible limbs to dismember.

1-3-20094-02-25PM.jpg

Adding BSDismemberSkin Modifier

Select the main mesh geometry and then from the Modify rollup pick the BSDismemberSkin Modifier. This will add a new modifier in the pipeline.

1-3-20094-08-13PM.jpg

From here we want to create our first partition, it does not matter which one but what we want to do is ultimately select every triangle and assign each face to a partition.

When first created there is already a partition but if we need to we could use the + button to add a new partition for use to modify.

1-3-20094-23-02PM.jpg

Interface Sidebar

A few notes about the BSDismemberSkin Modifier and how it behaves.

The BSDismemerSkin Modifer creates a subobject for each partition created and displays that in the pipeline window. You can select the items by name and that will allow you to edit that partition. If you select the root then you are removed from the edit mode. (You can also change this mode by selecting the selection Face/Polygon/Element in the rollup under the body part. When ever one of those buttons is depressed then you are editing the partition selection.

Note that this is important since if you select the blank space in the your editor windows it will deselect everything and kill your hard work. Thankfully, Undo and Redo is fully supported so if you do this you can use Edit | Undo (Ctrl+Z) do fix this.

The Selection interface is pretty much the same as the Mesh Select and Mesh Edit and other modifiers that allow selecting faces except that I have removed the Vertex and Edge selection modes since they are not useful for this application.

The Element selection mode is very useful with some meshes as it already does some partitioning for us. I usually use that first and then fine tune selection using the Face mode.

Material selection can be useful if you have partitioned you materials on the mesh using several materials that happen to correspond to parts of the mesh that are also body parts.

Note that Ctrl+Select will add or remove additional faces while normal click will simply assign the selection. Alt+Select will only remove selections.

About Body Parts

There are SaidenStorm has a nice guide to the body partition index list. Basically what the identifiers go where.

Partition Index List

There 5 major types:

Type Alias Description
Main Section This is the Torso or severed part. These do not interact with meat caps.
Torso Section Body This is part of the torso that faces the severed part of the limb.
Torso Cap Body Cap This is the side of the meat cap facing the torso.
Section Cap Section Cap This is the side of the meat cap facing the severed limb.

I've altered the notation for the max tools so that it is easier to fit in the limited space of the combo box.

Main Section: Torso

We will do the Torso first since it is the largest body part. What we want to do at this point is create several partitions and assign faces to only one partition.

I choose the Torso because I will lazily select everything for the torso. This is because algorithm I use only allows a face to be added to one partition. If a higher number partition uses the same face as the first then the later partition will override the first. So I can select everything for the torso and then trim down from that.

The algorithm will add additional partitions to the end if you miss a face though I don't actually know what will happen to the game if you allow this to happen. Probably crash since that is its default action so try to ensure every face is selected once.

1-3-20094-36-25PM.jpg

Doing things this way also allows you to iteratively test as you go along.

Left Leg

We will do the Left Leg next, though it does not really matter which you do first or last to the Fallout engine though as stated in the section above faces in more than one partition will be treated so that they only show up in a single partition.

This is the part of the leg that will fly through the air when severed.

What I did here was use the Element select to select most of the left leg and the used Alt+Select to prune down the selection.

1-3-20094-51-06PM.jpg

Body | Left Leg

Now to finish off I need to add the upper part of the left left that will attach to the meat cap. I'm not sure why this is different from the Torso but I'm sure the engine must use this distinction for something.

1-3-20095-13-18PM.jpg

Left Leg Limb Cap

With the main part of the left leg done, I will create a meat cap. This is separate mesh that is the first of 2 meat caps. This is the mesh that will be made visible when the limb is severed and will be displayed on the limb side.

For this I clone the bramin mesh in its entirety and then delete the dismember instance. This is useful since the skin mapping will be retained. I can then change the textures to textures\gore\MeatCapGore01.dds or something similar. I use the Editable Mesh tools to select everything but the left leg. Then delete.

I've noticed that Bethesda sets the Material Specular value to pure white for the meat caps. Not sure this is good since I think that is what creates that annoying shine that sometimes the meat caps have. Anyway I change that just to be consistent.

Before fully deleting the leg I clone it so that I can create the Body cap from the same work with less effort.

1-3-20095-41-31PM.jpg

Now just trim cap down to a reasonable size. Add the BSDismemberSkin Modifier and select everything and change Body Type to Section Cap | Left Leg.

1-3-20095-47-43PM.jpg


Left Leg Body Cap

Now we need the body side of the meat cap. This is the mesh that will be made visible when the limb is severed and will be displayed on the body side.

I take the clone from limb cap and repeat the process but with Body Cap | Left Leg instead. Note that there is some overlap between the two meat caps.

1-3-20095-55-25PM.jpg

Rinse and Repeat

Now theoretically I would do this for the other limbs. Bethesda even combined all of the legs together into the same mesh for instance.


Export

Now export.

There are a couple of settings that are important.

1. Ensure that Enable Multiple Partitions is checked.  If not then the BSDismemberSkin will note properly export.
2. Disable Add Accum Nodes since we are not using animation at this time and don't need the extra nodes.
3. Check Update Tangent Space
4. Check Flatten Hierarchy.  This gets rid of warnings in the GECK.
5. Check Remove Extra Bones. This gets rid of warnings in the GECK.
6. Generate Strips and Generate Partition Strips are optional.

1-10-20095-07-23PM.jpg

Personal tools