diff options
Diffstat (limited to 'src/blu_cat/gra/skeletal_mesh.cpp')
-rw-r--r-- | src/blu_cat/gra/skeletal_mesh.cpp | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/blu_cat/gra/skeletal_mesh.cpp b/src/blu_cat/gra/skeletal_mesh.cpp index 1515dda..8e2e39f 100644 --- a/src/blu_cat/gra/skeletal_mesh.cpp +++ b/src/blu_cat/gra/skeletal_mesh.cpp @@ -86,7 +86,7 @@ load_mesh(void *obj) SKELETAL_MESH_HEADER_SIZE + header.num_vertexes * 16 * SIZE_32_BIT + header.num_indexes * SIZE_32_BIT + - header.num_bones * 16 * SIZE_32_BIT + + header.num_bones * (16 * SIZE_32_BIT + SIZE_16_BIT) + header.num_animations * (2 * SIZE_64_BIT + SIZE_32_BIT) + header.num_bone_transforms * 4 * SIZE_32_BIT + header.num_bone_positions * (3 * SIZE_32_BIT + SIZE_64_BIT) + @@ -153,7 +153,11 @@ load_mesh(void *obj) { // Load bones self->mesh->bones.reserve(header.num_bones); for(int i{0}; i < header.num_bones; i++) - self->mesh->bones.emplace_back(input.read_mat4()); + { + auto matrix{input.read_mat4()}; + auto parent{input.read_ui16()}; + self->mesh->bones.emplace_back(matrix, parent); + } } { // Load animations |