BL 3D Art New to modelling, armor Is invisible in game

Users who are viewing this thread

Lonewarrior

Sergeant
I have generated the Tpac files etc in the editor After opening and exporting from blender, but my armor appears invisible in game?

Not really sure what I’m doing wrong, I’ve tried a few times, even tried just exporting armor to blender from the game and importing it back and the same thing happens.

What am I missing?
 
Last edited:
I’m trying to import some armor I made in blender and when I import it and choose the mesh in the items.xml it becomes invisible in game.

I noticed other armor mods with new models have created .tpac files but there doesn’t seem to be any way of creating them either in blender or the bannerlord mod tools.
So how do I create them?
You don't need to do anything, the resource editor creates tpacs for you. When you import assets, the resource browser automatically puts a copy of the original file in your mod's AssetSources folder and compiles a .tpac version in your mod's Assets folder. Look in your mod's Assets folder. Any texture you imported should be represented as name_tex.tpac and any model you imported as name_geo.tpac.

If you're asking about the read only tpac files in the AssetPackages folder or the editable tpac files in the EmAssetPackages folder, these are generated when a module is packed for client or editor builds (according to Taleworlds Documentation).

If you look on the files menu of the scene editor you'll see an option 'Publish Module'. While I haven't tried it, I suspect choosing that will give you the option of a read-only client or editable build.
 
Upvote 0

Lonewarrior

Sergeant
You don't need to do anything, the resource editor creates tpacs for you. When you import assets, the resource browser automatically puts a copy of the original file in your mod's AssetSources folder and compiles a .tpac version in your mod's Assets folder. Look in your mod's Assets folder. Any texture you imported should be represented as name_tex.tpac and any model you imported as name_geo.tpac.

If you're asking about the read only tpac files in the AssetPackages folder or the editable tpac files in the EmAssetPackages folder, these are generated when a module is packed for client or editor builds (according to Taleworlds Documentation).

If you look on the files menu of the scene editor you'll see an option 'Publish Module'. While I haven't tried it, I suspect choosing that will give you the option of a read-only client or editable build.

Lol I changed the title sorry as I ran into another problem after figuring that out.

I’ve tried following the guide:


But can’t even get past step 1, there is no human skeleton option in my blender which is probably what I’m missing.
Like I said i now have the Tpac files, published it as a module in the mod tools and have an item in an xml file but the armor is invisible in game even though it’s just an armor from the game a made a small edit to and Then imported it back.

Here’s the exact procedure I did:

1. Used Tpac to extract hideous armor.
2. Opened blender and imported the .obj file.
3. Made a small change.(However it is still invisible if I don’t make a change a skip this step)

4. Renamed in blender from hideous_kafa to Wightbladhead On the top right of blender (otherwise it replaces the hideous_kafa helm in game which I don’t want)

5. Exported as a .fbx file to my folder already setup for Assetsources.

6. Opened modding tools and imported it using the resource browser and selected “scan new asset files”
7. My files load and I assign a texture to the armor (however I’ve tried with it without and different textures)
8. Published the mod.
9. Made a new helm in a XML file and under mesh I’ve copy and pasted the name of the file (I’ve tried all, the .fbx and be Tpac name)
10. Started game and helm is invisible.

I also tried increasing the size in case it was really small, have I missed a step?
 
Last edited:
Upvote 0
Lol I changed the title sorry as I ran into another problem after figuring that out.

I’ve tried following the guide:


But can’t even get past step 1, there is no human skeleton option in my blender which is probably what I’m missing.
Like I said i now have the Tpac files, published it as a module in the mod tools and have an item in an xml file but the armor is invisible in game even though it’s just an armor from the game a made a small edit to and Then imported it back.

Here’s the exact procedure I did:

1. Used Tpac to extract hideous armor.
2. Opened blender and imported the .obj file.
3. Made a small change.(However it is still invisible if I don’t make a change a skip this step)

4. Renamed in blender from hideous_kafa to Wightbladhead On the top right of blender (otherwise it replaces the hideous_kafa helm in game which I don’t want)

5. Exported as a .fbx file to my folder already setup for Assetsources.

6. Opened modding tools and imported it using the resource browser and selected “scan new asset files”
7. My files load and I assign a texture to the armor (however I’ve tried with it without and different textures)
8. Published the mod.
9. Made a new helm in a XML file and under mesh I’ve copy and pasted the name of the file (I’ve tried all, the .fbx and be Tpac name)
10. Started game and helm is invisible.

I also tried increasing the size in case it was really small, have I missed a step?
If you export armour from TpacTool using an obj file, you are extracting a static model. You need to export armours as dae files, if you want to retain their rigging to Bannerlord's skeleton. Without that, whatever you reimport will be unable to function with the game's animations. All native materials for rigged meshes have a skinning box ticked in their Vertex Layout tabs. Even for rigged armours, animations won't work unless that box is checked. I have no idea what happens when you apply a material flagged for skinning with an unrigged armour - maybe it just becomes invisible or the helmet lies out of sight on the floor as it's not rigged to the head bone.
 
Upvote 0

Lonewarrior

Sergeant
If you export armour from TpacTool using an obj file, you are extracting a static model. You need to export armours as dae files, if you want to retain their rigging to Bannerlord's skeleton. Without that, whatever you reimport will be unable to function with the game's animations. All native materials for rigged meshes have a skinning box ticked in their Vertex Layout tabs. Even for rigged armours, animations won't work unless that box is checked. I have no idea what happens when you apply a material flagged for skinning with an unrigged armour - maybe it just becomes invisible or the helmet lies out of sight on the floor as it's not rigged to the head bone.

Ok I tried that and it still didnt work.

You cant import .dae files to blender, when you try it gives an error.
(Parsing errors in Document: see Blender Console
And
bpy.context.space_data.recent_folders_active=0)


FULL ERROR FROM CONSOLE:
+-- Collada Import parameters------
| input file : F:\NEW steam Installtions\steamapps\common\Mount & Blade II Bannerlord\Modules\Exports\WIGHT13.dae
| use units : no
| autoconnect : no
+-- Armature Import parameters ----
| find bone chains: no
| min chain len : 0
| fix orientation : no
| keep bind info : no
|! Image not found: hideous_armor_d.dds
| import Image: F:\NEW steam Installtions\steamapps\common\Mount & Blade II Bannerlord\Modules\Exports\black.dds
|! Image not found: hideous_armor_n.dds
|! Image not found: hideous_armor_s.dds
Schema validation (Error): Error: ERROR_REQUIRED_ATTRIBUTE_MISSING Element: texture, Attribute: texcoord, Line: 69, Column: 31, Additional:
The Collada import has been forced to stop.
Please fix the reported error and then try again.+----------------------------------
| Collada Import : FAIL












SO I thought maybe I read that wrong and you didnt mean export from tpac as a ,dae file and import to blender as a .dae file.

I can export from Tpac as .obj and open it in blender
I CAN NOT export from Tpac as .dae and import to blender as .dae

So I tried exporting as ,obj from Tpac, and then exporting from blender as .dae, but the mod tools cant find the file when I look for assets.

The mod tools dont pick up .dae files so it doesnt matter anyway so exporting them this way doesnt work either.


The advice online seems to be to delete the lines in the .dae causing an error using an .xml editor, ive done this and then I can import it to the modding tools, but the item is still invisible.


Ive then followed the above guide and completed it with the modified file where I deleted the error messages, still invisible.

I have also tried every combination of extracting from Tpac (extracting as static or rigged and as a .dae) and none of them work.

At this point I’m not even using modified files, I’m just using the files already in the game to see how to import models, but even replacing in game models with itself makes it invisible.
 
Last edited:
Upvote 0
Ok I tried that and it still didnt work.

You cant import .dae files to blender, when you try it gives an error.
(Parsing errors in Document: see Blender Console
And
bpy.context.space_data.recent_folders_active=0)


FULL ERROR FROM CONSOLE:
+-- Collada Import parameters------
| input file : F:\NEW steam Installtions\steamapps\common\Mount & Blade II Bannerlord\Modules\Exports\WIGHT13.dae
| use units : no
| autoconnect : no
+-- Armature Import parameters ----
| find bone chains: no
| min chain len : 0
| fix orientation : no
| keep bind info : no
|! Image not found: hideous_armor_d.dds
| import Image: F:\NEW steam Installtions\steamapps\common\Mount & Blade II Bannerlord\Modules\Exports\black.dds
|! Image not found: hideous_armor_n.dds
|! Image not found: hideous_armor_s.dds
Schema validation (Error): Error: ERROR_REQUIRED_ATTRIBUTE_MISSING Element: texture, Attribute: texcoord, Line: 69, Column: 31, Additional:
The Collada import has been forced to stop.
Please fix the reported error and then try again.+----------------------------------
| Collada Import : FAIL












SO I thought maybe I read that wrong and you didnt mean export from tpac as a ,dae file and import to blender as a .dae file.

I can export from Tpac as .obj and open it in blender
I CAN NOT export from Tpac as .dae and import to blender as .dae

So I tried exporting as ,obj from Tpac, and then exporting from blender as .dae, but the mod tools cant find the file when I look for assets.

The mod tools dont pick up .dae files so it doesnt matter anyway so exporting them this way doesnt work either.


The advice online seems to be to delete the lines in the .dae causing an error using an .xml editor, ive done this and then I can import it to the modding tools, but the item is still invisible.


Ive then followed the above guide and completed it with the modified file where I deleted the error messages, still invisible.

I have also tried every combination of extracting from Tpac (extracting as static or rigged and as a .dae) and none of them work.

At this point I’m not even using modified files, I’m just using the files already in the game to see how to import models, but even replacing in game models with itself makes it invisible.
I don't know why your models are invisible. However, you can export from the latest version of TpacTool and import it directly into Blender. Download the latest version here - https://forums.taleworlds.com/index...cial-asset-explorer-0-2-0.420848/post-9559670 (the original version had problems with Blender).

Load Tpacs from the AssetPackages file of Native as opposed to the EmAssetPackages file. Select your armour. Export it with the human skeleton, rigged and dae checked. Then reselect dae on the final export screen as a bug defaults it back to obj.

That will export rigged armour that you can import into Blender as a first step.
 
Upvote 0

Lonewarrior

Sergeant
I don't know why your models are invisible. However, you can export from the latest version of TpacTool and import it directly into Blender. Download the latest version here - https://forums.taleworlds.com/index...cial-asset-explorer-0-2-0.420848/post-9559670 (the original version had problems with Blender).

Load Tpacs from the AssetPackages file of Native as opposed to the EmAssetPackages file. Select your armour. Export it with the human skeleton, rigged and dae checked. Then reselect dae on the final export screen as a bug defaults it back to obj.

That will export rigged armour that you can import into Blender as a first step.


Ah man this Doesn’t work either, the method above is one of the same methods I’ve been trying and it’s still invisible even with updated Tpac.
I’ve even tried setting the size to 100 in blender and nothing appears, I’ve followed the instructions and nothing works.
Even replacing the vanilla files with the EXACT same version makes it go from useable to invisible.



I’m going to need someone to make a video of this or something because I must be making a mistake somewhere.

There is only one difference between what I’m doing and the guide that is it says to load “full male body”


There is no file or option anywhere to do this so I import the .dae into an empty file. Where is this “full male body” mesh?
It doesn’t exist in blender or the bannerlord game files.


I tried the skinned body base meshes mod and i just get an error when trying to "parent with automatic weights" which says:
"Warning: Bone Heat Weighting: failed to find solution for one or more bones"
 
Last edited:
Upvote 0
Ah man this Doesn’t work either, the method above is one of the same methods I’ve been trying and it’s still invisible even with updated Tpac.
I’ve even tried setting the size to 100 in blender and nothing appears, I’ve followed the instructions and nothing works.
Even replacing the vanilla files with the EXACT same version makes it go from useable to invisible.



I’m going to need someone to make a video of this or something because I must be making a mistake somewhere.

There is only one difference between what I’m doing and the guide that is it says to load “full male body”


There is no file or option anywhere to do this so I import the .dae into an empty file. Where is this “full male body” mesh?
It doesn’t exist in blender or the bannerlord game files.


I tried the skinned body base meshes mod and i just get an error when trying to "parent with automatic weights" which says:
"Warning: Bone Heat Weighting: failed to find solution for one or more bones"
Clearly, you can now import a dae file exported from TpacTool into Blender. If you exported a rigged armour, the skeleton should be visible inside it. The guide you were following related to the import of armours created outside Bannerlord, which then had to be rigged to Bannerlord's skeleton, not an exported armour that was already rigged.
You may want to look at @John_M 's WIP Documentation on 3D Asset Workflow https://docs.google.com/document/u/0/d/1aHBsO3mzkT0JsbCt9aCOh6CWAFATXwKtSaVb__TYIoo/mobilebasic
 
Upvote 0

Lonewarrior

Sergeant
Clearly, you can now import a dae file exported from TpacTool into Blender. If you exported a rigged armour, the skeleton should be visible inside it. The guide you were following related to the import of armours created outside Bannerlord, which then had to be rigged to Bannerlord's skeleton, not an exported armour that was already rigged.
You may want to look at @John_M 's WIP Documentation on 3D Asset Workflow https://docs.google.com/document/u/0/d/1aHBsO3mzkT0JsbCt9aCOh6CWAFATXwKtSaVb__TYIoo/mobilebasic

Yes the skeleton is visible with the model, but I have also followed the same method with unrigged models and got the same result.
I will look through that document but it looks like it’s just the same stuff I’ve already tried.
Also you said that it was for armors created outside of bannerlord, so in theory if it’s already rigged I could just export the .dae from blender as it is, I also tried this with the same result.
 
Last edited:
Upvote 0
Yes the skeleton is visible with the model, but I have also followed the same method with unrigged models and got the same result.
I will look through that document but it looks like it’s just the same stuff I’ve already tried.
Also you said that it was for armors created outside of bannerlord, so in theory if it’s already rigged I could just export the .dae from blender as it is, I also tried this with the same result.
You need to export it in fbx format from Blender for reimport into the resource browser. If you have the same problems following @John_M's documentation, I'd verify your local files at Steam and or make a bug report.
 
Upvote 0

Lonewarrior

Sergeant
You need to export it in fbx format from Blender for reimport into the resource browser. If you have the same problems following @John_M's documentation, I'd verify your local files at Steam and or make a bug report.

Yeah I recently verified them to see if there was a problem there, both game and editor.
Yes I reimported it as fbx, it then shows up the armor next to the fbx file in resource browser and I can view it and retexture it but it’s still invisible in the model viewer and in game.
One of the guys in discord is gonna walk me through it later and see if he can spot where I’m going wrong.
 
Upvote 0
Yeah I recently verified them to see if there was a problem there, both game and editor.
Yes I reimported it as fbx, it then shows up the armor next to the fbx file in resource browser and I can view it and retexture it but it’s still invisible in the model viewer and in game.
One of the guys in discord is gonna walk me through it later and see if he can spot where I’m going wrong.
That's great. It's easier to follow steps visually. It sounds like a material problem, but I'd be interested to know how you solved it.
 
Last edited:
Upvote 0

Lonewarrior

Sergeant
That's great. It's easier to follow steps visually. It sounds like a material problem, but I'd be interested to know how you solved it.

I’ve made some minimal progress, it seems I forgot to change the settings from mm to m, which now shows the model in model viewer all correct and in the right place, but it still doesn’t show up in game.
So far no one has been able to figure out why.
 
Upvote 0
I’ve made some minimal progress, it seems I forgot to change the settings from mm to m, which now shows the model in model viewer all correct and in the right place, but it still doesn’t show up in game.
So far no one has been able to figure out why.
Are you using your own or a Bannerlord material?
 
Upvote 0

Lonewarrior

Sergeant
Are you using your own or a Bannerlord material?

I’ve tried just leaving the standard materials on it and creating one with the same result.
It’s frustrating and makes no sense, I’ve followed the same method others have and they get different results, no one has been able to help because following the exact same steps works for them.
 
Upvote 0
I’ve tried just leaving the standard materials on it and creating one with the same result.
It’s frustrating and makes no sense, I’ve followed the same method others have and they get different results, no one has been able to help because following the exact same steps works for them.
So, if the model shows correctly in the model viewer, but not in game, what xml edits have you done to get your armour into the game? Importing the asset makes it available for use, but it must be called by an appropriate xml to be used.
 
Upvote 0

Lonewarrior

Sergeant
So, if the model shows correctly in the model viewer, but not in game, what xml edits have you done to get your armour into the game? Importing the asset makes it available for use, but it must be called by an appropriate xml to be used.

I copy and pasted the item xml info from one of my other helmet armors in game (and even tried using a vanilla helm as a template as well as replacing the item with an existing helmet by simply just changing the mesh it’s calling upon) changed the id to testarmorLG, changed the name to 0000aas test armor so it appears at the top of the cheat menu items when sorted by name.
Then changed the name of the mesh to the name of the mesh that appears in the mod tools next to the fbx file when you import it(for example testhead1).
Ive also tried changing the mesh to the name of the fbx file but that crashes the game when I try and equip it.

But like I said before I’ve also tried replacing an already existing helmet without changing anything so I wouldn’t need to edit the xml in that case because it would already be calling upon that mesh with the same name and yet it becomes invisible there too :sad:
Everyone who has helped me is out of ideas at this point, they have followed the same steps and it works for them do I don’t know anymore.

I’ve been asking for someone/anyone to create a video from Tpac export, through blender, mod tools then xml to see if I’ve missed something.
All using the hideous_kafa helm and having it so it’s renamed as a new model as I will be making variations.

I think that’s the only way I’m going to solve what part I’m missing is see the EXACT way as I’ve had 3-4 different versions of the methods given to me so far and none of them worked.
Any chance anyone here can do it?
 
Last edited:
Upvote 0
I copy and pasted the item xml info from one of my other helmet armors in game (and even tried using a vanilla helm as a template as well as replacing the item with an existing helmet by simply just changing the mesh it’s calling upon) changed the id to testarmorLG, changed the name to 0000aas test armor so it appears at the top of the cheat menu items when sorted by name.
Then changed the name of the mesh to the name of the mesh that appears in the mod tools next to the fbx file when you import it(for example testhead1).
Ive also tried changing the mesh to the name of the fbx file but that crashes the game when I try and equip it.

But like I said before I’ve also tried replacing an already existing helmet without changing anything so I wouldn’t need to edit the xml in that case because it would already be calling upon that mesh with the same name and yet it becomes invisible there too :sad:
Everyone who has helped me is out of ideas at this point, they have followed the same steps and it works for them do I don’t know anymore.

I’ve been asking for someone/anyone to create a video from Tpac export, through blender, mod tools then xml to see if I’ve missed something.
All using the hideous_kafa helm and having it so it’s renamed as a new model as I will be making variations.

I think that’s the only way I’m going to solve what part I’m missing is see the EXACT way as I’ve had 3-4 different versions of the methods given to me so far and none of them worked.
Any chance anyone here can do it?
IDK what the problem is. I can only suggest you raise a bug report for Taleworlds Devs to investigate.
 
Upvote 0

Lonewarrior

Sergeant
IDK what the problem is. I can only suggest you raise a bug report for Taleworlds Devs to investigate.

I’m still convinced it’s something I’m not doing right, I don’t think they would be very interested in what’s either a bug caused by another program or something I’ve done wrong, hence why I’m trying to get someone to do a video of what they would do then I can learn from that.
 
Upvote 0

Lonewarrior

Sergeant
Someone finally figured it out.
I extracted form Tpac as .dae and set to rigged.
Then I DO NOT import the full body model to use as reference as it also imports a skeleton which conflicts with my .dae file, even if you delete the skeleton it still causes errors, just a general error from having 2 skeletons present and connected. (at least that’s how it was explained to me)
So:
Extract from Tpac as .dae setting on rigged, make edits I want, change skeleton name by adding “_not used” and also in the submenu of “human_skeleton” change the other “human_skeleton” by adding “
“_not used” to that too.
Change the name of the helm so it doesn’t conflict.
Export as .fbx file to my mod folder under assetsources.
Open mod tools and import assets.
Create item in .xml and Change name of the “mesh” in .xml to the name of the file that appears in the mod tools (not the fbx, the name I changed the helm to in blender).

Seems obvious now, everyone was telling me to import the male body skeleton as well as exporting as .dae from Tpac.
I think maybe they haven’t used the latest version or something but basically it was down to having 2 Skeletons on the model which it couldn’t handle so when you reach the game I guess it doesn’t know what to do and doesn’t show anything? Not really sure.

I had tried the .dae before on its own but I think I exported it as static which didn’t work.
 
Last edited:
Upvote 0
Top Bottom