Jump to content

Recommended Posts

Nope, not  wrong. Looks like there are two hierarchies in XPSE's skeleton--one is the original with only NPC bones, the other has NPC bones with CME bones in between. I followed artifex0's method of inserting new ninodes between the existing ones (right above the NPC bone I want to affect) and putting the transformations on those. That worked. It has to be in the extended hierarchy, not the original. Based on your post, it's probably not necessary to add the new nodes--probably putting the same transformations on the CME bones would work as well. Maybe it's cleaner to keep my junk separate from the CME junk. Dunno.

 

There are, of course, constraints. The bone has to match the angle of the bone above it or bad warping happens. I think I can move the bone along that line to make the portion of the limb shorter or longer. I think the thighs should be a bit shorter than human. The guy walks and runs just fine... dunno about more, um, vigorous exercise but we'll cross that bridge when we get to it. The skeleton only has one bone for the whole foot, so the toes can't flex, which is a shame. 

 

Next maybe I'll rough in a digitigrade foot and see if it plays nice.

 

If the skeleton only has one bone on the foot, how does the normal foot bend in the game (which it clearly does when you crouch)?

 

I still think the better solution is to just use a combined foot and body mesh replacer.

Link to comment

Okay, I have a khajiit running around on his tippy toes. No new mesh, so it's just the regular foot pulled out to the full length of the hock and it looks like crap, of course. I tried to shorten the thigh with no success--I think the body mesh isn't weighted for that--it's designed to move with the thigh bone and mostly not care where the calf is. I could alter the body mesh, since it can be unique for khajiit, or I could declare that shortening the thigh doesn't matter.

 

Altering the body mesh probably means no armor would fit, since armor is weighted to the bones independent of the body. Same with reweighting the thigh to consider where the calf is. Declaring the thigh can stay the length it is is looking better all the time. 

 

I looked at some animations and they're mostly pretty good, but one cross-legged pose was a bit messed up. I have to check more of those. 

 

The answer for manipulating the bones is to put a new NiNode right above the vanilla node I want to affect. Putting the adjustment on the CME node didn't work because that one is below the vanilla node. Trouble is rotations are relative to the base of the skeleton, so rotating the calf moves the whole thing back relative to the body. You have to then move the x/y location so the top end is back where it started, otherwise the mesh is badly warped.  

 

For boots, I'm thinking to include one light and one heavy craftable khajiit boots. Then put those on the khajiit NPCs in the game. The player can craft their own if they don't want to run around barefoot. Of course, NPCs in any mods probably will still use regular boots, and those will get pulled into odd shapes by the foot mesh. 

Link to comment

If you can make something that looks good, I would do armor conversions.

 

All of them.

 

As far as boots are concerned, I would just make it so the player can't wear normal footwear, but only digitigrade variants. Then, I would also be willing to do boot conversions.

 

I repeat, if you can make something that looks good (and ideally uses the vanilla uvs around the ankle) I will put in loads of work.

 

Same applies for a good plantigrade option. Double if you do something for argonians too.

 

I can also dig up some ref material.

Link to comment

OK, you're on. Woah, wait. You'd do the armor conversions so I can play with the leg shape? Cool. 

 

Not sure what you mean by vanilla UVs around the ankle--SOS unwraps the foot differently from vanilla and I was planning to base my stuff on SOS's method. But in fact, I could do either if it makes a difference to the armors.

 

I'm thinking this is actually going to be a separate mod that affects all khajiit rather than just the player. So I'd thought that the choices were boots that anyone can wear and have a special armor addon for khajiit (so all NPCs wearing vanilla armor are fine) or special khajiit-only boots, and change the leveled lists and outfits so that khajiit NPCs wear these boots (in which case NPCs that didn't get touched wear oddly stretched vanilla boots). Is that what you're thinking, or do you have a different approach.

 

If you're in, I'll do argonians too, why not?

 

Reference material: I tell you what would be good, is some sketches showing what we want. I'll post some of the stuff I've been looking at later this weekend. I'm thinking short thigh and calf, long hock--but that might be too foxy for a cat.

Link to comment

Update: Well, I took a break and looked around at furries, and maybe mucking with the thigh/shin proportion is a bad idea. I collected a bunch at my pinterest and it seems hardly anyone is doing that--and if better artists than I aren't doing it, it's probably a bad idea. Add to that, a few did change the proportions and increase the hock/pastern length, and they pretty much look terrible. There's three on the pinterest page--not only do they not look good, the overall artistry is poor relative to the others. 

 

So likely I'll go with something less extreme and make life easier on everybody.

Link to comment

OK, you're on. Woah, wait. You'd do the armor conversions so I can play with the leg shape? Cool. 

 

Not sure what you mean by vanilla UVs around the ankle--SOS unwraps the foot differently from vanilla and I was planning to base my stuff on SOS's method. But in fact, I could do either if it makes a difference to the armors.

 

I'm thinking this is actually going to be a separate mod that affects all khajiit rather than just the player. So I'd thought that the choices were boots that anyone can wear and have a special armor addon for khajiit (so all NPCs wearing vanilla armor are fine) or special khajiit-only boots, and change the leveled lists and outfits so that khajiit NPCs wear these boots (in which case NPCs that didn't get touched wear oddly stretched vanilla boots). Is that what you're thinking, or do you have a different approach.

 

If you're in, I'll do argonians too, why not?

 

Reference material: I tell you what would be good, is some sketches showing what we want. I'll post some of the stuff I've been looking at later this weekend. I'm thinking short thigh and calf, long hock--but that might be too foxy for a cat.

 

Unfotunately the base SOS unwrap sucks for args and khaj since you lose normal / specular detail. Hence my pref for something with vanilla uvs around the ankle (SAM does this well). Also, hence why I've converted the SOS bodies to the vanilla uvs. Also means that SOS would not necessarily be a requirement for the legs.

Link to comment

Update: Well, I took a break and looked around at furries, and maybe mucking with the thigh/shin proportion is a bad idea. I collected a bunch at my pinterest and it seems hardly anyone is doing that--and if better artists than I aren't doing it, it's probably a bad idea. Add to that, a few did change the proportions and increase the hock/pastern length, and they pretty much look terrible. There's three on the pinterest page--not only do they not look good, the overall artistry is poor relative to the others. 

 

So likely I'll go with something less extreme and make life easier on everybody.

 

Using HDT heels might be another option. Though I also concluded a plantigrade option is probably the easiest path if all else fails. All we have is grimoas stuff which while has an okay shape doesn't really match textures.

 

Link to comment

I don't mind starting with the vanilla feet. I think one's as easy as the other.

 

Turns out what I don't know about skeletons would fill a book. Anyone know how to import the XPSE skeleton? There are various tools but they don't work on it. Seems that the different body meshes only bring the portions of the skeleton they care about, so I had to merge the skeletons of feet and body... then I hand to connect it all so that it would behave like a skeleton. Now I'm just hoping I'll be able to duplicate the repositioning of the bones into nifskope.

 

I've been noticing the oddities with the normal map. If you've got better stuff I'm happy to incorporate it.

Link to comment

I don't mind starting with the vanilla feet. I think one's as easy as the other.

 

Turns out what I don't know about skeletons would fill a book. Anyone know how to import the XPSE skeleton? There are various tools but they don't work on it. Seems that the different body meshes only bring the portions of the skeleton they care about, so I had to merge the skeletons of feet and body... then I hand to connect it all so that it would behave like a skeleton. Now I'm just hoping I'll be able to duplicate the repositioning of the bones into nifskope.

 

I've been noticing the oddities with the normal map. If you've got better stuff I'm happy to incorporate it.

 

Yeah, the SOS normal map for khajiit uses the same normal as what is used for the mer / human males for the feet, so it suddenly goes smooth and has a giant seam. Hence the preference for something that at least has vanilla uvs around the ankles. That's why I have the vanilla UV'd SOS bodies. To enable usage of the default maps with minimal manipulation. Obviously adding toes will change the maps a little bit, but that's easy enough to clean up.

Link to comment

Oh, okay. Yeah, saw that, put fur on the existing version of the tiger's msn. (Learned to paint normal maps in blender, but blender's tools are pretty crude. Ended up painting a rough version in blender and doing the final version in PS.) Still, since you've been working with the vanilla unwrap I'm using that as the basis for these feet. Imma steal your textures from your other post and use those as a starting point--then if you want to clean up it will be less work, hopefully.

 

Edit: BTW, did SOS also mess up the tail normal? It's been bugging me lately with the tiger, but didn't think to check SOS back against vanilla--they're quite different.

Link to comment

Oh, okay. Yeah, saw that, put fur on the existing version of the tiger's msn. (Learned to paint normal maps in blender, but blender's tools are pretty crude. Ended up painting a rough version in blender and doing the final version in PS.) Still, since you've been working with the vanilla unwrap I'm using that as the basis for these feet. Imma steal your textures from your other post and use those as a starting point--then if you want to clean up it will be less work, hopefully.

 

Edit: BTW, did SOS also mess up the tail normal? It's been bugging me lately with the tiger, but didn't think to check SOS back against vanilla--they're quite different.

 

Yeah, the textures I've included have the tail normal fixed as well.

 

Link to comment

I've got a mesh I'm happy enough to go on with:

 

 


tumblr_o460nivcxE1rctv3mo1_540.png

 

 

But as expected skeletons are tripping me up. That mesh is hooked to a skeleton with legs and feet in the right position as the rest position. When I export the foot mesh, it looks the same as in blender. But when I load up in game with the legs in the XPMSE skeleton hacked to be in approximately the right position, the foot is distorted by being offset from the skeleton (and from the body, which I didn't change). So I have to go back and and figure out what configuration of this and that will get the foot rigged in the right relative position to the skeleton.

 

Also too I don't really have any idea how to get the game skeleton into the exact same position as the blender skeleton. There may be some combination of settings that causes the blender rotation/translation to be the same as niftools', but I haven't found out what it is yet. Right now I'm just trying to find something that looks approximately right, then I'll go back and clean up.

Link to comment

How are you exporting the foot mesh in blender? As an OBJ or as a .nif file?

 

 

The way NIF tools imports the files and the way that the bone positions are laid out makes it not straight forward to export values to the game. For other things I did, I found that Negating the X values (Rotations and translations), followed by swapping the X and Y values got it working. To get bone positions working, though, also requires special setup in blender. Without attnetion, translations and rotations of the individual bones are in the "world space" of blender, but on the skeleton in the game, the values are relative to the entire parenting structure (local space). The setup I did was to move all the bones to the 'root' bone's position using the actul Head-Tail position in edit mode (root of whichever nif I imported), parent the bones properly, UN-Checking "Local position"  (or was it "local rotation"..)  on each bone, and then 'unwrap' the position/rotations in the right hierarchical order, in Pose Mode. After moving each bone, do an "Apply as Rest Position" on the bone so that any mesh uses it as then new at-rest position. Doing that meant that the bones all had the correct 'local' rotations and translation values.

 

   If you're going down to the feet, that might be a pain in the ass. I only needed to go 3-4 bones in, not like 15. You might just be able to look at the "world" transformation matrix (for the *parent* of the particular bone you're moving) in niftools (not the local transformation values), calculate its inverse,  get the transformation matrix for your moved bone's new position, then multiply the child matrix by that parent inverse matrix...  I think  >.>   That will give you the correct local transformation matrix for the bone in the skeleton.  You can then pull the X,Y,Z position from the matrix and calculate a Quaternion to enter into Niftools.

   Also, remember that if you mobe multiple bones, you'll have to do this for each bone AFTER moving its parent. Moving its parent in the above way then changes the new relative position.

 

   Transformation matrix for bones on the game skeleton just show up when you click a bone in Niftools. BUT, this is only a partial matrix.. all 3D transformations are actually done with 4x4 matrices, but they are abbreviated for space saving/convenince. In niftools, you see a 3x3 matrix, but use a 4x4 matrix create as follows:

 

[ *  *  *  X-position]

[ *  *  *  Y-position]

[ *  *  *  Z-position]

[ 0.0  0.0  0.0  1.0]

 

   To get the matrix for a bone position in blender, export the nif, open it  in niftools, and see what the the world-space matrix is  (I think). Do the same thing to get a 4x4 matrix

 

   To calculate the inverse matrix:  http://www.cg.info.hiroshima-cu.ac.jp/~miyazaki/knowledge/teche23.html

 

 

Lol... I might also just be totally wrong.

 

Link to comment

Jeez, PG. Maybe I'll take up tiddlywinks. I haven't done that kind of matrix math in ages.

 

I've already parented the bones in blender correctly--the hierarchy isn't really that deep. NPC -> Pelvis -> Thigh or something like that. But I haven't done all that horsing around with rotations and positions. I'm sorta hoping I won't have to--that if I get the calf seam aligned in blender and perform the same operations on body and foot, it will stay aligned in game. Then I can just fiddle the values visually until it looks good. Or maybe I can warp the foot mesh in blender back to the normal skeleton, then let it warp out to my design when it attaches to the modified skeleton in game.

 

boo, thanks for the feedback. I'm going for a lighter look than a lot of the examples out there and may have taken it too far. I'll need to see it in game--and probably live with it a bit--before settling on a final mesh.

Link to comment

I've got a mesh I'm happy enough to go on with:

 

 

 

tumblr_o460nivcxE1rctv3mo1_540.png

 

 

 

But as expected skeletons are tripping me up. That mesh is hooked to a skeleton with legs and feet in the right position as the rest position. When I export the foot mesh, it looks the same as in blender. But when I load up in game with the legs in the XPMSE skeleton hacked to be in approximately the right position, the foot is distorted by being offset from the skeleton (and from the body, which I didn't change). So I have to go back and and figure out what configuration of this and that will get the foot rigged in the right relative position to the skeleton.

 

Also too I don't really have any idea how to get the game skeleton into the exact same position as the blender skeleton. There may be some combination of settings that causes the blender rotation/translation to be the same as niftools', but I haven't found out what it is yet. Right now I'm just trying to find something that looks approximately right, then I'll go back and clean up.

 

*w* theyre looking really good already

 

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