Full guide for Character Mod (WIP) - CDDTreborn/Tekken-8-Resources GitHub Wiki
How to mod tekken 8 (characters)
- Setup UE
- Setup Blender
- python code fix 2a. I advise getting the following addons:
- textools
- psk/psa importer 2b. If 1st time using blender watch a few beginner blender videos on YouTube to get familiar with the software. Also advised to watch a few videos on the following topics:
- Rigging and weight painting
- UV Maps
- Setting up a PBR shader
- Setup Fmodel
- Download base mesh blend files for male and female
- female base mesh
- male base mesh
- Determine the type of mod 4a. If modding an in game asset use fmodel to extract the asset as psk and use a blender addon/extension to import. 4b. If modding an out of game asset import to blender. If the mesh is not fbx, gltf, or obj it may require an additional addon.
This section will continue for importing an out of game mesh.
- Decide if doing a common (multiple chars) mod or unique (specific char) mod.
- For unique, import the msl only base mesh for the character. Import the head for the character as well.
- For common, import the common msl for female/male. Since all heads are setup as common in game u can use the base mesh file or extract it from fmodel. If using the common setup I advise doing the following prep work.
Head prep.
- In edit mode, set selection to faces. Select the head area by hovering over the head and hitting L to select all linked. Hold shift and do the same for both ears. Ctrl+i to select inverse. Hit X then delete faces. You should be left with a hollow head. Hit A to select all then in select menu go to select boundary loops. With loops selected go to mesh > cleanup > merge by distance. If the mesh has triangles then go to Face menu and hit tris to quads...a small black box will be at the bottom left...make sure u select compare uvs, materials, and seams.
Body prep (adding the head) Select the head then shift Select body. R-click then select join. In edit mode, with face select on, hover over the head and Ctrl L to select linked. Then hold shift and do the same for any parts of the body that touch the neck. With these selected go to select menu and choose boundary loops. Go to mesh then cleanup then merge by distance.
Joining the head will un parent it from its rig and it will now be parented to the body rig. Delete the head rig.
Additional prep for common body (Forthcoming)
- Import ur custom mesh
- Align ur common mesh to match the base mesh. If the mesh has an armature then use the armature to scale the body in object mode with a focus on matching up the grain areas and centering it to the tekken nase mesh.
- Once scale looks ok then select the mesh and armature and hit ctrl a, apply all transforms.
- Use pose mode to match the custom mesh to the tekken mesh. Focus on major areas like the hip, knees, feet, armpits, elbow, wrist, breast (females), base of the neck, chin, and head. For the hands and fingers, try and match them up as good as possible. Once posing is done, apply the pose by going to modifiers, armature, then apply pose.
If u are somewhat familiar with blender u can do this bone method. Note: if custom mesh has disconnected parts this method may not work well.
- turn on the built in rigify addon for blender.
- go to add > armature > human.
- scale up the armature to roughly match the tekken mesh.
- select armature ctrl+a then apply all transforms.
- bone edit mode select the left side lower arm, hand, fingers, and the root bone.
- Ctrl+i to select inverse.
- x to delete bones. In bone edit mode set snap to volume and center.
- position the bones to the tekken mesh.
- reference image
- r-click symetrize to get the right side bones created.
- objective model label armature as destination.
- duplicate armature and label it custom/source
- repeat the process with the source armature but on the custom mesh. If ur mesh is symmetrical then turn x-axis mirror so u only need to do it once. If asymmetrical turn on mirror to get a rough match then turn it off and position the right side bones the same as the left.
- once complete select all bones except the root and switch to pose mode.
- with bones still selected go to assign automatic weights by bone.
In object mode select both of ur created armatures and go to pose mode. Select the source bone for the lower arm then the same bone on the destination armature. Turn on mirror. Hit shift-s then select snap to active. Repeat the process in this order: lower arm, hand, pinky 0-3, ring, middle, index, thumb. For the fingers u may need to scale them before snapping. I advise turning it from global to normal then scaling by the axis that points down the finger. U can isolate ur scale by hiting s then the axis (x/y/z) then rolling the mouse up/down. Holding shift while u move the mouse can help be more accurate. The goal is to line up the joints of the bones. If the bones did not mirror correctly, turn off mirror and repeat for the opposing side. Id u positioned the bones well then ur custom mesh forearms, hands and fingers should be very well placed. U may still need to do some additional mesh edits for a cleaner match.
- Now that ur mesh is all matched up u will need to apply the pose like u did before.
- The next step is to transfer weights.
- Select the custom mesh, go to vertex groups and deleta all groups. Select the tekken mesh, then shift Select the custom mesh and with both selected go to weight paint mode. Go to weights and select transfer weights. A small box will be in the bottom left. Set to nearest face interpolated, by name, and make sure it says replace.
- In object mode select the custom mesh, shift Select the tekken armature and rclick parent > armature deform.
- Now select tekken armature and go to pose mode, u should be able to move the bones and ur custom mesh will move to. If ur custom mesh is in parts u will need to repeat this process for all parts. Note: weight transfer may not work well with unjoined mesh but joining mesh may also have undesirable effects. If this is the case then select all parts of ur mesh and hit shift D to duplicate... with all parts still selected hit rclick join...and rename this to something to let u know its joined. Select the dupe and go into edit mode, hit a to select all then mesh cleanup merge by distance. Transfer tekken weights to this duplicate and parent it to the tekken armature. If it looks good and all weights look fine then just use this. If the join messed it up then just transfer weights from ur duplicate to each part of the original custom mesh. Keep whatever custom mesh parts that work for u and clear the rest (delete or put into a separate collection) At this point the mesh is good to export and it's time to work with textures.