BODY SHAPING – Tutorial
Want to make your own body shape? Here’s a guide for you!
I roughly go over how to modify a .rig file to shape a base body for Cyberpunk 2077, and some current issues.
Process:
– Step 1: Modifying the rig in Blender as reference (RECOMMENDED, but can be skipped)
I’d recommend exporting a character base mesh using WolvenKit so you can preview/plan your changes.This requires you to already have installed the blender plugin to import/export *.qlb-files.
I recommend using:
base/characters/common/base_bodies/woman_average/t0_000_wa_base__full.mesh
Use the Import Export Tool to export it with Mesh Export Type set to WIthRig, and in WithRig Settings add woman_base_deformations.rig as your rig. Press Confirm, thenpress Confirm again to get back to the Import Export Tool.
Tick the file in the Import Export Tool and press Process Selected.
You will receive (usually helpful) errors if you choose the wrong rig. If you want to modify a multi-rig character, use Multi-Mesh export and add ALL mesh files (included the one you’re editing export settings of) and rigs needed in the multi-mesh settings. Rig Settings can only hold one rig.
Import your file into Blender, select the Armature and go into pose mode. Transform around as you wish,but only the changes to some joints transfer to in-game. Using scale seems safest, but try out position and rotation, no guarantees it will work though.
Known, tested and well functioning modifiable joints(there are more):
(l/r)_lowLeg_back_(A/B)_mscl
(l/r)_leg_back_(A/B)_mscl
(l/r)_thigh_0_JNT
(l/r)_leg_buttock_mscl_JNT
Modifiable but causes unwanted major deformation(NOT RECOMMENDED, more information at the end):
(l/r)_thigh_1_JNT
Generally it seems like the directly animated (main-) joints are not possible to transform by editing .rig files.
– Step 2: Preparing your files in WolvenKit
Make a project in WolvenKit (and do all other necessary setup), or in some other way get the below files into a mod structure. So far I can’t checked if you actually can have different modifications for the player vs everyone else. Feel free to try!
Female rig files:
base/characters/base_entities/woman_base/deformation_rigs/
woman_base_deformations.rig
woman_base_deformations.animgraph
base/characters/entities/player/deformations_rigs_wa
player_woman_base_deformations.rig
player_woman_base_deformations.animgraph
– Step 3: Modifying the rig
Using either WolvenKit or 010 Editor, you can modify what is called “Bone Positions” in 010 Editor, or “Unk2” in WolvenKit.
If you’re in 010, you can see which joint you’re on, which data is position, rotation and scale, and it’s quite easy to modify. Just make sure you already know how to use 010 Editor for modding first.
In WolvenKit (as of writing), you can find joint transforms in Unk2, which contains indexed info. To find out which index is which joint, you can look at “boneNames”, to find the correlating name. The data is ordered in [0] Position, [1] Rotation, [2] Scale.
NOTE: WolvenKit doesn’t have a save button for file modification, so it’s difficult to know when changes have been saved. Closing the file sometimes asks you to save the file. Also it crashes quite often so I’ve been using 010 Editor since it’s better for text editing.
If you did Step 1(highly recommended!), you can simply transfer your values to the .rig file.
HOWEVER, x and y values are seemingly flipped compared to Blender so, from blender values:
X -> Y
Y -> X
Z -> Z
Leave W-values as is(at 1) since they’re only relevant to rotation, unless you know what you’re doing.
Pack your project when you’re satisfied, make sure your archive is in the mod folder, and try it out in-game!