[x3d-public] Discussion of TimeSensor Controls

Joe D Williams joedwil at earthlink.net
Tue Feb 2 16:58:17 PST 2016


Hey Guys this is really great thinking; some of it along the lines of 
the proposed HAnim Motion node and W3C Timed Text stuffs. I want to 
add this to my HUD! I reach out and touch it then play it forward or 
reverse.

I am happy to say that from what you have described here and implied I 
truely believe that this user convenience can be implemented in a 
typical X3D browser using a relatively straightforward Prototype 
including a few scripts. Of course this is because this typical 
'standard' Interactive or above browser contains al the underlying 
features to produce the abstract interface being discussed.
I would suggest BSContact Free, but there are, and must be, several 
other free browsers capable of running this proto in 'native' X3D or 
VRML SAI

Please let me know as you begin to scope the details of the interfaces 
and interactions and I can probably help test some things.

Also, since you are experimenting with fractional temporality 
exhibiting quantum or multiquantum incremental steps and moreover 
arbitrary jumps, then it might make some connections to actually 
mention the uses this control could have in producing fixed and 
variable frame rate videos.

 (more)





----- Original Message ----- 
From: "Leonard Daly" <Leonard.Daly at realism.com>
To: "X3D Graphics public mailing list" <x3d-public at web3d.org>; 
<x3dom-users at lists.sourceforge.net>
Sent: Tuesday, February 02, 2016 11:53 AM
Subject: [x3d-public] Discussion of TimeSensor Controls


> Mike McCann and I have been having a private discussion that we both
> thought should be put on x3d-public and perhaps x3dom-users.
>
> I had announced the initial availability of a new node in work that 
> I am
> doing for V4. This node is a functional replacement for TImeSensor 
> and
> the various interpolation nodes. It is called Animate. I will go 
> into
> more detail on that node later on. The particular question also 
> arises
> with V3.x nodes.
>
> Mike was wondering what it would take to have an HTML slider that 
> would
> show where in the animation loop and allow control of playback, much
> like a slider on an audio or video playback you might find with 
> YouTube,
> NetFlix, etc.

Does MIke have a budget?

>
> IOW, in hands-off mode, the slider moves from start to finish as
> fractional time advances. This is easy to implement as you can get 
> the
> fractional time value and apply it to the slider position.

OK,

>
> In hands-on mode, a button-click on the slider needs to pause the 
> time
> control. A drag on the slider would change the fractional time of 
> the
> sensor and button release would start playback from that position. 
> Also
> clicking at a location on the slider widget would have the same 
> effect
> as a drag.

I think most al top browsers would be able to do this without a lot of 
special code.
Of oourse this will work best when the author decides which objects 
will be controllable using which clocks.

>
> TimeSensor has 'startTime', 'pauseTIme', 'resumeTime', and 
> 'stopTIme'
> fields. This all take local-time in seconds from epoch as the time 
> of
> action. There is also 'cycleInterval' for the duration of a single 
> pass,
> and 'loop' to indicate if the animation should repeat.

Yes, those are well-founded interfaces of TimeSensor.

>
> To implement a controlling slider, it would be nice to have 'pause' 
> and
> 'resume' fields that pause and resume the sensor without needing to
> explicitly supply time. For the slider to control where (when?) in 
> the
> playback, it might be possible to manipulate the existing 
> 'startTime'
> and 'stopTIme' fields to achieve the desired results, but some of 
> those
> changes are ignored if the TImeSensor is currently active (paused 
> counts
> as active).

Yes, some of that would get tricky but most all of the inerfaces 
required are exposed in standard nodes.

>
> I think adding a new field called (something like) 'set_fraction' 
> would
> make the user's work much easier and obvious. This would set the 
> current
> fractional time and everything would proceed from there.

Good that there are very proven ways to get a time set (set_fraction) 
in an interpolators and event utilies.
Even now some folks don't use a Timesensor but just use a script or 
direct user inputs to tell the interps and others when to emit.

>
> There are open questions when things need to run for certain and
> specific intervals. For example, an animation needed to run from 
> 11:03
> to 11:05 local time. At 11:04:48 (fractional time = 0.9) someone 
> changes
> the fractional time to 0.1 (essentially 11:03:12).

Well, then you need to know local time, which is great if you can get 
it from your system with sufficient resolution and accuracy.

>
> 1) Is this a case of not a spec problem, because the developer needs 
> to
> ensure this kind of integrity

Not sure I saw reference to a spec problem. I think the spec covers 
all the X3D basic interfaces for all this. Not to sure about html, 
though TTML might help. And, that platform is always improving to 
provide competent timing and event ordering.

> 2) This is a security issue that needs to be handled inside the X3D
> application

Which security issue? access to real or imaginary time?

> 3) This is a major vulnerability that needs specification definition

Where is the hole?

> 4) This is interpreted code that is run on the user's computer and 
> there
> is nothing that can be done.

It should be up to the user that has responsibility for the system. If 
the user needs to be warned that time is out of his control or might 
be, then there should be a Big Warning.

> 5) Something else or not listed.

I think there is plenty not listed here, including a proposed IDL.

Thanks and Best,
Joe


>
>
>
>
> -- 
> *Leonard Daly*
> 3D Systems & Cloud Consultant
> X3D Co-Chair on Sabbatical
> LA ACM SIGGRAPH Chair
> President, Daly Realism - /Creating the Future/
>


--------------------------------------------------------------------------------


> _______________________________________________
> x3d-public mailing list
> x3d-public at web3d.org
> http://web3d.org/mailman/listinfo/x3d-public_web3d.org
> 




More information about the x3d-public mailing list