Fri, Feb 7, 2:55 PM CST

Renderosity Forums / Poser - OFFICIAL



Welcome to the Poser - OFFICIAL Forum

Forum Coordinators: RedPhantom

Poser - OFFICIAL F.A.Q (Last Updated: 2025 Feb 07 7:37 am)



Subject: BVH files


ssween ( ) posted Tue, 30 August 2005 at 4:48 AM · edited Mon, 29 July 2024 at 7:26 PM

hi everyone - new to Poser, and getting there with most of it (just got through the joy of creating my own conforming clothing!!!!), but just having problems with imported BVH files - if anyone could help it would be greatly appreciated.

So, I import a BVH and it runs the animation as it should. To continue the scene from the last frame, I want to use some of the standard poses then carry on with additional poses/walks etc etc - however, it seems that the BVH is not keeping the centre point in synch, so at the end, the circle that appears when you select 'Body' is not aligned to the character - this obviously makes it impossible to rotate etc as it's not rotating around the middle, and when I apply a standard pose, the character shifts to the centre of the stage - I'm thinking that I either need to need to recenter something at the end of the bvh frames but just can't seem to find how to do it or manually insert a centreofmass entry into the BVH file ? - I've tried manually moving the green point, but the circle stays put

if anyone can offer any tips would be greatly appreciated and sorry if this is a really dumb question

also, as side question, is there any way of stopping camera movements being recorded ?

thanks a lot Sean


skee ( ) posted Tue, 30 August 2005 at 6:55 AM

bookmarked

NOTE: No trees were killed in the sending of this message, but a large
number of electrons were terribly inconvenienced.


ssween ( ) posted Tue, 30 August 2005 at 7:16 AM

sorry I'm new to these particular forums, so not sure what skee's response means ? have had a look around and came across a Python script that apparently imports BVH's 'better' than the standard import - will give it a go, but not sure if it will fix it, so any clues would still be appreciated cheers Sean


SteveJax ( ) posted Tue, 30 August 2005 at 7:18 AM

It mean's Skee's interested in hearing any answers you get, as I am as well. I just started playing with importing BVH's so I'd love to hear the answers.


ssween ( ) posted Tue, 30 August 2005 at 7:47 AM

now i feel stupid (went off to have a ciggie and realised it must be something like that) - did you try the script in the dl sections (called 'BVH mixer (Python)' in the Free Stuff area) ? - can't try it until later, but just curious if you've tried it, and whether it helped ?


SteveJax ( ) posted Tue, 30 August 2005 at 7:58 AM

I just started playing with the BVH last night so no, I haven't. I will download it and give it a go though.


ockham ( ) posted Tue, 30 August 2005 at 9:54 AM

I'm the author of that script. Your question about center of mass caught my attention! There's no way to use that, because the center of mass (a new P6 feature) is not part of the BVH standard. If there's a meaningful way for the BVH actions to pull that center, I'll bet I could revise the script to make that happen. Question is: what should the connection be?

My python page
My ShareCG freebies


ssween ( ) posted Tue, 30 August 2005 at 10:57 AM

would love to offer something on that question, but not experienced enough in Poser I'm afraid would I be right in thinking then that essentially the problem is that the BVH file isn't moving the centreofmass ? - therefore when a library pose is applied, it shifts the character back to it's original position ? - is it the centreofmass that is the overall central pivot point of a character ? also, I just can't seem to find how to actually move the red circle - the manual says you can, but when I try to pick it up with the mouse it moves the Body object not the circle ? cheers Sean


ockham ( ) posted Tue, 30 August 2005 at 11:21 AM

The center of mass isn't really meant to "lead" the body; it's meant more for poses where you want to change the balance. If your figure is carrying a large object in its left hand, you might be able to shift the center left or right to make the abdomen and hip look natural. I haven't used it; found it easier to just manuall adjust things until they look right. For sure the BVH file doesn't include the center at all. I just tried exporting a BVH from Poser 6. It includes a couple of odd entries for FaceActor, but not the Center.

My python page
My ShareCG freebies


Tunesy ( ) posted Tue, 30 August 2005 at 11:22 AM

This might be related to what you're asking, ssween. From an old post: "To have your figure 'start' the motion at the center of the studio: 1--Make note of your figures hip x, y and z trans values at frame one. 2--Apply those values with 'opposite signs' to the body x, y and z trans at frame one, e.g. negative one hundred x trans on the hip would correspond to positive one hundred x trans on the body. To see if it worked go to your main camera view and restore it (ctrl/shift/H) at frame one. The figure should be spacially oriented as if it were a default figure (except in a 'pose' now) in front of the default main camera orientation." Bvh files made me crazy until somebody taught me that.


ssween ( ) posted Tue, 30 August 2005 at 6:19 PM

had a bit of a play around this evening and looked through a few BVH files - they all start the hierarchy with the Hip so I'm assuming that the coordinates/offsets of each body part are relative to the position of the top level Body object ? - not sure if it's possible, but if the hierarchy in the BVH included the Body object somehow so that it moves with the character I think that would sort it out (I tried changing the ROOT in the BVH to Body and although it was a bit odd because I lost the hip animation, it did move the body object with the character) - how to incorporate both the body and hip via a script or even manually I'm not sure, but I think that's what's making it difficult to append frames after a BVH animation unless they only move within a small area and stay around the zero position of the Body object btw, I may well be talking complete rubbish as I'm still new to this cheers Sean


ssween ( ) posted Wed, 31 August 2005 at 3:04 AM

in case it helps anyone, here's a quick workaround - I think there's a better way without using multiple versions of a character, but this works and may help someone somewhere for the moment

in this example, you've got Figure1 as your character and the BVH is 100 frames

  1. Load Figure1 and import the BVH file
  2. Save the pose at frame 100 to the library
  3. Load another copy of Figure1 (I'll call it Figure2 here), turn off all IK and apply the pose you just saved
  4. Select the Hip of Figure2 and use the X,Z Transforms to get the figure into the center of the Body object (the red circle that appears when you select the Body)
  5. Make sure you're on frame 100, select the Body of Figure2 and move it until it's positioned exactly over Figure1
  6. Set the Body scaling on both figures so that at frame 0, Figure1=100%/Figure2=0% and at frame 100 Figure1=0%/Figure2=100%
  7. Go to the animation pallette, drop down to Figure1->Body->Scale - select all keyframes from 0-100 and apply a Constant selection. Do the same for Figure2 so that both figures instantly change scale at frame 100
  8. frame 100 should now have the character posed correctly and re-centred to the Body object - applying poses etc to Figure2 will now stay in place as the body parts are back in the center of the Body object


Dale B ( ) posted Wed, 31 August 2005 at 6:08 AM

That's one way. An easier way is to get familiar with Mr Graph Editor. ;) In a Biovision file, the hip is the root node; that is where you have to work to get two BVH files to mate so far as spatial orientation (the Poser Body selection is specific to Poser, and outside the loose BVH 'standard'). Try this. 1) Load your first animation. 2) determine how many frames are in your second animation, click on the frame counter and add that many frames to your first animation. Save under a new name, or with a digit count (xxxxxxxx001, 002, like that) to save the original setup. 3) Move the frame counter just past the end of the first animation (if 100 frames, set counter to 101). 4) Import the second animation; it should add itself starting at the frame after the first one ends. 5) If the animation pallette is open (referred to hereafter as the dopesheet), click on the button with the red curved line. This brings up the graph editor. You can close the dopesheet after this is up. 6) Select the figure, and then the hip; the graph editor should identify what it is accessing. The small drop down menu at the top right gives you access to the parameters available. 7) Select XTrans. 8) Move the slider below the graph window, so that you see the green vertical line that marks the frame you are currently on, and change the frame count so that you are at the first frame of the second animation. 9) Place your cursor just past the green line (on the green line it turns into a fat white arrow, and you don't want that), hold down your right mouse button and drag towards the end of the second animation. The graph window should go dark on on you. 10) Release your mouse button and move the cursor into that darkened region; you should get doubled horizontal lines. If you left click and hold, you can drag all the keyframes within the dark region forward and backward on the timeline. 11) Hold down ctrl and place the cursor in the dark region; you should have double vertical arrows. Left click and you can move all the keyframes in that zone 'up' or 'down' on the scale. Since you have Xtrans selected, simply move your cursor up or down until there is no difference between the value of the graph line between the end of the first animation and the beginning of the second. 12) Repeat this with Ztrans (and Ytrans if neccesary), and you have aligned two bvh files. You may have to adjust the Yrot as well, if the direction the figure is facing isn't the same between the two. 13) This does -not- blend all the other motions; to do that, you need to make space between the animations to keyframe the blend by hand. But the graph editor can help there as well. 14) It takes a =lot= longer to explain it than it does to actually do it, btw....


LostinSpaceman ( ) posted Wed, 31 August 2005 at 1:12 PM

Attached Link: http://www.lostin3d.com/Flash/Josie.html

So that would fix the jump in the middle of this animation?


Dale B ( ) posted Wed, 31 August 2005 at 6:37 PM

It would be a start to fixing it, yes. If you just wanted to bridge the two animations, you would need to add enough frames between the two so that the figure could assume the 'at attention' pose at the beginning of the second section. And you would have to tweak the hip location to allow for the inevitable motion that assuming that pose from a moving state would take. One way to do it is to turn the IK on for one leg once the foot is on the ground. This becomes your pivot point that the body weight is on until you get both feet under it. Ths is where trial and error, making small animations in preview mode for quickness, and the good old Mark 1 Eyeball come in. And more 'takes' than you would think. The human eye analyzes things below the conscious level constantly; one of the reasons I prefer models with articulated toes. You can't tell so long as shoes are on, but if the model is barefoot, and those feet don't flex correctly, even if you don't identify the problem, the back of your mind says 'wrong'. And the illusion of life is blown. The main problem you would have blending those two loops is weight distribution; the tilt of the pelvis, the angle of the shoulders, the overall slant of the body as it counterbalances the motion will take some tweaking to get right. But it is doable, as as long as you save often (and use some kind of unique system, be it like 001, 001a, whatever) so you don't lose a successful tweak, you will learn a lot in the process. Not to mention lose some hair, create new profanities, and leave teeth marks in your computer case. But that's part of the fun...... :P


LostinSpaceman ( ) posted Wed, 31 August 2005 at 7:05 PM

What I really need is something that will actually re-write the BVH in reverse so that I can merge them in poser and they come full circle.


Privacy Notice

This site uses cookies to deliver the best experience. Our own cookies make user accounts and other features possible. Third-party cookies are used to display relevant ads and to analyze how Renderosity is used. By using our site, you acknowledge that you have read and understood our Terms of Service, including our Cookie Policy and our Privacy Policy.