<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv=Content-Type content="text/html; charset=utf-8"><meta name=Generator content="Microsoft Word 15 (filtered medium)"><style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
.MsoChpDefault
        {mso-style-type:export-only;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style></head><body lang=EN-US link=blue vlink="#954F72" style='word-wrap:break-word'><div class=WordSection1><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Hi Holger, </p><p class=MsoNormal>I was able to run the bvh example when converted to x3d back when a long time ago. In Part 2 of  </p><p class=MsoNormal>From what I remember on this is that the source bvh animation only specifies a frame rate, or number of seconds between samples. So the x3d import must create a set of keys and organize the keyvalues. Since the keys are at the video frame rate, the key field gets very tedious. Also, the number of  keyvalues goes up fast with skeleton parts, since there tend to be most likely too many keyframes (in angles). Finally, this massive list of keys gets duplicated for every interpolator. </p><p class=MsoNormal>With this, how much greater could we possibly honor developers of interpolators and implementers of vrml and x3d interpolators than to somehow allow a way to ’DEF’ a key field and reuse it in another interpolator. This would at least consolidate the code so could stand a chance to work on it. </p><p class=MsoNormal>Of course great number of key steps is not a issue for tools that just make video because they only make fixed steps to render the specific key and don’t interpolate. </p><p class=MsoNormal>  </p><p class=MsoNormal>Good Luck, Don has worked on this a lot including import of bvh skeleton and animation directly to HAnim. Most of the bvh speaks bones while x3d speaks joints. Remember, data for bone goes to parent joint.  </p><p class=MsoNormal>Thanks,</p><p class=MsoNormal>Joe</p><p class=MsoNormal><o:p> </o:p></p><div style='mso-element:para-border-div;border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0in 0in 0in'><p class=MsoNormal style='border:none;padding:0in'><b>From: </b><a href="mailto:holger.seelig@yahoo.de">Holger Seelig</a><br><b>Sent: </b>Saturday, July 22, 2023 11:26 AM<br><b>To: </b><a href="mailto:x3d-public@web3d.org">X3D</a><br><b>Subject: </b>[x3d-public] Stuck with getting HAnimMotion animation to run.</p></div><p class=MsoNormal><o:p> </o:p></p><div><p class=MsoNormal>I am not really clear how to start the animation of a HAnimMotion.  I am very hung up on how a TimeSensor works.<o:p></o:p></p></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal>My understanding so far is that the animation is started when the HAnimMotion receives an enabled=true event and then runs to the end or starts over when loop=true.<o:p></o:p></p></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal>I also guess that the next and previous events only have an effect if enabled=false, otherwise it wouldn't make sense with the previous assumptions.<o:p></o:p></p></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal>I would be very happy if there was clarification on this.<o:p></o:p></p></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><div><div><div><div><p class=MsoNormal><span style='color:black'>Holger Seelig<o:p></o:p></span></p></div><div><p class=MsoNormal><span style='color:black'>Leipzig, Germany<o:p></o:p></span></p></div><div><p class=MsoNormal><span style='color:black'><o:p> </o:p></span></p></div><div><p class=MsoNormal><span style='color:black'>holger.seelig@yahoo.de<o:p></o:p></span></p></div><div><p class=MsoNormal><span style='color:black'>https://create3000.github.io/x_ite/<o:p></o:p></span></p></div></div><p class=MsoNormal><span style='color:black'><o:p> </o:p></span></p><div><p class=MsoNormal><span style='color:black'><o:p> </o:p></span></p></div></div></div><p class=MsoNormal style='margin-bottom:12.0pt'><o:p> </o:p></p></div><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal><o:p> </o:p></p></div></body></html>