<div dir="ltr"><div dir="ltr"><div dir="ltr">Understood that I don't need script. Understand that I suffer from carpal tunnel and I don't want to waste a lot of time editing duplicate code. Maybe we can do something like IMPORT/EXPORT or prototypes.<div><br></div><div>Here's what I have:</div><div><br></div><div><div>DEF JumpAndRunAnimation Group {</div><div> children [</div><div> DEF JumpAndRunTimer TimeSensor { cycleInterval 3.73 loop TRUE enabled TRUE }</div><div> USE JumpAnimation</div><div> USE RunAnimation</div><div> ]</div><div>}</div></div><div><br></div><div>I have also done all the startTime/stopTime stuff necessary to turn off JumpAndRunTimer in other code. I have also added this:</div><div><br></div><div><div>ROUTE JumpAndRun_Touch.touchTime TO StandTimer.stopTime</div><div>ROUTE JumpAndRun_Touch.touchTime TO PitchTimer.stopTime</div><div>ROUTE JumpAndRun_Touch.touchTime TO YawTimer.stopTime</div><div>ROUTE JumpAndRun_Touch.touchTime TO RollTimer.stopTime</div><div>ROUTE JumpAndRun_Touch.touchTime TO WalkTimer.stopTime</div><div>ROUTE JumpAndRun_Touch.touchTime TO KickTimer.stopTime</div><div>ROUTE JumpAndRun_Touch.touchTime TO StopTimer.stopTime</div><div>ROUTE JumpAndRun_Touch.touchTime TO RunTimer.stopTime</div><div>ROUTE JumpAndRun_Touch.touchTime TO JumpTimer.stopTime</div><div>ROUTE JumpAndRun_Touch.touchTime TO JumpAndRunTimer.startTime</div></div><div><br></div><div>I fully realize that I don't have a working solution yet. I did try "Enable Multiple Simultaneous Animations" in view3dscene (see image)--there are a bunch of stopTimes for each touch sensor. Now am working on trying to combine interpolators without copy/paste and substitution (which I did try, but I goofed on), which didn't work</div><div>I don't know how namespaces, etc. work</div><div><br></div><div><img src="cid:ii_ll070fsz0" alt="image.png" width="543" height="328"><br></div><div><br></div><div>I know I am not doing event utilities, but I'm still learning this stuff, trying not to duplicate a lot of code. I want to understand how to combine animations like the brain does.</div><div><br></div><div>Thanks for your help. I am still ignoring event utilities for now.</div><div><br></div><div>John</div></div></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sun, Aug 6, 2023 at 8:12 PM Joe D Williams <<a href="mailto:joedwil@earthlink.net">joedwil@earthlink.net</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div style="color:rgb(0,0,0);font-family:arial,sans-serif;font-size:12pt"><p style="margin:0.1rem 0px;line-height:1"> </p>
<p style="margin:0.1rem 0px;line-height:1">you don't need script. Look at the stuff and quit worrying.Learn this and then figure a better way. </p>
<p style="margin:0.1rem 0px;line-height:1"> </p>
<p style="margin:0.1rem 0px;line-height:1"> </p>
</div>
<div style="border-left:1px solid rgb(170,170,170);box-sizing:border-box;padding:10px 0px 10px 15px;margin:0px">
<p>-----Original Message-----<br>From: John Carlson <<a href="mailto:yottzumm@gmail.com" target="_blank">yottzumm@gmail.com</a>><br>Sent: Aug 6, 2023 6:04 PM<br>To: Brutzman, Donald (Don) (CIV) <<a href="mailto:brutzman@nps.edu" target="_blank">brutzman@nps.edu</a>>, Joe D Williams <<a href="mailto:joedwil@earthlink.net" target="_blank">joedwil@earthlink.net</a>>, Michalis Kamburelis <<a href="mailto:michalis.kambi@gmail.com" target="_blank">michalis.kambi@gmail.com</a>><br>Cc: GPU Group <<a href="mailto:gpugroup@gmail.com" target="_blank">gpugroup@gmail.com</a>>, X3D Graphics public mailing list <<a href="mailto:x3d-public@web3d.org" target="_blank">x3d-public@web3d.org</a>><br>Subject: Re: [x3d-public] Super simple animations?</p>
<p style="margin:0.1rem 0px;line-height:1"> </p>
<div dir="auto">We can’t use (Java)Script nodes on view3dscene, so that doesn’t work.</div>
<div dir="auto"> </div>
<div dir="auto">I’m getting ready to start with interpolators, but I’m thinking two lines of code will turn into 50 or more.</div>
<div dir="auto"> </div>
<div dir="auto">So yes, expressible, but extremely painful.</div>
<div dir="auto"> </div>
<div dir="auto">Did you hear my screams of agony yet?</div>
<div dir="auto"> </div>
<div dir="auto">Recommended tools for exporting animations that’s open source?</div>
<div dir="auto"> </div>
<div dir="auto">I’m not really a drag and drop guy, I like mathematical formulas.</div>
<div dir="auto"> </div>
<div dir="auto">Is there some way to do this that uses the DRY principle?</div>
<div dir="auto"> </div>
<div dir="auto">Can you suggest a good name for a prototype?</div>
<div dir="auto"> </div>
<div dir="auto">John</div>
<div><br>
<div class="gmail_quote">
<div class="gmail_attr" dir="ltr">On Sun, Aug 6, 2023 at 6:27 PM Brutzman, Donald (Don) (CIV) <<a href="mailto:brutzman@nps.edu" target="_blank">brutzman@nps.edu</a>> wrote:</div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<div>
<div dir="ltr">
<div> </div>
<div>
<div dir="ltr">
<ol>
<li> John, i know of no event animation chain for X3D that cannot be expressed using X3D4 ROUTE connections using interpolators, sequencers, and event utility nodes. Chasers, dampers, and Script node provides further capabilities for variation. X3D4 architecture appears to have full expressive power for animation.</li>
</ol>
<div dir="ltr">If you want to adapt things in a different way, repeatably, then great - please write a prototype. The X in X3D is Extensible. </div>
<div dir="ltr"> </div>
<div dir="ltr">Of course Script nodes, and programming libraries like X3DJSONLD, X3DJSAIL, x3d.py and others, are both declarative and imperative simultaneously when manipulating the scene graph. </div>
<div dir="ltr"> </div>
<ol start="2">
<li dir="ltr"> Doug, we have had great success mapping Web Audio API to X3D4. I think we have a similar path forward to X3D4.1 for MIDI.</li>
</ol>
<div dir="ltr">
<ul>
<li>W3C Web MIDI API, draft</li>
<li><a href="https://webaudio.github.io/web-midi-api/" rel="noreferrer noopener" target="_blank">https://webaudio.github.io/web-midi-api/</a></li>
</ul>
</div>
</div>
<div id="m_6982184008483065794m_1086076452253110073ms-outlook-mobile-signature">
<div>Once again, X3D prototypes and Script node can provide a useful path forward for design, implementation, and evaluation of new nodes. <span style="text-align:left;background-color:rgb(255,255,255);text-decoration:none;display:inline">Usage of stable prototypes can encourage significant usage and deployment.</span></div>
<div dir="ltr"> </div>
<div dir="ltr">Given that Web3D Consortium has a formal liaison partnership with W3C, designated Web3D members can further participate in Audio Working Group to share design considerations and suggest refinements in the draft W3C MIDI API. Membership has value!</div>
<div dir="ltr"> </div>
<div>v/r Don</div>
</div>
<div id="m_6982184008483065794m_1086076452253110073mail-editor-reference-message-container"><hr style="display:inline-block;width:98%">
<div id="m_6982184008483065794m_1086076452253110073divRplyFwdMsg" dir="ltr"><span style="font-family:Calibri,sans-serif"><strong>From:</strong> x3d-public <<a href="mailto:x3d-public-bounces@web3d.org" rel="noopener" target="_blank">x3d-public-bounces@web3d.org</a>> on behalf of GPU Group <<a href="mailto:gpugroup@gmail.com" rel="noopener" target="_blank">gpugroup@gmail.com</a>><br><strong>Sent:</strong> Sunday, August 6, 2023 10:25<br><strong>To:</strong> X3D Graphics public mailing list <<a href="mailto:x3d-public@web3d.org" rel="noopener" target="_blank">x3d-public@web3d.org</a>></span></div>
</div>
</div>
</div>
</div>
<div>
<div dir="ltr">
<div>
<div id="m_6982184008483065794m_1086076452253110073mail-editor-reference-message-container">
<div id="m_6982184008483065794m_1086076452253110073divRplyFwdMsg" dir="ltr"><span style="font-family:Calibri,sans-serif"><span style="font-family:Calibri,sans-serif"><br><strong>Subject:</strong> Re: [x3d-public] Super simple animations?</span></span>
<div> </div>
</div>
<div dir="ltr">MIDI nodes are a bit like that - you can design the event sequence / timing in a MIDI authoring tool, then play the .mid file and route from ToneSplitter. I'm thinking about a fireworks scene combining particle physics and midi event sequencing. Perhaps we need something more general, as a utility node set.
<div>-Doug</div>
</div>
<br>
<div class="gmail_quote">
<div class="gmail_attr" dir="ltr">On Sun, Aug 6, 2023 at 11:14 AM John Carlson <<a href="mailto:yottzumm@gmail.com" rel="noopener" target="_blank">yottzumm@gmail.com</a>> wrote:</div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<div dir="auto">Conceptually one could do this with a switch, but i don’t know about events from the switch to enable the child TimeSensor or the startTime.</div>
<div dir="auto"> </div>
<div dir="auto">If you tell me to do use a Script, why not put imperative code in an encoding instead?</div>
<div dir="auto"> </div>
<div dir="auto">John </div>
<div><br>
<div class="gmail_quote">
<div class="gmail_attr" dir="ltr">On Sun, Aug 6, 2023 at 11:17 AM John Carlson <<a href="mailto:yottzumm@gmail.com" rel="noopener" target="_blank">yottzumm@gmail.com</a>> wrote:</div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">I would like something like a TimeSensorSequencerGroup that enables and disables children TimeSensors in order of appearance in the code, if such a thing exists. No need to fiddle with TimeSensor fields, the SequencerGroup does it for you.
<div dir="auto"> </div>
<div dir="auto">I know this is imperative programming, and not declarative, but sometimes, you’ve got to bite the bullet of simplicity.</div>
<div dir="auto"> </div>
<div dir="auto">Thanks!</div>
<div dir="auto"> </div>
<div dir="auto">John</div>
</blockquote>
</div>
</div>
_______________________________________________<br>x3d-public mailing list<br><a href="mailto:x3d-public@web3d.org" rel="noopener" target="_blank">x3d-public@web3d.org</a><br><a href="http://web3d.org/mailman/listinfo/x3d-public_web3d.org" rel="noopener noreferrer" target="_blank">http://web3d.org/mailman/listinfo/x3d-public_web3d.org</a></blockquote>
</div>
</div>
</div>
</div>
</div>
_______________________________________________<br>x3d-public mailing list<br><a href="mailto:x3d-public@web3d.org" rel="noopener" target="_blank">x3d-public@web3d.org</a><br><a href="http://web3d.org/mailman/listinfo/x3d-public_web3d.org" rel="noopener noreferrer" target="_blank">http://web3d.org/mailman/listinfo/x3d-public_web3d.org</a></blockquote>
</div>
</div>
</div>
<p style="margin:0.1rem 0px;line-height:1"> </p></blockquote></div>