The only thing I had to know after loading a mesh, is which meshbuffers belongs to which joints, because the information of nodes inside a b3d file is stored into a joint... but theres still missing information which meshbuffers belong to which joint.
In 'ISkinnedMesh.h' I added this variable into the SJoint struct:
Code: Select all
core::array< u32 > FolderMeshBuffer;
Code: Select all
else if ( strncmp( B3dStack.getLast().name, "TRIS", 4 ) == 0 )
{
scene::SSkinMeshBuffer *MeshBuffer = AnimatedMesh->createBuffer();
// MARKED LINE
InJoint->FolderMeshBuffer.push_back( AnimatedMesh->getMeshBuffers().size() );
// ----------------------------
if (brush_id!=-1)
{
loadTextures(Materials[brush_id]);
MeshBuffer->Material=Materials[brush_id].Material;
}
