message: gltfpack: Implement support for skins with >256 joints
  We now automatically emit either 8-bit or 16-bit joint indices depending
  on the joint count.
diff: @@ -734,6 +734,15 @@ StreamFormat writeVertexStream(std::string& bin, const Stream& stream, const Qua
  return format;
  }
  else if (stream.type == cgltf_attribute_type_joints)
  + {
  + unsigned int maxj = 0;
  +
  + for (size_t i = 0; i < stream.data.size(); ++i)
  + maxj = std::max(maxj, unsigned(stream.data[i].f[0]));
  +
  + assert(maxj <= 65535);
  +
  + if (maxj <= 255)
  {
  for (size_t i = 0; i < stream.data.size(); ++i)
  {
  @@ -756,6 +765,24 @@ StreamFormat writeVertexStream(std::string& bin, const Stream& stream, const Qua
  {
  const Attr& a = stream.data[i];
  + uint16_t v[4] = {
  + uint16_t(a.f[0]),
  + uint16_t(a.f[1]),
  + uint16_t(a.f[2]),
  + uint16_t(a.f[3])};
  + bin.append(reinterpret_cast<const char*>(v), sizeof(v));
  + }
  +
  + StreamFormat format = {cgltf_type_vec4, cgltf_component_type_r_16u, false, 8};
  + return format;
  + }
  + }
  + else
  + {
  + for (size_t i = 0; i < stream.data.size(); ++i)
  + {
  + const Attr& a = stream.data[i];
  +
  float v[4] = {
  a.f[0],
  a.f[1],
  