Forum: Poser - OFFICIAL


Subject: Time Reverse Keyframes in Poser

an0malaus opened this issue on Nov 07, 2019 ยท 29 posts


Richard60 posted Sun, 17 November 2019 at 9:04 PM

Here are the results of my making a 100 frame animation of a box using the Y Translate channel. I placed a Key Frame on every frame to make it like a BVH motion file that you would get from a system like an Optitrak motion capture system. Back in 2012 I helped my son with his movie making class so we made 5 films in 18 weeks using Poser Pro 2012 and some motions from Tru Bones which are BVH files. As I have shown above and will show below you can place a BVH file into Poser and using another layer make a couple of simple adjustments to bring a wide range of keys into new positions to avoid such things as hands passing through a body part. The first image is the 100 frames of motion capture of the Y Translate of the box. The next image shows the additon of a layer with all 3 points being on the Zero line. The next image shows that moving the center point up a small amount causes athe range of Base layer keys to move upwards using a gentle Spline Curve to avoid sudden jerky movements. The 4th image is the Base Layer selected that shows the Key points are the same however the Black line above the dots is the actual movement of the body part in the animation.

100 Frames Poser 9 1 single.jpg

The BVH style file

100 Frames Poser 9 2 second layer.jpg

This is the Layer 1 in Poser 9 all at Zero and using Add Mode.

100 Frames Poser 9 3 second layerAdd correction.jpg

This is the Layer 1 with a small adjustment on the center Key. Moves all the above Keys up some.

100 Frames Poser 9 4 second layerAdd correction Base.jpg

Here is the Base Layer showing all the original Keys in place with the actual movement shown in Black above the points.

Poser 9 All Zeros

k 51 0.0638776 k 0 0 kfd 0.0638776 0

k 59 0.0482041 k 8 0 kfd 0.0482041 0

k 66 0.0695103 k 15 0 kfd 0.0695103 0

Here are the values on the two layers at the Key Frames that are affected. The format is k (stands for Key) The Frame number (51) and the Value for that Key at that frame. The next values are k (for Key Frame) the Frame number as an offset for that layer (as the layer starting frame is defined earlier in the file) the Value. Finally we have kfd (Key Frame Difference?) The value of the sum of all the rest of the layers at that moment and the value of the Layer Key Frame. The kfd appears to be some way to Toggle between Add and Replace functions. If you select the Add option in the Layers tab then Poser 9 uses the second value in the KFD along with the layers k value. If you select Replace then the first value is used which bring the graph up to the level of the Base Layers key value. In order to make it a true Replace then you have to dial the start value down to the Zero line and then add in your own values from there. That might make sense if it wasn't for the other two options on the Layers tab called Blend In and Blend Out. What the book says the Blends do is to transistion the change between the two layers to avoid an abrupt change by doing a Linear slope of the two layers values. So that if Base Layer had a value of 90 and Layer 1 in Replacement mode has a value of 0 then over the course of the number of frames in the Blend option to move the value from 90 to 0. So if you put in 10 frames then the channel will drop by a value of 10 each frame. But what's the point if you are going to make the Replacement Layer start at the same value as the replaced frame?

Poser 11 Imported 9 All Zeros

k 51 0.0638776 k 0 0 kfd 0.0638776 0

k 59 0.0482041 k 8 0 kfd 0.0482041 0

k 66 0.0695103 k 15 0 kfd 0.0695103 0

The above values are what Poser 11 outputed when I opened the Poser 9 scene in Poser 11 and then saved it right away. They are the same as Poser 9. That is a good thing as it does not appear the they changed the code for the reading of Key Frames.

Poser 9 with centered moved

k 51 0.0638776 k 0 0 kfd 0.0638776 0

k 59 0.0482041 k 8 0.00948181 kfd 0.0576859 0

k 66 0.0695103 k 15 0 kfd 0.0695103 0

At this point I added in a movement on layer 1 at frame 59 (8). Notice the k 8 number is no longer 0 but the difference between the kfd and the base layer value. It also does the same thing when it is put into replace mode. One more issue is that in Replace mode even in Poser 9 the End frame point is broken in that the point does not move but the graph does.

100 Frames Poser 11 2 layer at 0.jpg

Poser 11 Imported Base Layer and added Layer 1 Keys in program

k 51 0.0638776 k 0 0 kfd 0.0638776 0

k 58 0.0467348 k 7 0 kfd 0.0467348 0

k 66 0.0695103 k 15 0 kfd 0.0695103 0

The above is what happens after I imported just the Base Layer and then added in the Layer 1 with in the program. As long as I just add the keys without making any change in the Key Value then it appears to work the same as Poser 9.

100 Frames Poser 11 3 2 layer dial adjust.jpg

Poser 11 Center Dialed

k 51 0.0638776 k 0 0 kfd 0.0638776 0

k 58 0.0467348 k 7 0.0622992 kfd 0.109034 0.0622992

k 66 0.0695103 k 15 0 kfd 0.0695103 0

However as soon as I turn the channel dial even a little bit the Layer k value jumps to a very high value. It looks like it adds in both the change in the dial and the Base Layer and then some. However at least it can be dialed back down and controlled. But if this is done on a large numbe of channels it could become very cumbersome.

100 Frames Poser 11 4 2 layer moved center.jpg

Poser 11 Center Graph Moved

k 51 0.0638776 k 0 0 kfd 0.0638776 0

k 58 0.0467348 k 7 0.0472906 kfd 0.0940254 0

k 66 0.0695103 k 15 0 kfd 0.0695103 0

Above is what happens if you try to change the channel value with the graph. There is something broken in the Graph when using Layers. It appears to be an attempt to add in the change in the graph value with the Base Layer twice over. Then the graph gets stuck and no longer shows any movements.

The biggest issue is that the programmers added in the kfd part. Considering that most of the frames have to be calculated without the aid of the kfd it should be gotten rid of and just program the layers to work as the manual implies they should. That is if you make a new layer then the starting values should all begin as Zero and only be changed by the user. That way if you make a dozen layers you don't have to worry about what happens if you make a mistake and place a key on the wrong layer. Also it would allow all the ways of making a movement work instead of the current state where at least half of the ways are broken depending on where the Layer is located and the Mode it is in.

Poser 5, 6, 7, 8, Poser Pro 9 (2012), 10 (2014), 11, 12, 13