<div style="color:rgb(0,0,0);font-family:arial,sans-serif;font-size:12pt"><p style="margin: 0.1rem 0; line-height: 1.0;">> <span style="color: #000000; font-family: 'Times New Roman'; font-size: medium; white-space: normal; float: none; display: inline;">There’s no matrix hierarchy. Matrices are just numbers in Blender, not nodes.</span> </p>
<p style="margin: 0.1rem 0; line-height: 1.0;"> </p>
<p style="margin: 0.1rem 0; line-height: 1.0;">Of course there is. You just haven't figured it out yet. Each 'transform' will have a rotation matrix, to animate, you generate the animation value and calculate a new rotation.</p>
<p style="margin: 0.1rem 0; line-height: 1.0;">Joe</p>
<p style="margin: 0.1rem 0; line-height: 1.0;"> </p>
<p style="margin: 0.1rem 0; line-height: 1.0;"> </p>
<p style="margin: 0.1rem 0; line-height: 1.0;"> </p>
</div>
<div class="elnk-inline-message-container" style="border-left: 1px solid #aaa; box-sizing: border-box; padding: 10px 0 10px 15px; margin: 0;">
<p>-----Original Message-----<br>From: John Carlson <yottzumm@gmail.com><br>Sent: Jun 3, 2024 3:18 PM<br>To: Joe D Williams <joedwil@earthlink.net><br>Cc: <h-anim@web3d.org>, <x3d-public@web3d.org><br>Subject: Re: [x3d-public] [create ..Don't give up ,,, 20b</p>
<p style="margin: 0.1rem 0; line-height: 1.0;"> </p>
<div dir="auto">I’m not looking for button, except to look at matrices decomposed into translation, rotation and scale.</div>
<div dir="auto"> </div>
<div dir="auto">I can’t currently animate a matrix. That’s where transforms come into play.</div>
<div dir="auto"> </div>
<div dir="auto">A matrix does not contain a child matrix in Blender. There’s no matrix hierarchy. Matrices are just numbers in Blender, not nodes.</div>
<div dir="auto"> </div>
<div dir="auto">John </div>
<div><br>
<div class="gmail_quote">
<div class="gmail_attr" dir="ltr">On Mon, Jun 3, 2024 at 4:50 PM Joe D Williams <<a href="mailto:joedwil@earthlink.net">joedwil@earthlink.net</a>> wrote:</div>
<blockquote class="gmail_quote" style="margin: 0 0 0 .8ex; border-left: 1px #ccc solid; padding-left: 1ex;">
<div style="color: #000000; font-family: arial,sans-serif; font-size: 12pt;">
<p style="margin: 0.1rem 0; line-height: 1.0;">> <span style="font-size: 12pt;">There are no Transforms in the Blender object hierarchy, just a matrix field of Object called “</span>matrix_world<span style="font-size: 12pt;">” </span></p>
</div>
<p style="margin: 0.1rem 0; line-height: 1.0;">The matrix hierarchy includes as one of its actions, the idea of a translation. For HAnim this value is initialized to the equivalent of axis-angle 0 0 1 0 all angles zero. When the hierarchy is evaluated, joint rotation by joint rotation the Joint either stays at 0 0 1 0 or moves to the commanded rotation, so the matrix for each 'transform' or object or whatever Blender calls them from the root, to the extremities. Incidentally, if a matrix is the only user interface available, then you have not found the right button to show it in x3d terms (axis-angle or unit quaternion) and I can't remember seeing pure marix for this data in the gltf. Incidentally, the x3d SAI can do matrix operations. </p>
<p style="margin: 0.1rem 0; line-height: 1.0;"> </p>
<p style="margin: 0.1rem 0; line-height: 1.0;">As for the Blender gui, see the indents, in and out to show hierarchy. I think the last one I saw blew because of too much stuff. The latest skeleton I sent has the 'transforms' but was empty, and that is all that is needed to go for an accurate import to blender or any. Whatever the Blender can export, probably have to do some editing of various stuff, but most important that the hierarchy is maintained. The names are not so important, the main thing is to get a good loa4 hierarchy into Blender and then start adding surfaces and accessories stuffs that can be exported back to x3d and worked for real time running. In the old days there was a couple of editors that worked native in x3d Classic or xml but most got bought out. Imagine any of the tools we have now that would add even some simple geometry and animation editing? </p>
<p style="margin: 0.1rem 0; line-height: 1.0;"> </p>
<p style="margin: 0.1rem 0; line-height: 1.0;">Where are those playgrounds I saw last month?</p>
<p style="margin: 0.1rem 0; line-height: 1.0;"> </p>
<p style="margin: 0.1rem 0; line-height: 1.0;">Thanks for All,</p>
<p style="margin: 0.1rem 0; line-height: 1.0;">Joe</p>
<p style="margin: 0.1rem 0; line-height: 1.0;"> </p>
<p style="margin: 0.1rem 0; line-height: 1.0;"> </p>
<div style="border-left: 1px solid #aaa; box-sizing: border-box; padding: 10px 0 10px 15px; margin: 0;">
<p> </p>
</div>
<div style="border-left: 1px solid #aaa; box-sizing: border-box; padding: 10px 0 10px 15px; margin: 0;">
<p>-----Original Message-----<br>From: John Carlson <<a href="mailto:yottzumm@gmail.com" target="_blank" rel="noopener">yottzumm@gmail.com</a>><br>Sent: Jun 3, 2024 2:05 PM<br>To: Joe D Williams <<a href="mailto:joedwil@earthlink.net" target="_blank" rel="noopener">joedwil@earthlink.net</a>><br>Subject: Re: [x3d-public] [create ..Don't give up ,,, 20b</p>
<p style="margin: 0.1rem 0; line-height: 1.0;"> </p>
<div dir="auto">There’s no “Call.” One creates instances of the Object type using DEF’s value as you suggest. There are no Transforms in the Blender object hierarchy, just a matrix field of Object called “matrix_world” which contains an instance of the Matrix type.</div>
<div dir="auto"> </div>
<div dir="auto">I have attempted to share images and .blend files showing the object hierarchy, but apparently you’ve not looked at them, otherwise you would know that there’s a whole object hierarchy separate from Blender bones but attached to the armature, with the top level node called “hanim_humanoid_root.” A last gasp effort might be to get rid of the armature, but that would mean we would be closely tied to HAnim naming, which is undesirable, especially when people can call things in blender whatever they like.</div>
<div dir="auto"> </div>
<div dir="auto">I have spent months trying to get local orientation interpolators working.</div>
<div dir="auto"> </div>
<div dir="auto">The whole point of doing work with Blender was to add an armature and Blender bones. There’s no real value add with objects as transforms unless we can get local rotations working during keyframe creation. I have two questions on StackExchange asking about this.</div>
<div dir="auto"> </div>
<div dir="auto">John</div>
<div><br>
<div class="gmail_quote">
<div class="gmail_attr" dir="ltr">On Mon, Jun 3, 2024 at 3:28 PM Joe D Williams <<a href="mailto:joedwil@earthlink.net" target="_blank" rel="noopener">joedwil@earthlink.net</a>> wrote:</div>
<blockquote class="gmail_quote" style="margin: 0 0 0 .8ex; border-left: 1px #ccc solid; padding-left: 1ex;">
<div style="color: #000000; font-family: arial,sans-serif; font-size: 12pt;">> Can anyone tell that I’m burned out with programming Blender Python? Just when you want to give up, try the attached.This is just a bare loa4 with all Joint and Segment and Site nodes. If you can import this transform hierarchy, then we can just add geometry wherever, no skin now. Joint and Segment and Site are just Transforms with some special fields, none of which are used in this basic import. If it won't let you call it a Joint or Segment or Site, then use the DEF name with Joint or Segment, or Site in front. Good Luck. This should be able to be imported into anything, with some care. The objective is to get away from the authoring tool default skeleton or armature or whatever, and be easy to pick this one and change dimensions as desired. Then you start with a good skeleton and go forward.Thanks,Joe
<div style="border-left: 1px solid #aaa; box-sizing: border-box; padding: 10px 0 10px 15px; margin: 0;">
<p>-----Original Message-----<br>From: John Carlson <<a href="mailto:yottzumm@gmail.com" target="_blank" rel="noopener">yottzumm@gmail.com</a>><br>Sent: Jun 3, 2024 12:53 PM<br>To: Michalis Kamburelis <<a href="mailto:michalis.kambi@gmail.com" target="_blank" rel="noopener">michalis.kambi@gmail.com</a>><br>Cc: Extensible 3D (X3D) Graphics public discussion <<a href="mailto:x3d-public@web3d.org" target="_blank" rel="noopener">x3d-public@web3d.org</a>>, Joe D Williams <<a href="mailto:joedwil@earthlink.net" target="_blank" rel="noopener">joedwil@earthlink.net</a>>, create3000/sunrize <<a href="mailto:reply%2BAAFMJ5YNMQD2V3WUI2UO2AOEMMNGREVBNHHITSFMII@reply.github.com" target="_blank" rel="noopener">reply+AAFMJ5YNMQD2V3WUI2UO2AOEMMNGREVBNHHITSFMII@reply.github.com</a>>, <<a href="mailto:h-anim@web3d.org" target="_blank" rel="noopener">h-anim@web3d.org</a>><br>Subject: Re: [x3d-public] [create3000/sunrize] Joe doesn't kick or move in sunrize. (Issue #6)</p>
<p style="margin: 0.1rem 0; line-height: 1.0;"> </p>
<div dir="auto">More likely, using geometry outside and inside the Humanoid causes it to be drawn twice. There’s no shape field in HAnimJoint that I know of. Subnodes, yes, obviously. Perhaps Displacers are a form of geometry, IDK.</div>
<div dir="auto"> </div>
<div dir="auto">Can anyone tell that I’m burned out with programming Blender Python?</div>
<div dir="auto"> </div>
<div dir="auto">John</div>
<div dir="auto"> </div>
<div dir="auto"> </div>
<div>
<div class="gmail_quote">
<div class="gmail_attr" dir="ltr">On Mon, Jun 3, 2024 at 4:39 AM Michalis Kamburelis <<a href="mailto:michalis.kambi@gmail.com" target="_blank" rel="noopener">michalis.kambi@gmail.com</a>> wrote:</div>
<blockquote class="gmail_quote" style="margin: 0 0 0 .8ex; border-left: 1px #ccc solid; padding-left: 1ex;">
<div dir="ltr">
<div dir="auto">Note: Listing the joints inside HAnimHumanoid.joints does not make them drawn. Nothing would be drawn twice. I'm saying this to address incorrect statement in this thread """Finally, the browser must actually ignore those fields because otherwise the thing would be drawn twice, once with DEFs and once with USEs. in those fields. """ . No, nothing would be drawn twice.</div>
</div>
</blockquote>
</div>
</div>
</div>
<p style="margin: 0.1rem 0; line-height: 1.0;"> </p>
</div>
</blockquote>
</div>
</div>
</div>
<p style="margin: 0.1rem 0; line-height: 1.0;"> </p>
</blockquote>
</div>
</div>
</div>
<p style="margin: 0.1rem 0; line-height: 1.0;"> </p>