<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <div class="moz-cite-prefix">About the texture,<br>
      i think you do a wrong modification which change the global size
      like your translation is different for each part which create a
      scaling algo<br>
      <br>
      Check you do your modification in the right order (translation
      first and scaling if needed after).<br>
      <br>
      I'm not too much time today to look all the code. <br>
      Sry for my en … i quite tired today<br>
      <br>
      i also send your email to a friend which is better than me in
      graphical computing.<br>
      <br>
      27/08/2017 à 13:16, Vsevolod Kremianskii a écrit :<br>
    </div>
    <blockquote type="cite"
cite="mid:CANWL8p+YADPLUMuS6Yv5Qpb2HMzXiO_PZaD4Op=nSi-14VkxdA@mail.gmail.com">
      <div dir="ltr">It's all <a
          href="https://github.com/xoreos/xoreos/pull/159/files"
          moz-do-not-send="true">here</a> or you could use <a
          href="https://github.com/seedhartha/xoreos/tree/kotoranim3"
          target="_blank" moz-do-not-send="true">this</a> branch.
        <div><br>
        </div>
        <div>b there is a float array of MDX bone data.</div>
        <div><br>
        </div>
        <div>For every vertex there are 8 float values, four of which
          are bone weights, four are bone identifiers (or -1 if no bone
          is used). Weights are normalized.</div>
        <div><br>
        </div>
        <div>P.S. Already fixed skeleton falling through the floor</div>
      </div>
      <div class="gmail_extra"><br>
        <div class="gmail_quote">2017-08-27 18:01 GMT+07:00 Bardot
          Jérôme <span dir="ltr"><<a
              href="mailto:bardot.jerome@gmail.com" target="_blank"
              moz-do-not-send="true">bardot.jerome@gmail.com</a>></span>:<br>
          <blockquote class="gmail_quote" style="margin:0 0 0
            .8ex;border-left:1px #ccc solid;padding-left:1ex">
            <div text="#000000" bgcolor="#FFFFFF">
              <div class="m_8041118729166450523moz-cite-prefix">Can you
                send more code ? (a paste)<br>
                <br>
                what is your b ? <br>
                <div>
                  <div class="h5"> <br>
                    <br>
                    <br>
                    Le 27/08/2017 à 10:26, Vsevolod Kremianskii a
                    écrit :<br>
                  </div>
                </div>
              </div>
              <blockquote type="cite">
                <div>
                  <div class="h5">
                    <div dir="ltr"><span style="font-size:12.8px">Alright,
                        it works. Sort off. Except for that ugly mesh
                        deformation issue. I wonder if somebody could
                        set me in the right direction from here.</span>
                      <div style="font-size:12.8px"><br>
                      </div>
                      <div style="font-size:12.8px">Here's how it's
                        done:</div>
                      <div style="font-size:12.8px"><br>
                      </div>
                      <div style="font-size:12.8px">I load position and
                        orientation controllers for every animation
                        node, which pretty much does it for the skeleton
                        (also heads, since they're attached to the
                        headhook).</div>
                      <div style="font-size:12.8px">I load bone mapping
                        from skin mesh header and per vertex bone data
                        from MDX (as described <a
href="https://github.com/xoreos/xoreos-docs/blob/master/specs/kotor_mdl.html"
                          target="_blank" moz-do-not-send="true">here</a>).</div>
                      <div style="font-size:12.8px">When animation gets
                        updated I iterate through model's skinned nodes
                        and for every vertex do the following:</div>
                      <div style="font-size:12.8px"><br>
                      </div>
                      <div style="font-size:12.8px">I iterate over nodes
                        (bones) that affect the vertex and create each
                        node's global transformation matrix (relative to
                        the root node). Then I multiply initial vertex
                        coordinates by the transformation matrix and
                        multiply that by the bone weight. Resulting
                        vertex coordinates are calculated as a sum of
                        four transformed vertices. There are some
                        optimizations in place so it isn't quite as bad
                        as it sounds.</div>
                      <div style="font-size:12.8px"><br>
                      </div>
                      <div>
                        <div style="font-size:12.8px"> <span style="white-space:pre-wrap">             </span>for
                          (uint32 i = 0; i < vertexCount; ++i) {</div>
                        <div style="font-size:12.8px">
                          <div> <span style="white-space:pre-wrap">                      </span>v[0]
                            = 0;</div>
                          <div> <span style="white-space:pre-wrap">                      </span>v[1]
                            = 0;</div>
                          <div> <span style="white-space:pre-wrap">                      </span>v[2]
                            = 0;</div>
                          <div> <span style="white-space:pre-wrap">                      </span>for
                            (uint8 j = 0; j < 4; ++j) {</div>
                          <div> <span style="white-space:pre-wrap">                              </span>int
                            index = static_cast<int>(b[4 + j]);</div>
                          <div> <span style="white-space:pre-wrap">                              </span>if
                            (index != -1) {</div>
                          <div> <span style="white-space:pre-wrap">                                      </span>float
                            rv[3];</div>
                          <div> <span style="white-space:pre-wrap">                                      </span>transform
                            = transArr + (index * 16);</div>
                          <div> <span style="white-space:pre-wrap">                                      </span>transform.multiply(iv,
                            rv);</div>
                          <div> <span style="white-space:pre-wrap">                                      </span>v[0]
                            += rv[0] * b[j];</div>
                          <div> <span style="white-space:pre-wrap">                                      </span>v[1]
                            += rv[1] * b[j];</div>
                          <div> <span style="white-space:pre-wrap">                                      </span>v[2]
                            += rv[2] * b[j];</div>
                          <div> <span style="white-space:pre-wrap">                              </span>}</div>
                          <div> <span style="white-space:pre-wrap">                      </span>}</div>
                          <div> <span style="white-space:pre-wrap">                      </span>v
                            += stride;</div>
                          <div> <span style="white-space:pre-wrap">                      </span>iv
                            += 3;</div>
                          <div> <span style="white-space:pre-wrap">                      </span>b
                            += 8;</div>
                          <div> <span style="white-space:pre-wrap">              </span>}</div>
                        </div>
                        <div style="font-size:12.8px"><br>
                        </div>
                        <div style="font-size:12.8px">Now, the problem
                          is that weird stretching issue. I have no idea
                          what could cause that at the moment.</div>
                        <div style="font-size:12.8px"><a
                            href="http://goog_555208919" target="_blank"
                            moz-do-not-send="true"><br>
                          </a></div>
                        <div><span style="font-size:12.8px"><a
                              href="https://yadi.sk/i/0hnd2a0M3MMYJR"
                              target="_blank" moz-do-not-send="true">https://yadi.sk/i/<wbr>0hnd2a0M3MMYJR</a></span><br>
                        </div>
                      </div>
                      <div><span style="font-size:12.8px"><a
                            href="https://yadi.sk/i/jdiTSrXZ3MMYL3"
                            target="_blank" moz-do-not-send="true">https://yadi.sk/i/<wbr>jdiTSrXZ3MMYL3</a></span><br>
                      </div>
                      <div><span style="font-size:12.8px"><a
                            href="https://yadi.sk/i/Vm3kRTVf3MMYKQ"
                            target="_blank" moz-do-not-send="true">https://yadi.sk/i/<wbr>Vm3kRTVf3MMYKQ</a></span><br>
                      </div>
                      <div><span style="font-size:12.8px"><br>
                        </span></div>
                    </div>
                    <br>
                    <fieldset
                      class="m_8041118729166450523mimeAttachmentHeader"></fieldset>
                    <br>
                  </div>
                </div>
                <span class="">
                  <pre>______________________________<wbr>_________________
xoreos-devel mailing list
<a class="m_8041118729166450523moz-txt-link-abbreviated" href="mailto:xoreos-devel@xoreos.org" target="_blank" moz-do-not-send="true">xoreos-devel@xoreos.org</a>
<a class="m_8041118729166450523moz-txt-link-freetext" href="https://xoreos.org/mailman/listinfo/xoreos-devel" target="_blank" moz-do-not-send="true">https://xoreos.org/mailman/<wbr>listinfo/xoreos-devel</a>
</pre>
                </span></blockquote>
              <p><br>
              </p>
            </div>
            <br>
            ______________________________<wbr>_________________<br>
            xoreos-devel mailing list<br>
            <a href="mailto:xoreos-devel@xoreos.org"
              moz-do-not-send="true">xoreos-devel@xoreos.org</a><br>
            <a href="https://xoreos.org/mailman/listinfo/xoreos-devel"
              rel="noreferrer" target="_blank" moz-do-not-send="true">https://xoreos.org/mailman/<wbr>listinfo/xoreos-devel</a><br>
            <br>
          </blockquote>
        </div>
        <br>
      </div>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">_______________________________________________
xoreos-devel mailing list
<a class="moz-txt-link-abbreviated" href="mailto:xoreos-devel@xoreos.org">xoreos-devel@xoreos.org</a>
<a class="moz-txt-link-freetext" href="https://xoreos.org/mailman/listinfo/xoreos-devel">https://xoreos.org/mailman/listinfo/xoreos-devel</a>
</pre>
    </blockquote>
    <p><br>
    </p>
  </body>
</html>