[x3d-public] Philosophical contemplations

John Carlson yottzumm at gmail.com
Tue Dec 6 08:51:28 PST 2016


I think the point is to make time declarative, ala the particle systems
component.   Thus if we could declare causes + structure, the whole scene
would play out with cause and effect.

On Dec 6, 2016 7:01 AM, "Roy Walmsley" <roy.walmsley at ntlworld.com> wrote:

> Hi,
>
>
>
> First, a disclaimer. The contemplations below do not claim to represent
> the viewpoint of the Web3D Consortium. Indeed, they may not even represent
> my own personal viewpoint. They are expressed purely as stimulation for
> discussion.
>
>
>
> ------------------------------------------------------------
> ------------------------------------------------------------
> ------------------------------------------------------------
> -----------------------------------------------
>
>
>
> *Contemplation 1*
>
>
>
> Recently Leonard has been seeking comments about “Essential elements of
> X3D”. While I would suggest that the question is not well phrased, since he
> is probably thinking about what should be in the next version of X3D, it
> did lead me into thinking more liberally.
>
>
>
> *X3D*
>
> X3D – Extensible 3D.
>
>
>
> Imagine sitting in your own office or living room. Contemplate what X3D
> structures (nodes) you would want available to model it. Pause for thought …
>
>
>
> Now, consider what structures (nodes) you would want to build a
> representation of the real thing, as opposed to the virtual one. Pause for
> thought …
>
>
>
> Now, extend that last thought to consider what structures (nodes) you
> would want to build a representation of the whole building. Pause for
> thought …
>
>
>
> And why stop there, what about the whole town (or city, or village, as
> appropriate), or the whole country, or the whole earth, or the whole solar
> system, or even the universe. Long pause for thought (and ignore any
> practicalities such as data size) …
>
>
>
> But why just 3D? These places aren’t static. They are dynamic. A fourth
> dimension, time, is involved. It took time for me to write this e-mail. It
> will take you time to read it (or maybe tl:dr).
>
>
>
> What structures (nodes) are required to fully  support this extra
> dimension? At any or all of these levels. Pause for thought …
>
>
>
> So should we, perhaps, be calling this extensible 4D? I.e.
>
>
>
> *X4D*
>
> Coincidentally, the next version of X3D is planned to be version 4 !!
>
>
>
> ------------------------------------------------------------
> ------------------------------------------------------------
> ------------------------------------------------------------
> -----------------------------------------------
>
>
>
> *Contemplation 2*
>
>
>
> Imperative, or declarative. There’s no such thing! What they really are is
> levels of abstraction.
>
>
>
> Let’s take, as an illustration, humanoid animation. Assume we have built
> an H-Anim figure, fully skinned, and clothed (or, to use other terminology,
> we have taken our mesh model of a humanoid and fully rigged it ready for
> animation). Now we can define a simple “step left foot forward” motion, by
> specifying a few joint rotations. Is this declarative or imperative
> programming? All the details about vertex transformations are hidden from
> the animator by the H-Anim implementation.
>
>
>
> Similarly, we can define “step right foot forward”, “swing left arm”,
> “swing right arm”, “look left”, “look ahead”, etc, etc.
>
>
>
> Now, consider the requirements for defining “walk from Point A to Point
> B”. We could define it in terms of the basic motions referred to above. Is
> this declarative or imperative programming?
>
>
>
> Similarly, we could define “get in the car”, “drive from Point C to Point
> D”.
>
>
>
> We can then consider generalising it some more, to define the motion “go
> to work”. This might involve the sub-steps “Leave the house”, “walk to the
> car”, “get in the car”, “drive to the work car park”, “get out of the car”,
> “walk from the car park to the office”. Each of these steps is broken down
> more. So “walk to the car” involves, at the very least, “step left foot
> forward”, “step right foot forward” multiple times (no comments about
> hopping please!). Each single step motion involves individual joint
> rotations, which in turn are used to calculate vertex transformations. To
> say nothing of rendering the model at each frame from the start to the
> finish.
>
>
>
> So, it’s really about choosing the abstraction levels. Optimising each
> one, and allowing appropriate parameterisation …
>
>
>
> ------------------------------------------------------------
> ------------------------------------------------------------
> ------------------------------------------------------------
> -----------------------------------------------
>
>
>
> Well, that’s enough for now,
>
>
>
> Feel free to come up with your own …
>
>
>
> Roy
>
>
>
> _______________________________________________
> x3d-public mailing list
> x3d-public at web3d.org
> http://web3d.org/mailman/listinfo/x3d-public_web3d.org
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://web3d.org/pipermail/x3d-public_web3d.org/attachments/20161206/7942b774/attachment.html>


More information about the x3d-public mailing list