[x3d-public] HAnim Winter and Spring: some progress

Joe D Williams joedwil at earthlink.net
Tue Sep 19 11:01:36 PDT 2023


Thanks Holger, I will study this. I can only tell you what I did to make it look like I wanted it to look. Text aside, please look at the skin of the model. Using scale -1 for z certainly changes from the back facing -z to facing +z, but the the skin becomes transparent with the texture applied to the inside. I can only describe that as turning the  skin inside out. As a result of  that, the skin is now transparent because we are seeing polys it from the back. Changing ccw makes it visible and texture works.

So, the thing is, the model is ok by me for now, except your rendering of the skin is different than others because of what? 
I am looking for a better solution, but the question remains,why is  X_ITE different for the this code, or did you make a change to the code.
I request that you process the code as it appears, at least that is  consistent with other players.w

-----Original Message-----
From: Holger Seelig <holger.seelig at yahoo.de>
Sent: Sep 19, 2023 7:03 AM
To: Joe D Williams <joedwil at earthlink.net>
Cc: Donald Brutzman <brutzman at nps.edu>, X3D <x3d-public at web3d.org>
Subject: Re: [x3d-public] HAnim Winter and Spring: some progress

1. Restriction on possible connected points and number of displacers
 
After a night of meditation, I removed the restrictions on the number of references of a coordIndex and also the number of possible HAnimDisplacer nodes per HAnimJoint. This means that now these values depend only on the hardware used. The new implementation is optimal in the sense that only the used number of values adds to the computation time.
For the reason above I can't provide an optimized list, I apologize for this.

 
2. Negative Scale
 
> A negative scale will not affect what is front face and what is back face.
 
All I can say  is try it and see. The model changes the direction it is facing, but becomes transparent and you see the inside surface of the skin. 
 
> This means that a Text node with solid true, mirrored with negative scale (0 -1 0), also shows its front face to the camera. This makes it possible to create a text with solid true which has a mirrored counterpart which is a clone of the Text node.
 
To me,this is entirely different than the case of this skin, which was drawn in +Zin native coord system, probably facing+Z. 
 
> A negative scale will not turn the model inside out, it stays as it is.
 
Please try it and tell me what you see. It is like the model was rotated 180 but is now inside out. 
 
> The main advantage is as described above: we can use solid true models in many situations where a negative scale is used without flipping inside out.
 
OK, think I tried that with no effect. 
 
> This effect is achieved by detecting if there is any negative scale, which can be determined if the determinant of the scale-rotation matrix is less than zero. If this is the case, ccw must be exchanged with cw and vice versa.
 
OOh, and you are going to change this for me as your standard practice? 
 
Please tell me what you find with this skin when you try these. Got a better way?  . 
Your discussion make sense and almost sounds like what is happening, but please just render the thing as it is coded. Works as I reasonably expect it to in all other browsers. 
 
> Holger 
 
Joe
 
--
Holger Seelig
Leipzig, Germany
 
holger.seelig at yahoo.de
https://create3000.github.io/x_ite/








Am 19.09.2023 um 03:06 schrieb Joe D Williams <joedwil at earthlink.net>:
Thanks Holger, sorry to make a problem, but it seems to be on purpose at this time.
Important items in these models for now are:

DEF Tufani HAnimHumanoid { scale 1 1 -1 
and
 geometry FALSE

I need that to make it visible due to the importation process.
I know fromexperience that X_ITEX3D is not honoring one of those in the rendering of the archive model. 
The skin is appearing partially transparent, it is being viewed from the transparent side and seeing the texture on the inside side of the skin, looking fairly real, showing the joint marker boxes, through the transparency. until you turn it. Story: the skin and skeleton were actually drawn in +Zin lefthand, so it sort of got turned inside out in the conversion to +Zout right-hand.
(Hint if you try that, the z-axis reversal by scale does not change handness of any joint.)
If you know a another style other than just sending it back to the authoring program to fix, then OK, but what you have should work.

Can you give me back the more optimized listing of the 'edited' index and weights?

>From the running animations, it now appears all skin points are connected to skeleton. Thanks, a fine step. However, this limitation of four weights? is not quite enough to also account for use of displacers. True, four actuators should be enough for most, but still, I think the hardware usually says a vertex can use up to 16, with most mostly 0s. That is obviously way too many, I mean who needs 16 variables to compute a vertex data point location? However 4 may not be enough for facial? Please check with current hanim facial animation project. It is easy to think of a facial expression wanting to animate with more than two joints and two displacers for a total of more than four actuators. I mean we really always want to operate in 16D! 

X3DOM is working as expected, with everything connected when I click the archive link. And, when I use .x3d files generated at the archives, it works at home with view3dscene.

So, please let's fix the rendering of these models by X_ITEX3D (and find missing viewpoint) maybe by comparing what you see in other players, along with some thoughts on the importation problem(s) and solution(s). 

Thanks for All,
Joe






-----Original Message-----
From: Holger Seelig <holger.seelig at yahoo.de>
Sent: Sep 18, 2023 1:01 PM
To: Joe D Williams <joedwil at earthlink.net>
Cc: Donald Brutzman <brutzman at nps.edu>, X3D <x3d-public at web3d.org>
Subject: Re: [x3d-public] HAnim Winter and Spring: some progress

I have now released a version that tries to work around the issue of too many references. Since I can't combine more than 4 joins with weights on the GPU, excess joins are now filtered out, namely the ones that are smallest. This works at least well for the three poblematic models here:  Leif, Lily, Tufan. These now cut a better figure.
 
One small gripe: The ccw field of the geometry should be set to `false`.

 
https://www.web3d.org/x3d/content/examples/HumanoidAnimation/WinterAndSpring/index.html
 
 
--
Holger Seelig
Leipzig, Germany
 
holger.seelig at yahoo.de
https://create3000.github.io/x_ite/








Am 18.09.2023 um 03:30 schrieb Joe D Williams <joedwil at earthlink.net>:

  *  https://www.web3d.org/x3d/content/examples/HumanoidAnimation/WinterAndSpring


Thanks, but, the today published Lief model displays but has several failures in X_ITE. Choose Look At and scroll to get it in range to view, then choose Examine to rotate. It operates by cycling through several different animations over a 100 second interval.

For the default view (X_ITE) several connections were broken in the code translation. Leif, Lily, Tufani models broken in same or similar ways, skin bindings and joint rotations. 
The file labelled X3D Model ("Original XML" although the model was submitted in.x3dv) works as expected in view3dscene. 
The file labelled Classic VRML (derived from Classic input transcoded to xml then back to Classic) has simple error will not run.
The file labelled VRML97 will not run, having nodes not in VRML97.
The file labelled labelled Canonical XML worked fine in view3dscene when downloaded and renamed. 
X3DOM selection fails -  no TimeTrigger node? fixed
X_ITE selection very badly broken for unknown reason(s) same as default view. 

Joe


 

_______________________________________________
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/20230919/43a05cab/attachment-0001.html>


More information about the x3d-public mailing list