Jump to content

SkinInstance puzzle for new saddle


Hoamaii

Recommended Posts

Hi guys,

 

I'm used to creating armors in 3ds and using BSDismember modifier but this time I'm trying to create a saddlebag for my horse. Other saddlebags mods use SkinInstance instead of BSDismember - which I did, though not sure I did it right: I applied directly a skin modifier to my mesh instead of skinwrap, skin, then BSDismember - added selected horse bones to the skin, and exported my models as they were to NifsKope.

 

My bags are attached to exactly the same bones as other modded saddlebags, but still, when in game they keep bouncing up and down my horse instead of smoothly following the saddle movements like other modded bags do... *( Can't figure out what I do wrong, the only difference I noticed are in NiTriShape Data: my nifs have Tangents and Binormals highlighted whereas modded bags don't - I'm not even sure it has anything to do with Skin...

 

Could a compassionate soul give me a quick lesson to this?..

 

Many, many thanks in advance to whomever finds some time to enlighten me!.. (I also plan to create weapons, and obvioulsy they also use SkinInstance instead of BSDismember...).

 

Cheers to all,

 

Hoamaii

 

PS. Ooops, forgot to say: I'm exporting from 3ds Max.

Link to comment
Share on other sites

If you just need a NiSkinInstance node simply do not add the BSDismember modifier to the stack before export. Exporting with just skin modifier will result in a NiSkinInstance. (basically like what is done for skinned meshes for oblivion. )

 

The verts having Tangents and Binormals should not affect anything else besides normal map rendering.

 

however you might need to pay closer attention to the shader flags as there is one for skinned meshes and you may not have it enabled...

Link to comment
Share on other sites

Thanks a lot for replying, Ghogiel :).

 

If you're still around, perhaps you could explain to me the main difference between SkinInstance and BSDismemberSkinInstance? It seems to me it has pretty much the same effect in game on my boucing bags when the saddle isn't. (I think I found out why though, the mod I was using as a study case - "More Saddles" - actually modified the saddle skin to make it fit its added bags skininstances while I was trying to skin my bags to the Vanilla skinned saddle - I'd like to avoid doing what "More Saddle" did though, as it kind of distorts the saddle in game). "Armored Saddles" on the other hand, used a BSdismember modifier, I guess there are no rules in that case, are there?

 

And about flags, they are enabled alright, on 14, though I do not know what the different settings stand for...

 

I'll keep trying :). Thanks again.

Link to comment
Share on other sites

NiSkinInstance just contains vertex bone weight assignments.

 

The difference with BSDismemberSkinInstance and the older NiSkinInstance is one is specific to Bethesda's version of the engine. BSDismemberSkinInstance contains the vertex weights too, but they created it to allow them to deal with body part dismemberment in Fallout 3 and is used for adding skin partitions to face selections of the models, this allows sections of the armor, body, creatures mesh or what ever, to be split at any of the meshes edges and be either removed/not rendered, as in the case of sections of armor/clothing, so as to avoid clipping, eg if you equip a pair of gloves, the polygons at the ends of the sleeves can be disabled from rendering, or allow the section to be bound to a bone chain and break away in a dismemberment action in game.

 

The shader flag I was mentioning is SLFL1_skinned.

this number 14 doesn't mean anything to me...

 

the other thing to try to look at is the partitions in the BSDismemberSkinInstance, other than that I can't think of anything off the top of my head

Edited by Ghogiel
Link to comment
Share on other sites

Oh, thanks again for replying, I get it better now. I was referring to the flag in the NiTriShape data, I didn't think of checking the SLFL_skinned in the BSShaderLightingProperty... I'll check about that, thanks. Partitions were ok, for some reason saddles are assigned to dragon wing slot.

 

And I guess for a saddle then, if I'm not going to use an Alpha channel, it doesn't matter whether I use NiSkinInstance or BSdismemberSkinInstance, right?

 

Very grateful for your help :). Cheers!

Link to comment
Share on other sites

 

 

And I guess for a saddle then, if I'm not going to use an Alpha channel, it doesn't matter whether I use NiSkinInstance or BSdismemberSkinInstance, right?

 

 

Well the alpha channel doesn't have anything to do with this system. It works independently from textures. While an alpha channel can be used in a shader to, I guess you could say, flag what areas the renderer renders, on a per pixel level (texture), this is vertex based.

I guess it's just an integer assigned to a vertex that can be used to flag to the game engines renderer whether or not it gets rendered under certain conditions. (or could just be used in some other way, eg attached to specific bone chains for dismemberment, but not necessarily has to do with a boolean switching of it rendering or not)

 

Whether or not you should use one node or the other would be determined if it works or not :P

IIRC, I am guessing here about years old systems I can't hardly remember how it works, I think you might just need the NiSkinInstance, as the whole partition body part and what slot it fits on as an armor addon can be handled by CK ( there doesn't seem to be a need to partition any of the geometry since you never need to selectively render certain polygons and not others...)

 

but could be wrong.

Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...