[x3d-public] Joe, question about H-Anim

Joe D Williams joedwil at earthlink.net
Sat Feb 20 15:38:21 PST 2016


----- Original Message ----- 
From: "John Carlson" <yottzumm at gmail.com>
To: "Joe D Williams" <joedwil at earthlink.net>
Cc: <x3d-public at web3d.org>
Sent: Saturday, February 20, 2016 12:06 PM
Subject: Re: Joe, question about H-Anim


How are the H-Anim models which allow you to make figures shorter or 
taller, or shorter or longer arms implemented?  By lengthening 
segments?

The set of skeleton Joint centers form the 'skeleton space' which by 
our example dimension compose the humanoid space. You just place the 
Joint centers according to the dimensions of the human you are 
modelling. Generally, if the dimensions are similar and the initial 
pose is similar then animations can be transposrted between models.

The simple humanoid uses geometry as children of segments. More 
complex is skin where each vertes is controlled by the position of the 
segment and rotation of one or more associated Joint nodes.

> Is it mostly skin that is being manipulated when modifying avatars?

When animating avatars it depends on whether the geometry is bound to 
the Segment (like a single IFS that represents a forearm) where the 
geometry moves as the Segment is moved, or if the geometry is a 
continious mesh 'skin' that is bound to the Humanoid and to various 
Joints. You can see the difference where examples like Nancy use 
geometry bound to Segments and you can see the movement between the 
different adjacent geometries, of like boxman or the the kicker where 
there are not seams at the Joints.

In addition, either geometry bound to Segments or continious mesh skin 
may be moved using the Displacer node.

> Thanks,
> John

So, it may depend. Look at some of those examples in the links and 
see.

Thanks,
Joe


> On Feb 20, 2016, at 2:56 PM, Joe D Williams <joedwil at earthlink.net> 
> wrote:
>
>
> ----- Original Message ----- From: "John Carlson" 
> <yottzumm at gmail.com>
> To: "Joe D Williams" <joedwil at earthlink.net>
> Cc: <x3d-public at web3d.org>
> Sent: Friday, February 19, 2016 9:06 PM
> Subject: Joe, question about H-Anim
>
>
>> Joe,
>
> Hi
>
>> Does H-Anim have the concept of 1) Geometry stretching between two 
>> Transforms (like a stretchable bone between two joints)?
>
> All HAnim animation is intended to be by Joint rotation. In general, 
> we only change the position of the root Joint, which moves the 
> entire model. You are thinking of changing one or more Joint 
> center(s) directly and having the intervening geometery arrange 
> itself to stay connected. I have not seen changing the Joint center 
> directly work as you describe and is not taken care of 
> automagically. You can make anything out of Joint and Segment 
> hierarchies, even a hair, but the Segment lengths remain fixed. I 
> have a good (best ever X3D HAnim ever published) HAnin model for 
> experiments.
>
>> The transforms may contain further geometry.
>
> Yes, a Joint, which contains a Segment containing some geometry and 
> the next Joint. The Segment geomety may start at the parent Joint 
> center and end at the next child Joint center. The Joint centers 
> really don't know anything about the Segment geometry coordinates, 
> or vice-versa. You rotate a Joint then the child hierarchy follows.
>
>> See other thread Leonard and I are on.  This would be used to 
>> implement a graph, but unlike H-anim in that it might allow for 
>> cycles or perhaps just DAGs instead of hierarchies.   What are the 
>> physical implications and coding implementations of such cycles or 
>> DAGs?
>
> more thought needed here. For what you describe you may not need a 
> hierarchy that actually connects something from point to point. Sure 
> you could build something really clever to draw nD graphs since once 
> you know the points it is fairly easy to draw some connecing 
> geometry so why not just compute and draw the points and connecting 
> lines each frame?
>
>> Could we use H-Anim-like physicality to implement force directed 
>> graphs?
>
> Try rigid body nodes, there may end up to be some stretchy stuff 
> there.
>
>> On the web?
>
> Why not? Hopefully, may depend upon computing needed.
> I have not yet tried my humanoid models in X3DOM for some reason.
>
> some segment geometry and skin examples in here:
>
> http://www.hypermultimedia.com/x3d/hanim/HAnimCollection20130818/HAnimCollection20130818.zip
>
> and skin here:
>
> http://www.hypermultimedia.com/x3d/hanim/JoeH-AnimKick1a.x3dv
>
> I thought of using a scale to change length of Segment and then a 
> Displacer to move points of the geometry but I don't think that 
> would work well. For example it is fairly easy to do hanim with 
> Joint rotations and child Segment geometry but gets much more 
> complex when you need to deform skin according to Joint rotations.
>
> Also, I think Don showed a way to draw the initial endpoints of 
> Segment geometry by finding the parent and peer Joint centers by 
> reading the initial Joint center values. For standard HAnim it works 
> like our bodies and except for demo of things breaking does not deal 
> with changing Joint centers directly or Segment coordinates directly 
> since it is all done by controlling Joint rotations in the 
> hierarchy.
>
>> John=
>
> Thanks and Best,
> Joe
>
>> > It is important to recognize that the h-anim character we have is 
>> >  > of World Standard Quality. We need to add some features, like 
>> > some > 'standard' skins, more named skin surface feature details, 
>> > and > representative locations of internal organs, but the basic 
>> > model > of joints, segments, and skin is all there now and all 
>> > works in a > couple of X3D browsers.
>
> Literally, anyone that says we do not have a top-notch humanoid 
> model with all basic features provided by the the most expensive 
> humanoid modeling tool does not comprehend the basics of those 
> high-end tools and/or does not understand the feature set of X3D 
> HAnim.
>




More information about the x3d-public mailing list