summaryrefslogtreecommitdiff
path: root/src/blu_cat/gra/skeletal_mesh.cpp
diff options
context:
space:
mode:
authorFrederico Linhares <fred@linhares.blue>2025-09-05 09:55:25 -0300
committerFrederico Linhares <fred@linhares.blue>2025-09-05 09:55:25 -0300
commit6deda4129825b4b77fb7179f43d4bb7a755c4813 (patch)
treec3d85044f53144257de73819bfcb9dc41af45f70 /src/blu_cat/gra/skeletal_mesh.cpp
parent68761609f3b98bfc99f2164eece12027d5575c0b (diff)
feat Add hierarchy to skeletal meshHEADmaster
Diffstat (limited to 'src/blu_cat/gra/skeletal_mesh.cpp')
-rw-r--r--src/blu_cat/gra/skeletal_mesh.cpp8
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