Copy rigging to another model Help

I’m beginner in blender, I have knife model that is attached to a human body rigging, I just want to change the knife model to another one but when I do that the animations are lost in game, how can I copy the animation to the new knife? The original model has things like ‘vertex groups’ and ‘armature’ I don’t know what that means can someone help me

The most efficient way would be:

  • Create a collection for the knife;
  • place it the 0,0,0 position;
  • Then add an empty on the scene ( outside the knife collection) and instance the knife collection to it. Empties can instance collections, so that they look like the object but are still just an empty;
    Captura de ecrã de 2025-03-10 14-57-57
    Just select an empty and select the collection like above.
  • Then you parent that empty to the armature hand bone. There’s no vertex painting require, you just parent it to a bone;
  • After this if you want you can create new collections and have one knife in each collection;
  • From that point on you can change the instanced collection on the empty and the knife model will update on the skeleton hand without any further work required.

This may feel weird if you’re not used to instances, but trust me, this is were you want to be :slight_smile:

2 Likes

Thanks my friend! I will try this once I get home, its a mod for a game I’m working on

1 Like

This is good advice, but it’s not going to work in a game engine. OP, for a game engine, you have to use an armature. Look up some basic Blender animation tutorials

2 Likes

Indeed! Thanks for the heads up! I somehow didn’t read it was for a game, but was clearly stated that way! Sorry!

2 Likes

Hey I’m back! somehow I managed to make it work I don’t know how but it is working partially, I followed this tutorial and then linked the armature to the skeleton.

Leon New Knife Model

But now I’m facing another issue, no matter what material I choose in the material options, in-game it loads other textures, it doesn’t happen with standard scenario models. I’m using Cycles because the default EVEE crashes on my machine every time I choose material tab. I’m wondering if there’s a way to reset materials? I already had clicked on the X icon and then created a new one but that doesn’t work. Its almost done just need to fix these material issues.

Normally you need to set the materials featuring only a Principled BSDF shader, using the PBR method in which you use only a texture for Base Color, Roughness and Normal.

  • When exporting to .fbx Base color, Roughness and Normal textures should export correctly with the material, but others like Metallic, SSS, Translucent, etc won’t. Those you need to load by hand on the engine.
  • When exporting to .gltf there’s very specific rules you need to comply

The materials usually do not translate well between content creation software like Blender and game engines. There are like billions of possible combinations of textures and shader inputs which are possible, thanks to the node-based shader editors being the standard. Study your engine of choice’s material system, to be ready to recreate the effect you need.

For example, in Blender, the transparency of the material can be controlled by any type of texture. But Unity’s PBR materials require transparency mask to be the alpha channel of Albedo(color) texture

Good news! I think it is finally working! The materials of models attached to the character may behave different from the static scenario objects. The file that contains the textures of the character including the knife has 33 textures. So I replaced some textures with solid colors to check what textures were being used.

I noticed that when a new entry was added to the knife mtl file, even if the material was not present in the SMD model, the texture used by the knife was the next one. So I was planning to add a 0034.dds texture at the end, and add 33 mtl entries to make the knife use the 34 one.

But that quickly turns out to be not effective as going over some number made the knife use the texture of the room file (the scenario models), and since every room is different a 0034.dds texture in room 100 is one and in room 101 is another, making the texture of the knife change once we change rooms. I didn’t tested but may be possible to add a lot of empty textures, and then the knife texture at a very high index for example 0400.dds being the last one, not interfering with the room original textures.

This way the texture would be the same but would require that process for every single room, so instead I’ve gone for a different approach: use an aparentely unused texture in the texture pack as the knife texture, the good thing is that the number is not so high and that mtl trick works. This still requiring some testing but looks promissing!