<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<div class="moz-cite-prefix">On 12/11/2018 8:13 AM, Joseph D
Williams wrote:<br>
</div>
<blockquote type="cite"
cite="mid:E1gWkf9-0001At-KI@elasmtp-curtail.atl.sa.earthlink.net">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="Generator" content="Microsoft Word 15 (filtered
medium)">
<style><!--
/* Font Definitions */
@font-face
{font-family:"Cambria Math";
panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0in;
margin-bottom:.0001pt;
font-size:11.0pt;
font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
{mso-style-priority:99;
color:blue;
text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
{mso-style-priority:99;
color:#954F72;
text-decoration:underline;}
p.m-1109494319870621309m-9175488166943601978msolistparagraph, li.m-1109494319870621309m-9175488166943601978msolistparagraph, div.m-1109494319870621309m-9175488166943601978msolistparagraph
{mso-style-name:m_-1109494319870621309m_-9175488166943601978msolistparagraph;
mso-margin-top-alt:auto;
margin-right:0in;
mso-margin-bottom-alt:auto;
margin-left:0in;
font-size:11.0pt;
font-family:"Calibri",sans-serif;
color:black;}
.MsoChpDefault
{mso-style-type:export-only;}
@page WordSection1
{size:8.5in 11.0in;
margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
{page:WordSection1;}
/* List Definitions */
@list l0
{mso-list-id:1372613687;
mso-list-template-ids:-1;}
@list l0:level1
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:.5in;
mso-level-number-position:left;
text-indent:-.25in;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
@list l0:level2
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:1.0in;
mso-level-number-position:left;
text-indent:-.25in;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
@list l0:level3
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:1.5in;
mso-level-number-position:left;
text-indent:-.25in;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
@list l0:level4
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:2.0in;
mso-level-number-position:left;
text-indent:-.25in;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
@list l0:level5
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:2.5in;
mso-level-number-position:left;
text-indent:-.25in;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
@list l0:level6
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:3.0in;
mso-level-number-position:left;
text-indent:-.25in;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
@list l0:level7
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:3.5in;
mso-level-number-position:left;
text-indent:-.25in;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
@list l0:level8
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:4.0in;
mso-level-number-position:left;
text-indent:-.25in;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
@list l0:level9
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:4.5in;
mso-level-number-position:left;
text-indent:-.25in;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
ol
{margin-bottom:0in;}
ul
{margin-bottom:0in;}
--></style>
<div class="WordSection1">
<p class="MsoNormal">I meant simple standard gltf use of 16
joints per vertex with unused weights set to 0.</p>
</div>
</blockquote>
<br>
Joe,<br>
<br>
I do not know what you are referring to or where you got your
information. <br>
<br>
I found a tutorial on the Khronos GitHib
(<a class="moz-txt-link-freetext" href="https://github.com/KhronosGroup/glTF-Tutorials/blob/master/gltfTutorial/gltfTutorial_020_Skins.md">https://github.com/KhronosGroup/glTF-Tutorials/blob/master/gltfTutorial/gltfTutorial_020_Skins.md</a>)
that discusses skinning, rigging, and animation. In "The skinning
joints and weights" section, it states that (2nd paragraph) the the
data structure that connects vertices to joints is commonly stored
in a 4-element vector. This limits the number of different joints
that can affect a vertex to four.<br>
<br>
<br>
Leonard Daly<br>
<br>
<br>
<br>
<br>
<blockquote type="cite"
cite="mid:E1gWkf9-0001At-KI@elasmtp-curtail.atl.sa.earthlink.net">
<div class="WordSection1">
<p class="MsoNormal">Joe</p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Sent from <a
href="https://go.microsoft.com/fwlink/?LinkId=550986"
moz-do-not-send="true">Mail</a> for Windows 10</p>
<p class="MsoNormal"><o:p> </o:p></p>
<div
style="mso-element:para-border-div;border:none;border-top:solid
#E1E1E1 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal" style="border:none;padding:0in"><b>From:
</b><a href="mailto:joedwil@earthlink.net"
moz-do-not-send="true">Joseph D Williams</a><br>
<b>Sent: </b>Tuesday, December 11, 2018 8:11 AM<br>
<b>To: </b><a href="mailto:Leonard.Daly@realism.com"
moz-do-not-send="true">Leonard Daly</a>; <a
href="mailto:x3d-public@web3d.org" moz-do-not-send="true">x3d-public@web3d.org</a><br>
<b>Subject: </b>Re: [x3d-public] glTF - HAnim conversion</p>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">What was the detail that (for the
convenience of the hardware) ‘always’ used 19 joints per
vertex with unused joints weights set to 0?<o:p></o:p></p>
<p class="MsoNormal">I thought I have heard that a few times.<o:p></o:p></p>
<p class="MsoNormal">Joe<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<div style="border:none;border-top:solid #E1E1E1
1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b>From: </b><a
href="mailto:Leonard.Daly@realism.com"
moz-do-not-send="true">Leonard Daly</a><br>
<b>Sent: </b>Tuesday, December 11, 2018 7:38 AM<br>
<b>To: </b><a href="mailto:x3d-public@web3d.org"
moz-do-not-send="true">x3d-public@web3d.org</a><br>
<b>Subject: </b>Re: [x3d-public] glTF - HAnim conversion<o:p></o:p></p>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal" style="margin-bottom:12.0pt"><o:p> </o:p></p>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<div>
<div>
<div>
<blockquote style="border:none;border-left:solid #CCCCCC
1.0pt;padding:0in 0in 0in
6.0pt;margin-left:4.8pt;margin-top:5.0pt;margin-right:0in;margin-bottom:5.0pt">
<div>
<div>
<ul type="disc">
<li
class="m-1109494319870621309m-9175488166943601978msolistparagraph"
style="mso-list:l0 level1 lfo1">glTF
associates a joint or<o:p></o:p></li>
</ul>
<p class="MsoNormal"
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:40.8pt">multiple
joints to each vertex of a mesh <o:p></o:p></p>
<p class="MsoNormal"
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:40.8pt"> <o:p></o:p></p>
<p class="MsoNormal"
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:40.8pt">yes,
gltf apparently associates ‘all’ or always at
least 16(?) joints (and weights) with each
vertex. That means there is feature called a
vertex that has a list of joints and weights
associated with it. There is one of these for
each vertex, all listing all joints and weights.<o:p></o:p></p>
</div>
</div>
</blockquote>
</div>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">Yes. For glTF, the minimum a
compliant viewer needs to support is 4 joints (out of
many) per vertex. A viewer is free to ignore additional
joints, with the lowest weights.<o:p></o:p></p>
</div>
</div>
</blockquote>
<p class="MsoNormal" style="margin-bottom:12.0pt"><br>
<br>
Standard practice in the animation industry is to use a
maximum of four joints per skin vertex. There is no standard
that limits this. Practical experience from rigging (attaching
vertices to joints (aka bones)) and performance indicates that
(for the most part) four is the most that is needed. In many
cases it is only two.<br>
<br>
So for practical purposes, the limit in glTF does not impact
what can be done.<o:p></o:p></p>
<p class="MsoNormal">-- <br>
<b><span style="font-size:13.5pt;color:#333366">Leonard Daly</span></b><span
style="color:#333366"><br>
3D Systems & Cloud Consultant<br>
LA ACM SIGGRAPH Past Chair<br>
President, Daly Realism - <i>Creating the Future</i> </span><o:p></o:p></p>
<p class="MsoNormal"><span style="color:black"><o:p> </o:p></span></p>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<br>
<pre wrap="">_______________________________________________
x3d-public mailing list
<a class="moz-txt-link-abbreviated" href="mailto:x3d-public@web3d.org">x3d-public@web3d.org</a>
<a class="moz-txt-link-freetext" href="http://web3d.org/mailman/listinfo/x3d-public_web3d.org">http://web3d.org/mailman/listinfo/x3d-public_web3d.org</a>
</pre>
</blockquote>
<p><br>
</p>
<div class="moz-signature">-- <br>
<font class="tahoma,arial,helvetica san serif" color="#333366">
<font size="+1"><b>Leonard Daly</b></font><br>
3D Systems & Cloud Consultant<br>
LA ACM SIGGRAPH Past Chair<br>
President, Daly Realism - <i>Creating the Future</i>
</font></div>
</body>
</html>