Porting 3d objects to Cyberpunk
How to replace an in-game item with your custom mesh
Last updated
How to replace an in-game item with your custom mesh
Last updated
Published: Oct. 14 2023 by Last documented Update: Mar. 20 2024 by
This page will give you information on how to get a 3d object into Cyberpunk.
If you'd like to watch a video about the whole process, feel free to address the video version of this guide - https://www.youtube.com/watch?v=r3nyFm-9h9o
You can find other relevant guides scattered across this wiki, for example
AMM: Textured items and Cyberpunk Materials using Custom Props
Wolvenkit Blender IO Suite(>= 1.5.5.2 for Wolvenkit 8.14)
Blender (>= 4.1 for Wolvenkit 8.14)
A , so that you can pack your mod
For the purpose of this guide, it doesn't matter if you are trying toReplace a player item with an NPC item, creating AMM: Custom Props or Adding new items. You will overwrite an existing in-game mesh, the file path doesn't matter.
If you are creating props, you use a mesh from the template project or grab any static mesh from the game.
Do not take equipment item or weapon meshes — those include a bunch of extra data that you don't need (the armature). You don't need it, and it can have side effects.
As this guide will focus on equipment items, you can skip Step 3 and 4 completely.
If you want V to wear the item that you're currently porting, it needs to move with the player. For that, you need an armature. This guide will show you how to acquire one.
You will delete fewer meshes if you read all of the sections below before starting.
Begin by picking a game mash from the right slot. If you're porting shoes, pick a shoe mesh, if you're porting glasses, pick a glasses mesh – you get it.
For the sake of future you, pick an in-game item that is as close to your new garment as possible. If you're porting boots, take boots and not slippers. If you're using a baggy sweater, pick one of those or a jacket rather than a skin-tight t-shirt.
Make sure to use an item with the correct armature. You can identify them by prefix in the path:
male rigged
_pma_
_ma_
female rigged
_pwa_
_wa_
Search for something like this:
For torso items, you can add t1
for inner torso items (tight-fitting) or t2
for outer torso items (worn above t1).
If your mesh won't export from Wolvenkit, try unchecking the following box(es) in the export settings (by unchecking the boxes):
The mesh count in Blender corresponds to the submesh/chunk count in Wolvenkit. In Cyberpunk, we have one submesh per material that we want to use.
If you don't know what that means, ignore the information for now - but few meshes use more than five. The current maximum is the player base body with a total count of ten submeshes per , so to be on the safe side, we need to stay below that.
If you want to get fancy, check out Step 2 in the guide about ported items and Cyberpunk materials. Otherwise:
Select all meshes but one by shift-clicking them in the Outliner at the topright of your viewport
Select the last mesh
Join the meshes together (Shortcut: Ctrl+J
)
This section will show you how to get the following end result:
one or more mesh(es) with names from submesh_00_LOD_1
, consecutively numbered
parented to the right armature
There are two strategies that you can use. Personally, I use Strategy 1: Replacing the 3d data, since it will retain most of the original mesh's properties.
By the end of this section, you should have something like this:
No matter which strategy you use, we need to get the prerequisites done first. We need an original Cyberpunk armature.
Clean up any residual modifiers and transforms (we don't want them):
If your mesh has an armature modifier with a non-Cyberpunk armature, delete it
(click on the x
in the modifier panel)
If your mesh is parented to anything that is not a Cyberpunk armature, unparent it:
Select the mesh(es)
Select Unparent (Hotkey: Alt+P
)
Select the second option "Clear Parent and Keep Transforms"
If you are doing this, you can skipStrategy 2: Parenting the meshes.
We start by deleting the original's vertex data.
In , select all of the original meshes.
Switch to Edit Mode (Hotkey: Tab
)
Make sure that all vertices are selected (Hotkey: A
)
Delete all vertices (Hotkey: x
, option: Vertices)
Switch back to Object Mode (Hotkey: Tab
)
We'll merge our new meshes into the empty containers now:
Click on your new mesh
Click on the empty original mesh in the Outliner (yes, order matters)
Join them (Hotkey: Ctrl+J
)
Repeat the same for all meshes that you want to import to Cyberpunk.
If you need more submeshes, simply duplicate an existing one (Hotkey: Ctrl+D
, ESC
) and change its name by incrementing the number. Make sure it still ends in LOD_1
, not in LOD_2
— that will tell the game it's low-poly, and cause it to be hidden until you're further away.
That's it. All your meshes are parented to the armature now.
If you are doing this, you can skip Strategy 1: Replacing the 3d data.
We can simply parent the meshes to our existing armature:
Click on your mesh
Click on the Armature object in the Outliner
Select Parent (Hotkey: Ctrl+P
)
Select "Armature Deform"
Make sure to rename your mesh: Wolvenkit doesn't know what to do with meshes that aren't part of the sequence starting at submesh_00_LOD_1
. (Blender's .000 suffixes will be ignored)
You can delete the original meshes, or you keep them for Step 4.
Start by deleting all vertex groups from your new mesh, as we will now replace these and don't want anything funky to stick around to destroy our re-import:
You now need to transfer the weights from your original game mesh. If you deleted or overwrote the armature's original meshes during Step 3: Parenting the mesh(es), you can simply import it again for a second copy.
The Wolvenkit Blender IO Suite has a function to do this for you. For the sake of completeness, the box below contains the full manual process, but we recommend using the plugin's Mesh Tool panel to do this.
Nobody likes weight painting.
This is what you need to do if your mesh moves unevenly or if parts of it are clipping through the body although things are fitting correctly. Pray that you don't have to do it, because it sucks.
If you're unfortunate, you can find a guide on Weight Painting for Gonks!
… or maybe not. Maybe you should try Troubleshooting your mesh edits now.
If everything worked, here are a few more guides that you might want to look into:
R&R: Refitting (step by step) will teach you how to refit for a certain body mod
Adding new items will walk you through the steps of adding your mesh as a new piece of equipment
AMM: Textured items and Cyberpunk Materials using Custom Props will tell you how materials work, and how you can use them to texture your item
To bring 3d data into Cyberpunk, Wolvenkit needs a .mesh file to import into. .
You can use the in the to find meshes.
For where to export a mesh, see
For how to export a mesh, see WKit Blender Plugin: Import/Export -> ->
Once you are done, you can find the exported glb in your project's raw folder (see or for details).
For how to import a mesh into Blender see WKit Blender Plugin: Import/Export -> ->
Import the result of Step 1 into Blender (see the Wolvenkit Blender IO Suite's documentation about )
See the Wolvenkit Blender IO Suite's documentation about
See the wiki about