Jump to content

Mesh Rigger (Skyrim, Fallout, Oblivion) Beta.89.f (10-26-2014)


Recommended Posts

Mesh Rigger doesn't touch animations, it just rigs meshes.

 

I have been thinking about porting some of my Blender Pose Converter functions to a stand-alone tool, but that probably won't happen for awhile.

Okay - thanks. I'll see how ambitious I get in the meantime.

Link to comment

Seems some modders are getting more and more careless it seems at times when they are putting their nifs together. _0 might come out nice while _1 will blow up in your face some spew out errors while looking at them in nifskope and everything in the nif is named scene root I have even seen one where the one arm goes through the bodies ass cheek through the crotch back up through the crotch and back out the same ass cheek the body looks like a tea pot. I tried to use the mesh rigger on it and it really blew up so trying to see what it looks like when everything is placed on my players skeleton. Others one nif comes out nice next nif comes out like this. 

 

post-25667-0-07642800-1414286667_thumb.jpgpost-25667-0-72833400-1414286406_thumb.jpgpost-25667-0-79457800-1414286896_thumb.jpg It does look like pasting the original non mesh riggered WTF blow up stuff into a skeleton and then adding TBBP/BBP with mesh rigger makes the outfits come out correctly.

 

*Edit

It does help if you don't have 2 fricken bodies in the same skeleton nif though. :) Made a new whoopsy monster.

post-25667-0-17814000-1414287887_thumb.jpg

Link to comment

Well, worst case scenario, you can always use Clothing Converter to manufacture a new _1 mesh out of the _0 mesh.

 

Just make a lattice using the _0 and _1 versions of the *good* bodies and apply that to the _0 mesh and rename it when it hits the output folder.

Link to comment

What I have been doing since many of the WTF blow ups are coming from the same set is to just take and copy the body branch of one of the ones that hasn't blown up after going through mesh rigger and then delete the bad body branch out and then paste the new body branch in and then save as. I generally just do the _0 bodies and then just make a copy of them after coming out of mesh rigger and naming the copy _1.

 

I tried to see what would happen with the one that has nothing but scene roots but there are too many errors and things skipped so I will just use the 2 that are in the set that are named WIP and use them to replace the bad nifs.

 

I have also had a few that when loaded into nifskope do not show up in nifskope at all the screen stays black but it seems that once it has gone through mesh rigger all is well and it appears in nifskope when loaded.

Link to comment

All of these meshes with completely jacked skinning gets me thinking.

 

OK, most of the time, the vertex space coordinates on these meshes are fine (the coordinates that you see if you look at the individual vertices).

 

The problem is that the meshes are improperly skinned in one way or another (and there are a ton of ways to screw up the skinning of a mesh, from NiNode bind transforms to jacked up skin transforms and weird skinned bone transforms).

 

So, I think I'll add an option to an upcoming version of Mesh Rigger that completely ignores *all* existing skinning, essentially rendering the vertex local coordinates as the world coordinates, regardless of whatever is in the actual mesh.

 

Now enabling this mode, probably 'Ignore Old Rigging' or something similar, would cause a very specific problem that will affect a large percentage of Skyrim nifs.

 

Angry Rant Time

 

Many, if not most, Skyrim nifs use a combination of funky NiNode transforms, Skin layer transforms, and Skinned Bone transforms to re-position the nif in worldspace. Now, you may read that sentence and think...that's crazy. And you'd be right...isn't that sort of transform what the geometry object level transform is supposed to be used for, you might say...and golly gee, you'd win yourself a shiny new gold star.

 

For whatever damn reason, though, vanilla Skyrim nifs use an absolutely crazy method to position the meshes in animated world space (technically armature space) and a very large percentage of the modded nifs out there stuck with the vanilla Skyrim transforms.

 

 

So...this means that any mesh that uses skinning to reposition the mesh will end up in the wrong spot if 'Ignore Old Rigging' is enabled.

 

Fortunately, I've completed the prototype of a tool 'repair position' that will compare a given mesh against a reference mesh and automatically move the mesh to the correct position.

 

Anyways, I'll get started on enabling a 'vertex space' path through my code. Once that's complete, problem meshes should be much easier to repair using Mesh Rigger.

Link to comment

Seems some modders are getting more and more careless it seems at times when they are putting their nifs together.

Would you be willing to send me a few of those monsters, pre-monster of course.

 

Basically just the Template nif you are using and a few of the nasty uglies that have been turning into pure evil?

 

I'd like to see what happens when I run them through my newest dev update.

 

Thanks.

Link to comment

 

Mesh Rigger doesn't touch animations, it just rigs meshes.

 

I have been thinking about porting some of my Blender Pose Converter functions to a stand-alone tool, but that probably won't happen for awhile.

Okay - thanks. I'll see how ambitious I get in the meantime.

 

 

That's something I would use too. It would be most useful if you could add either OP3 or Buttock bone manipulation, which should cover legacy and current Oblivion skeletons and meshes. (There is some limited animation features in NifSkope, but I have yet to find any documentation on how to make intermediate or advanced use of it.)

 

To be the most useful it should be able to copy bone weighting I think too. An even better edition would be to allow altering/editing bone weighting too.

 

Besides being able to add BBB to animations that don't currently have BBB, this would potentially make updating sets like Fore's BBB animations and others that use the older legacy system of manipulating OP3 bones, to the more current Buttock bones.

Link to comment

>To be the most useful it should be able to copy bone weighting I think too. An even better edition would be to allow altering/editing bone weighting too.

 

Do you mean bone priorities, or just a % modifier that could be applied to the transform of a given bone relative to the bind position of that bone across all of the relevant keyframes??

Link to comment

2nd choice; a % modifier. That would allow for easily reducing/increasing the in-game affect of BBB, yes? I think I should have initially written BBB weighting. Or is it the mesh area that gets weighting. I get so confused on how Oblivion 3d models are constructed! I assumed it was bones in animations, which would then affect a specific area of a mesh.

 

What in-game affect would bone priorities produce?

Link to comment

Well, there are three different things at play.

 

1. Boneweights on the nif itself. This operates on a per-vertex level in a somewhat complex fashion.

 

 

A given vertex will be influenced by 1-4 NiNodes (bones)

The relative amount of influence that a given NiNode has on a given vertex is represented by its weight.

The sum of the weights of all of the NiNodes influencing a given vertex *must* equal 1.0.

 

The vertex space position of a given vertex is given by a corresponding vector in the geometry block data. We'll call it vertex_location

 

The world space (animated) position of a given vertex is given by multiplying a bunch of transformation matrices together.

 

It is the sum of the following calculation for each bone weighting that vertex:

 

Bone Weight * [skinned Bone Transform]*[NiNode Transform]*[skin Layer Transform]*[Geometry Block Transform] * (vertex_location)

 

note: NiNode Transform can be either the bind transform of the bone in the nif or the current transform affecting that NiNode given by the active animation.

 

Fun stuff.

 

So, the higher the weight for a particular bone, the greater an influence that the given bone will have on the animated position of the vertex. Let's say you have a vertex that is 75% torso and 25% OP1 and decrease the OP1 weighting by 50%, the net effect would be to set the torso to 87.5% and the OP1 bone to 12.5%, effectively halving the OP1 component of the movement of that vertex.

 

 

 

2. Bone Priorities. In Oblivion, you can have multiple animations active on a given character at a given time. Chances are good that, at any given moment, multiple animations might be trying to influence the position of a given NiNode. The bone priority value determines which animation wins. So, idle animations generally have very low bone priorities, while attack animations generally have very high bone priorities.

 

You can set bone priorities to set the relative priority of the BBB motion of different animations.

 

3. Keyframes. For a given bone, each keyframe for that bone will have a different transform for the respective NiNode. Larger transformations (location, rotation, scale) lead to bigger movements/rotations in the NiNode, which have a corresponding impact on the position of the weighted vertices.

 

OK.

 

So for item 1, I can probably toss something together that would allow you to modify the weighting of a mesh. The back-end code should be fairly simple, just allow you to magnify or decrease the weights of a given NiNode across all of the skinning on the nif. I could also add an option to swap out bones, replacing one bone for another (OP3 to Butt bone, for example) on a per-mesh basis.

 

The back end shouldn't be too nasty. The front end...putting a menu together that lists all of the bones complete with relative sliders, as well as a second menu that somehow allows you to swap bones from one nif for bones in a template skeleton...ugh.

 

So I might make it command line only. I dunno. I'm not sure if I'm in the mood to deal with that much UI chaos at the moment.

 

For Item 2, that should be fairly simple, just a matter of creating a menu that lists all of the bone priorities and allows you to set them, similar to what I wrote for the Blender version of Pose Converter, just designed to work directly with .kf files.

 

Item 3. I've been toying with the idea of porting my BBB motion generator to a stand-alone framework, maybe with a bit more automation...basically have the tool automatically detect the movement of certain reference bones, say, the thighs and pelvis for butt motion and the shoulders and upper spine for BBB and calculate appropriate pre-rendered physics. It should be doable, although there might be some major obstacles in the way that I haven't yet considered.

 

Aside from that, a kf editor that allows you to modify either individual keyframes, or bones on a global basis, should be fairly straightforward.

Link to comment

Yeah, okay it's coming back to me now. As I was reworking buggy Oblivion NIFs in NIfSkope, I made sure to set "A given vertex will be influenced by 1-4 NiNodes (bones)" to 4 via Make All Skin Partitions. If there are more than one bone influencing that set of vertexes that can be reduced to < 4.

 

So for 1 Boneweights on the NIF, I would drop the swapping of bones; OP3 for Buttock, most especially if it is a UI nightmare. For Oblivion there is the latest Setbody set of resources (from Movomo I think) that includes almost every body available AND sets for OP3 and Buttock. Users would simply need to make use of the appropriate upper/lower body combos AND OP3/Buttock sets. (Those would also be used to add required OP3/Buttock bones to Armor/Clothes, exactly part of my production/rework process now.)

 

For the remaining UI I was imagining something like the existing (currently still working with ~Tools_beta_0_81) MeshRigger UI when you display bones for selection, but it could be scaled back to just BBB bones, no? What other boneweights would anyone what to apply BBB too? None that I can think of. And can it be made to automatically adjust the non-BBB vertex area; in your example: 75% torso and 25% OP1 and decrease the OP1 weighting by 50%,? So that the remainder in that example would automatically be added to the torso? (Or in other case subtracted.) I'm trying to think of ways to minimize the UI requirements, as IMO not all of it really needs to be viewed and set by a user.

 

 

Link to comment

...

I'm trying to think of ways to minimize the UI requirements, as IMO not all of it really needs to be viewed and set by a user.

I agree with all of that. I was hoping for something similar to Mesh Rigger that could port breast, butt (both OP3 and buttock), and breathing animations from a template .kf to a target.

Link to comment

Yes, exactly my thinking too. I'd like to use the existing weighting bone influence of vertices in Fore's NoMaaM Animation Theatre (there are 3 levels you can select from), which is OP3 based to the more current Buttock bone based. Reworking that in Blender is way too tedious and time consuming for the number of files involved.

 

I was thinking this would be a good addition/extension to MeshRigger. A sort of one-stop-shop. Rework mesh, then move forward to rework the animation, test, rinse, repeat. For those that now have libraries of reworked meshes (like me), they can still use this for animation rework, and if issues popup with the mesh + animation combo, just rework it on the fly.

Link to comment

Greetings.

 

Hi & @♠ Gerra6.

 

Wouw a lot of different versions in a short time ... so , i'm in  "trouble" with that .... as i already said , " RC" ( Release Candidate) is usually the last version before the final version ... and there is ( are ?)  a lot off " RC" since the first i've tried (  but the "Clothing Converter " only )  a few months ago ( the RC 0.72 ... to the last i've tried , the  version 0.85a) .

Anyway , i was a little confused in the Mesh Rigger  section ( change log)  of your new link : there is no comment for the version 0.89h ... so i suppose that we need to install the version 0.89e first , upgrade to the 0.89f, upgrade once again to the version 0.89g , and  " jump " to the upgrade  version 089.i ... is that right ?

 

Well another confused thing is that it seams that all the downloads are the same ... so i've downloaded first all the downloable files for the " Clothing Converter " ... before "re"- download the files for the Mesh Rigger and once again the files for the Seam Mender ... ;°)

 

... after that it seams that these downloads concern only one tools ; the " Tools RC 089.x " ! 

Is that true ? ... or do i need to install these three different tools in three different folders ?

 

Well it's not a big problem here where i can post you some comments , but for the users from " That Site Over There "  where i also put some links to your  new blog , that could make them a little " confused " .

 

Cheers.

Link to comment

2. Bone Priorities. In Oblivion, you can have multiple animations active on a given character at a given time. Chances are good that, at any given moment, multiple animations might be trying to influence the position of a given NiNode. The bone priority value determines which animation wins. So, idle animations generally have very low bone priorities, while attack animations generally have very high bone priorities.

 

You can set bone priorities to set the relative priority of the BBB motion of different animations.

 

This would be very useful as lots of Oblivion animations have rather idiosyncratic bone priorities and fixing them in NifSkope is tedious and using Blender is taking a sledgehammer to a nut.

 

I have yet to find a 'sexy sitting' animation that didn't need it's priorities changing.

Link to comment

Greetings.

Yeah, I need to clean things up a bit in the way I'm presenting things on http://kgtools.org/

 

Basically, If you're running the portable version, you need the big package:

 

Portable Version (32 bit) 089.e

 

Any upgrade packages will upgrade 0.89.e (or any other full portable installs) up to the version of the upgrade.

 

The Seam Mender, Clothing Converter, and Mesh Rigger downloads are the same packages, with all of the same scripts, etc. So you only need one of them to get all of them.

 

BTW, the kgtools *should* allow you to post comments, questions, etc. *Although* At this point I'm looking at over 1000 hits (and about 150 downloads) and no comments, so maybe the comments section isn't working properly.

Link to comment

 

2. Bone Priorities. In Oblivion, you can have multiple animations active on a given character at a given time. Chances are good that, at any given moment, multiple animations might be trying to influence the position of a given NiNode. The bone priority value determines which animation wins. So, idle animations generally have very low bone priorities, while attack animations generally have very high bone priorities.

 

You can set bone priorities to set the relative priority of the BBB motion of different animations.

 

This would be very useful as lots of Oblivion animations have rather idiosyncratic bone priorities and fixing them in NifSkope is tedious and using Blender is taking a sledgehammer to a nut.

 

I have yet to find a 'sexy sitting' animation that didn't need it's priorities changing.

 

 

I think most people bump up the priority because they don't want another animation to interfere with the animation they made. For animation like lovers with pk it is understandable since you do not want the npc to be doing anything else while they play that particular animation.

 

As for idle this should not be done bones needs to have lower priority since it would look weird if an npc suddenly decided to walk but the feet animation cannot kick in. they will now slide instead of walking.

Link to comment

 

Greetings.

Yeah, I need to clean things up a bit in the way I'm presenting things on http://kgtools.org/

 

Basically, If you're running the portable version, you need the big package:

 

Portable Version (32 bit) 089.e

 

Any upgrade packages will upgrade 0.89.e (or any other full portable installs) up to the version of the upgrade.

 

The Seam Mender, Clothing Converter, and Mesh Rigger downloads are the same packages, with all of the same scripts, etc. So you only need one of them to get all of them.

 

BTW, the kgtools *should* allow you to post comments, questions, etc. *Although* At this point I'm looking at over 1000 hits (and about 150 downloads) and no comments, so maybe the comments section isn't working properly.

 

Hi there.

 

Hi Gerra6

 

Thank you for your fast reply.

 

I already got these tools but in a separate way here ( and of course probably older versions ).

I really only tried your Tool Clothing converter ( but 085a , and on another computer) , so i need your last version with the machine i use at this moment .

 

Not tried your "comment section" at your blog , just because i don't like to " switch " between a lot off sites/blogs  : here , at the Nexus , Micosoft TechNet ( or Answers in some cases)  and Kaspersky Lab , is enough for me ... most of the time i "ll forget that i've posted a comment somewhere ... so i prefer here because it's easy to follow the comments you made  ... at the Nexus i rarely use the forum section ( a go there only if i receive a PM)  so it's difficult to follow a comment you posted in the " Comments section " of a topic .

 

Fejeena provide tonight a feet to match the new UNPK-HGEC body  and she wrote she made it with the Seam Mender , and that gives me the idea to try your Seam Mender too ( i already tried only one time an old version , but without success ...) .

 

Anyway , cheers.

Link to comment

 

 

2. Bone Priorities. In Oblivion, you can have multiple animations active on a given character at a given time. Chances are good that, at any given moment, multiple animations might be trying to influence the position of a given NiNode. The bone priority value determines which animation wins. So, idle animations generally have very low bone priorities, while attack animations generally have very high bone priorities.

 

You can set bone priorities to set the relative priority of the BBB motion of different animations.

 

This would be very useful as lots of Oblivion animations have rather idiosyncratic bone priorities and fixing them in NifSkope is tedious and using Blender is taking a sledgehammer to a nut.

 

I have yet to find a 'sexy sitting' animation that didn't need it's priorities changing.

 

 

I think most people bump up the priority because they don't want another animation to interfere with the animation they made. For animation like lovers with pk it is understandable since you do not want the npc to be doing anything else while they play that particular animation.

 

As for idle this should not be done bones needs to have lower priority since it would look weird if an npc suddenly decided to walk but the feet animation cannot kick in. they will now slide instead of walking.

 

 

 

 

 2. Bone Priorities. In Oblivion, you can have multiple animations active on a given character at a given time. Chances are good that, at any given moment, multiple animations might be trying to influence the position of a given NiNode. The bone priority value determines which animation wins. So, idle animations generally have very low bone priorities, while attack animations generally have very high bone priorities.

 

So that, with Symon's and D_ManXX2's posts in a nutshell explains why under certain Lovers animations, evil NPCs continue to try and caste spells, even those temporarily resurrected ones with RaperS. Interesting...

Link to comment

Fejeena provide tonight a feet to match the new UNPK-HGEC body  and she wrote she made it with the Seam Mender , and that gives me the idea to try your Seam Mender too ( i already tried only one time an old version , but without success ...) .

Well, if you try the stand-alone version of Seam Mender, please let me know how it goes. It's been a bit neglected on the testing side compared to Mesh Rigger and Clothing Converter.

 

The next beta of Seam Mender will probably include my new Mesh Position Repair code, which can be used to automatically line up offset meshes.

Link to comment

 

Fejeena provide tonight a feet to match the new UNPK-HGEC body  and she wrote she made it with the Seam Mender , and that gives me the idea to try your Seam Mender too ( i already tried only one time an old version , but without success ...) .

Well, if you try the stand-alone version of Seam Mender, please let me know how it goes. It's been a bit neglected on the testing side compared to Mesh Rigger and Clothing Converter.

 

The next beta of Seam Mender will probably include my new Mesh Position Repair code, which can be used to automatically line up offset meshes.

 

Hi there.

 

Hi Gerra6 .

 

I don't know when i 'll test your Seam Mender ( just because Fejeena already did it and give me what i wanted ... )

.... http://www.loverslab.com/topic/36394-unpk-oblivion/page-2    ... post 33 ...

 

...but conratulations for your new version " RC tools 089e " , i only used it without the others upgrades- to convert two nifs for the UNPK-HGEC body ( Gooboo's GBEC body) ... and only with all the parameters by default ( for the Lattice and the Clothing Converter)  ... it's incrdible what your converter can do !

 

Cheers , and don't worried if i found some issues i will send you a message.

Link to comment

Awesome.  I'm glad to hear it's working.

 

I'm about a day or two out from releasing a new version.

 

The main update to Mesh Rigger will be the ability to tell the tool to ignore pre-existing skinning on a target mesh and rig/weight the nif using vertex coordinates only.  *Ordinarily* this is a very bad thing, as the real-world location of the verts is often very different than the unskinned location.  However, for meshes with bad skinning, ugly bone deformation, 'exploded' meshes and the like, these nasty problems can often be eliminated simply by discarding the existing skinning and re-rigging it from scratch.

 

I'm also patching in that ability into an updated version of Seam Mender, sort of a Mesh RX mode that will be able to automatically discard the existing skin, compare the seam locations to a reference mesh (the seam template), move the entire mesh to line up with the seams, reskin the mesh, and then mend the seams.

 

Clothing Converter is going to get some significant user-customizeable improvements in the way that it handles Skyrim weight slider meshes (morph meshes).  In particular, it will be possible to include both _0 and _1 nifs in the same lattice.  The tool will automatically keep the transforms and search lattices for the _0 and _1 meshes separate, but stored in the same file.  When the lattice is later applied to a mesh or a folder, the tool will automatically use the appropriate lattice for each mesh (either _0, _1, or neither).  Hopefully, this should streamline some of the workflow and eliminate one recurring source of confusion.

 

On the wishlist, but not yet fixed.  There's a bug that affects the UV search on meshes where the UV maps intentionally overlap, such as the HGEC version of Roberts Feet for Oblivion.  I'm planning on adding some code that will improve the algorithm that selects the best fit from among overlapping UV maps.

Link to comment
  • 3 weeks later...

I must be missing something here on the installation. I have the proper version of python and pyffi, but any time I try to run any .bat or .py file nothing happens. The .py files just close with no warning. The bat files show me what's going wrong. At first it kept saying it couldn't find python, so I pointed the bat file to the right place. But now it says it can't find pyffi. I don't even know how to fix that. It's disappointing, because I had an older version working many months ago before I got a new SSD, and I can't use this tool anymore.

 

EDIT: I got it to work by placing it in the same folder as pyffi, and making sure that the version of python was 32bit (the 64bit version kept giving error). But now, no matter what kind of mesh I use, it says it's not a valid template. Does it work differently than the older version I used where all I had to do was select the mesh of an armor and it would copy the bbp/tbbp to the target mesh?

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

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

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. For more information, see our Privacy Policy & Terms of Use