Bip01 and Bip01 NonAccum

Post » Sun Oct 24, 2010 11:51 am

Hi I'm building a new skeleton for a creature and I'm a little confused about these 2 very important bones. The tutorial I read on creating the skeleton says that after creating the Bip01 (or in my case 02 for a ridable creature) bone i need to...

"In side view (Num3) grab the top of the bip01 bone and move it so that the bone extends from the origin straight to the right along the y axis. Hold ctrl so that you know it is exactly on the y axis. Make it end 1-3 units along the y axis."

and then when creating the NonAccum bone I

"Once you have added the bone switch to side view (Num3) and adjust the end of the bone by grabbing it in edit mode and extending it straight along the y axis. It will occupy the same position as the Bip01 bone, so make sure you make it a little larger so that it is easy to select either bone."

However I've noticed this doesnt match up to what I've seen in existing skeletons. Look here...

http://i136.photobucket.com/albums/q189/arkham666/skeleeton.jpg

the positions of these bones aren't the same as the tutorial suggests so do I need to keep the bones the way they suggest in the tutorial or do I need to alter them to these positions?
User avatar
JD bernal
 
Posts: 3450
Joined: Sun Sep 02, 2007 8:10 am

Post » Sun Oct 24, 2010 2:03 am

IIRC the Bip01 bone is supposed to be the parent of Bip01 Pelvis, and the Bip01 NonAccum has no children. You appear to have them chained together Bip01->Bip01 NonAccum->Bip01 Pelvis. Disconnect and re-connect and you should be able to fix the positional stuff.
User avatar
Brooks Hardison
 
Posts: 3410
Joined: Fri Sep 07, 2007 3:14 am

Post » Sun Oct 24, 2010 1:51 pm

When creating a custom skeleton, the Bip01 and Bip01 NonAccum must be positioned at 0,0,0 and rotated to point along the positive y-axis. (Just read the http://cs.elderscrolls.com/constwiki/index.php/Blender/Custom_Creature#Adding_the_Armature_.28skeleton.29.) The reason why this differs from vanilla skeletons has to do with the way the animation export scripts work: if you use any other orientation or location, you will end up with errors in your animation (strange rotations and 'sunken' animations). The vanilla animations used different exporters that didn't suffer from this limitation.

Incidentally, the process is different when you want to create animations for vanilla skeletons (instead of custom ones). In that case, you have to adjust the rotation and elevation of these bones in your animation because you can't alter the vanilla skeleton. The information is located in the http://cs.elderscrolls.com/constwiki/index.php/Talk:Blender/Creating_a_Character_Animation for Blender Character Animations.
User avatar
Flutterby
 
Posts: 3379
Joined: Mon Sep 25, 2006 11:28 am

Post » Sun Oct 24, 2010 12:51 am

It goes Bip01->Bip01 NonAccum->rigging bones
User avatar
john page
 
Posts: 3401
Joined: Thu May 31, 2007 10:52 pm

Post » Sun Oct 24, 2010 8:24 am

just to clarify (although I think I get it now) it's not the rigging order that's the problem it's the position of the bones. The tutorial is saying one thing but the vanilla meshes (for creatures anyway, that's the mountain lion skeleton) show something else I just want to know which way I should go forward with.

(also "the magician" are you really magician because if you are that's something we have in common, though I'm more of a mentalist these days)
User avatar
Noraima Vega
 
Posts: 3467
Joined: Wed Jun 06, 2007 7:28 am

Post » Sun Oct 24, 2010 6:46 am

just to clarify (although I think I get it now) it's not the rigging order that's the problem it's the position of the bones. The tutorial is saying one thing but the vanilla meshes (for creatures anyway, that's the mountain lion skeleton) show something else I just want to know which way I should go forward with.

Follow the position of the bones I described: Bip01 and Bip01 NonAccum at 0,0,0 pointing in the positive y axis. Make one bigger than the other so you can select them more easily. If you use the vanilla bone orientation, you will end up with animation errors. The reason is: the export scripts use the global orientation of the bones. The scripts used by Bethesda were different and tailored to 3ds (iirc). You will also find that not all vanilla skeletons have these bones oriented in the same direction. I asked the exact same question about this when I was learning how to make custom creatures and after a lot of experimentation this was the technique I discovered to work. You can always experiment with it yourself and let us know if you find anything different. :)

(also "the magician" are you really magician because if you are that's something we have in common, though I'm more of a mentalist these days)

Not of the 'stage' variety. ;)
User avatar
Rob
 
Posts: 3448
Joined: Fri Jul 13, 2007 12:26 am

Post » Sun Oct 24, 2010 7:59 am

ok i've reached the end of the tutorial and managed to export the skeleton so we're nearly there. I have no idea if it works yet but looking it over in nifskope i've encountered a couple of errors. First I can't find any NiTransformControllers. I went looking for these because the tut suggests that there may be extra ones that I needed to delete and that having none was bad. I've found lots of BhkBlendController but no NiTransformControllers is this something I should worry about?

Second the bounding box is in an awkward position and I'm not sure how to move it up to one below the scene root. Here's a pic...
http://i136.photobucket.com/albums/q189/arkham666/skeleton.jpg

you'll notice it's inside a branch (number 3) so not sure wwhat to do. Are these things that can be solved in nifskope or do I need to alter something in Blender and re export? Any help is welcome.
User avatar
KIng James
 
Posts: 3499
Joined: Wed Sep 26, 2007 2:54 pm

Post » Sun Oct 24, 2010 3:41 pm

The BSBound should be easy to fix.

Open your .nif in nifskope and right click the BSBound->Block->Copy Branch

Right click the base NiNode and choose Block->Paste Branch

Now delete the extra one and use the menus to Spells->Sanitize->Reorder Blocks.

I can't comment on why you have BhkBlendControllers instead of NiTransformControllers. When you exported you called the exported file skeleton.nif, correct? The export scripts specifically recognize that name. And you exported for Oblivion, not fallout 3, right?

If you can't figure it out on your own you will probably have to post the .nif or .blend you are using.

If you can't get ANY NiTransformControllers to show up then you could try inserting a single keyframe at frame 1 with all bones selected. However, then you will have to edit out the NiTransformData from each of the NiTransformControllers after export.
User avatar
Frank Firefly
 
Posts: 3429
Joined: Sun Aug 19, 2007 9:34 am

Post » Sun Oct 24, 2010 8:29 am

The BSBound should be easy to fix.

Open your .nif in nifskope and right click the BSBound->Block->Copy Branch

Right click the base NiNode and choose Block->Paste Branch

Now delete the extra one and use the menus to Spells->Sanitize->Reorder Blocks.

I can't comment on why you have BhkBlendControllers instead of NiTransformControllers. When you exported you called the exported file skeleton.nif, correct? The export scripts specifically recognize that name. And you exported for Oblivion, not fallout 3, right?

If you can't figure it out on your own you will probably have to post the .nif or .blend you are using.

If you can't get ANY NiTransformControllers to show up then you could try inserting a single keyframe at frame 1 with all bones selected. However, then you will have to edit out the NiTransformData from each of the NiTransformControllers after export.



i did name it skeleton.nif and the settings were all for oblivion. I'll take a look over the whole thing again when i get home from work tomorrow if I can't figure it out i'll upload the .blend and .niff if you're ok to take a look at them.
User avatar
Astargoth Rockin' Design
 
Posts: 3450
Joined: Mon Apr 02, 2007 2:51 pm

Post » Sun Oct 24, 2010 6:44 am

I think this is probably an export problem. BhkBlendControllers are fine as long as there is a NiTransformController inside of each.

Could you please try exporting again, and make sure that you select "Export Geometry Only", and "Creature" (on the right). If you still aren't getting NiTransformControllers then it may indicate a problem with one of the recent .nif scripts.
User avatar
Ridhwan Hemsome
 
Posts: 3501
Joined: Sun May 06, 2007 2:13 pm

Post » Sun Oct 24, 2010 5:43 am

I have the most up to date versions of the blender nif scripts, which version are you using? I could give it a try. Definately got all the export settings right anyway still no sign of them. this is a mighty conundrum.

I've just realised something else. The skeleton is actually quite different in nifskop than in blender take a look....

http://i136.photobucket.com/albums/q189/arkham666/skellywags.jpg

is this normal? And if not could it be related to my export problem?
User avatar
Javier Borjas
 
Posts: 3392
Joined: Tue Nov 13, 2007 6:34 pm

Post » Sun Oct 24, 2010 9:06 am

I am also using the newest scripts but haven't tried exporting a skeleton with them.

If you are referring to how the bones are all stretched to connect together, that is normal. The .nif scripts do that automatically.

If you mean how the legs don't line up and the head isn't in the same pose-I can't tell if that is just a view problem (is the view tilted at all? The skeletons really don't look that different to me) or if your skeleton is posed. If your skeleton has animation data (keyframe pose) then that may cause problems. You should clear any animation data before you export the skeleton. With all of the bones selected in pose mode delete any keyframes then on frame 1 in the 3d window menu use Pose->Clear Transform->Clear User Transform.

And can you try inserting a single keyframe at frame one right before you export for all bones? That should guarantee that you will have NiTransformControllers (and NiTransformData) for every bone post export. Then you will have to edit out the unwanted data, but it is easier than nifskoping in new ones.
User avatar
Chad Holloway
 
Posts: 3388
Joined: Wed Nov 21, 2007 5:21 am

Post » Sun Oct 24, 2010 12:12 pm

yeah i've head similar feedback on the niftools forums so i'll take a pop at that tomorrow, also the difference i'm seeing is that the bones in nifskope don't have tails. Just panicing i guess, I hate the thought of having done all that work only to load an animation file and see it completely messed up ad have to start almost from scratch again. That's I'm trying to be absolutley certain about the skel before I try to make an actual animation file.
User avatar
Project
 
Posts: 3490
Joined: Fri May 04, 2007 7:58 am

Post » Sun Oct 24, 2010 1:58 am

BOOM! I exported with a keyframe and I now have NiTransformControllers, inside some of them is a BhkBlendController and they all have NiTransformInterpolator although there isn't an NiTransformController inside the BhkBlendController which the tutorial suggest their should be but I'm guuessing that's not to much of an issue since the BhkBlendController is now inside the NiTransformController.
User avatar
Tanika O'Connell
 
Posts: 3412
Joined: Fri Jan 26, 2007 1:34 am

Post » Sun Oct 24, 2010 7:05 am

delete the interpolators. then I guess you will have to swap the bhkblendcontroller and the nitransformcontrollers around. with oblivion nifs its pretty easy to chop it up and paste stuff around, really go nuts, without fear of nif corruption.

you only need a bhkblendcontrollers on bones you add collision to. but it doesn't matter leaving them in there.
User avatar
Monika
 
Posts: 3469
Joined: Wed Jan 10, 2007 7:50 pm

Post » Sun Oct 24, 2010 2:31 pm

hang on what now? so all my NiTransformControllers need to be inside the BhkBlendController and I need to delete the interlopers? Sorry I'm getting a lot of mixed signals here and that tutorial really needs updating. Ok look I'll upload the .nif for you to look at, you don't need to actually edit it in any way but if you've got a moment to look it over and explain what needs changing i'd be greatful. Also is there somewhere that I can read up on what all this stuff actually does? If I know what all these things are for I may be able to better understand where everything should be and why so that in the future I can figure all this out for myself....

http://rapidshare.com/files/397993028/skeleton.nif.html
User avatar
Emma-Jane Merrin
 
Posts: 3477
Joined: Fri Aug 08, 2008 1:52 am

Post » Sun Oct 24, 2010 2:55 am

For creature skeletons the normal structure is bhkblendcontroller->nitransformcontroller. Bethesda sometimes used the opposite sequence as well, though. I really don't know if it will make a difference with a rideable creature or not, though. If you have to switch them around it is rather easy. First select the NiTransformController in the Block List window. Under next controller in the block details at the bottom you will see the associated bhkblendcontroller (if there is one for that bone). Note the number. Double click the value for next controller and push delete. Now select the Ninode that the controllers are attached to. In the value for Controller put in the number of the bhkblendcontroller. If you can't remember he number you can find the blend controller that you orphaned at the bottom of the blocks in the top window. Then you select the bhkblendcontroller and put the nitransformcontroller's value in for Next Controller.

When you have questions about the correct structure of a .nif it is usually pretty easy to compare your file to a bethesda one of the same type. Just open any skeleton in nifskope and you can see how it is set up. Also, if you hover over a block in nifskope you can almost always get some type of descriptive information. At the very least you can look the block up on the CS wiki.

Here are things you should change that I saw:

All of your NiTransformControllers have NiTransformInterpolators in them. This is animation data and should be removed. (Trust me, this is MUCH faster than nifskoping in new transform controllers).

Your constraints still need a lot of tweaking. Dealing with constraints is very difficult. Thankfully even if they aren't perfect on your first run through your creature will probably still work ok. It will just get messed up when it dies and havok takes over.

Your wing havok objects are no where near the bones. This may cause issues in the future depending on how you set up your wings.

After that, I think you are ready for animations.
User avatar
M!KkI
 
Posts: 3401
Joined: Sun Jul 16, 2006 7:50 am

Post » Sun Oct 24, 2010 9:14 am

Yeah I haven't yet touched the havok objects, I've read the bit on the tut about that. Those spheres were fine in blender they just need mving here. Since they're only an issue when the creature died I rated them as a low priority. I've removed all the NiTransformInterpolators and then had a good look through some of the creature skeletons both the horse and the dog. My structure seems to match theres. The vanilla skeletons have NiTransformControllers with just a ninode inside them or with BhkBlendControllers inside them. There are also BhkBlendControllers on their own just like in mine. I fully expanded the dog and horse skeletons and couldn't find any BhkBlendControllers with NiTransformControllers inside them so I'm guessing I'm good. I'll make those last adjustments then make a simple test animation and see how things look from there. Wow it actually feels like it's almost there.
User avatar
MarilĂș
 
Posts: 3449
Joined: Sat Oct 07, 2006 7:17 am

Post » Sun Oct 24, 2010 12:09 pm

Ok I created a silly test animation and it works fine in nifskop but when I made a test run of the creature in the cs I was greeted by this...

http://i136.photobucket.com/albums/q189/arkham666/wows.jpg

So for some reason my body has an all black texture and it won't move at all. All the meshes, animations and textures are in the correct place and it all looks fine in nifskope so any input would be helpful.
User avatar
Add Meeh
 
Posts: 3326
Joined: Sat Jan 06, 2007 8:09 am

Post » Sun Oct 24, 2010 3:17 pm

To me it looks like the head is reddish. Do you have a normal map? That might be a problem with the alpha settings.

As for the animation, I don't see an animation group assigned so you probably have an incorrectly named file or the NiControllerSequence's value in the .kf is incorrect. You have to have a correct anim group or the engine won't use it. Did you get any errors when you set up that animation in the CS? There is a CS debug file that should help to trace down exactly what is wrong with the animation, assuming you got an error message.

It could also be a lack of text keys, or having the animation set to the wrong cycle type. * I do see that you don't have ANY text keys so that is probably the problem. You need at least the start and end keys.

As long as it plays correctly in nifskope there probably isn't something totally messed up about the animation. We just need to figure out which step didn't work.
User avatar
{Richies Mommy}
 
Posts: 3398
Joined: Wed Jun 21, 2006 2:40 pm

Post » Sun Oct 24, 2010 1:58 pm

ok yeah that does sound like there's a few steps i'm missing here which weren't properly covered in the tutorial. I'll dive into some blender animation tutorials and take a look through some of the existing animation .nifs. There was an error message when I tried to load it.

Also the head is red because that's the texture, the problem is the body texture has come up black. Here's what it should look like...

http://i136.photobucket.com/albums/q189/arkham666/dragon_render_1.jpg

of course the problems could all be connected. I'll look into it in the next few days. Once I can see the test animation working in the CS i'll start making the proper anims.

Actually now may be a good time to ask... when I make a movement animation, (fastforward for example) do I just need to animate the movement of the limbs or will I actually need to move the mesh forward as well.
User avatar
*Chloe*
 
Posts: 3538
Joined: Fri Jul 07, 2006 4:34 am

Post » Sun Oct 24, 2010 11:50 am

For the movement anims you have to move the Bip01 bone to get the actual movement. For any other movement (like a stagger anim) just move the Bip01 NonAccum.
User avatar
JaNnatul Naimah
 
Posts: 3455
Joined: Fri Jun 23, 2006 8:33 am

Post » Sun Oct 24, 2010 4:12 am

Ok cool I added the text commands correcttly and named it idle. I got an animation group and it actually played in the cs. The dragon also stood on the ground instead of being sunk into it like in the previous screen shot. I'm still getting an all black texture on the body though, that's a new one for me. There was a slight animation error at the end of the loop where it seemed to... well explode might be a good way to describe it lol. But that just might be down to it being a rushed half arsed animation. Anyway looks like we're nearly there.

edit: ok scrub the black texture problem I re-opened the body texture and found out I'd saved it without mipmaps enabled *slaps forhead* school boy error.

edit edit: ok I just found an animation faq on tes nexus which confirmed my suspicion about how to fix my exploding animation so i know how to fix it (place final keyframe at the end of animation, as I said it was a botch job test) Well I guess that just leaves me to say a massive thanks to everyone here who's helped. Hopefully I can let this thread die now. I'll be sure to thank you in the mod readme if it ever gets released.
User avatar
Luis Reyma
 
Posts: 3361
Joined: Fri Nov 02, 2007 11:10 am


Return to IV - Oblivion