作者:tkwlee
來源:遊俠論壇
首先準備3dsmax和nif外掛程式,還有nifskope。
找到一個髮型模型導入到3dsmax中。
接著再導入原版的頭部模型,我這裡以女性頭部模型femalehead.nif為例。記得順便勾選導入骨骼。
調整新的髮型模型,使其各適合天際的頭部模型。一般從老滾4裡的頭髮,只要縮放為108%,絕對座標編移設為:x:0 y:-2.5 z:117.049 即可。
接下來刪除頭部模型。
選中新髮型,打開蒙皮修改器,開始蒙皮。
原版中提供了4個骨骼用來決定頭髮的動作,不過如果頭髮比較短,或者為了省事,只要綁定一個NPC Head [Head]骨骼就夠了。但要注意,在以後用nifskope複製資料的時候要修改NiTriShapeBSDismemberSkinInstance下的Num Bones為實際用到的骨骼數,Bones下的列表為具體用到的骨骼序號。
先添加骨骼NPC Head [Head],再添加NPC Spine2 [Spn2]脊椎,NPC L Clavicle [LClv]左鎖骨和NPC R Clavicle [RClv]右鎖骨。
左右鎖骨影響跟肩部較近的頭髮的運動,脊椎影響身後長髮的運動,頭部Head則影響大部分頭髮的運動。
完成蒙皮工作。
我這裡只用到兩個骨骼,NPC Head [Head]和NPC Spine2 [Spn2],像長髮這種,如果你偷懶只用一個骨骼會造成頭髮插入身體的現象。
選擇BSDismemberSkin Modifier修改器,選中Torso,按一下下面的sel Unused按鈕。
匯出為nif,注意選項如下設置。
我這裡保存為tkwleehair01.nif
做到這裡可以關閉3dsmax了。
雙開nifskope。準備好原版的頭髮nif文件一份,分別在兩個nifskope視窗裡打開。
我這裡選用了hair18.nif為例。
ps:如果此處沒有勾選Generate Strips則下面就不需要多一步把strip轉為shape了。
在tkwleehair01.nif窗口裡的NiTriStrips上右擊->Mesh->Triangulate,好了,現在NiTriStrips變成NiTriShape了。
點擊NiNode,在下方表格的Name上右擊選擇Edit String Index,輸入原nif的名字,這裡為Hair18.nif。同樣修改NiTriShape上的Name為Hair18。這裡如果不修改一致,下面的複製資料是會失敗的。
接下來就是複製資料。先在tkwleehair18.nif窗口裡選中NiTriShapeData,右擊->Block->Copy,再在Hair18.nif中選中NiTriShapeData右擊->Block->paste over。
按同樣的方法,複製BSDismemberSkinInstance下的NiSkinData和NiSkinPartition。
點中hair18.nif視窗中的BSDismemberSkinInstance項,在下面的表中修改Num Bones為實際使用的骨骼數,這裡設為2。
展開Bones清單,在不需要的Bones上把值清掉,然後,在Bones上右擊->Array->Update,更新資料。
這裡還有一個需要注意的地方,Bones清單裡骨骼的順序要和你蒙皮的時候骨骼的順序一樣!
修改BSLightingShaderProperty下的BSShaderTextureSet下的表項,設置好所用到的貼圖的位址。
接下來的一步也很重要,如果想讓頭髮能調整發色,就需要設定NitriShapeData下的has vertex Colors為yes,此外下面的vertex Colors也要詳細設定。
保存hair18.nif完成。
hairline18.nif中為發根,修改方法與hair18.nif相同。不過你可以用一個空的模型代替。