Merge pull request #70091 from clayjohn/bone-aabbs
Remove mesh bone_aabbs as they are not used anywhere and calculating them is a pain
This commit is contained in:
commit
2b056115ef
4 changed files with 0 additions and 42 deletions
|
@ -323,27 +323,8 @@ void MeshStorage::mesh_add_surface(RID p_mesh, const RS::SurfaceData &p_surface)
|
||||||
}
|
}
|
||||||
|
|
||||||
if (mesh->surface_count == 0) {
|
if (mesh->surface_count == 0) {
|
||||||
mesh->bone_aabbs = p_surface.bone_aabbs;
|
|
||||||
mesh->aabb = p_surface.aabb;
|
mesh->aabb = p_surface.aabb;
|
||||||
} else {
|
} else {
|
||||||
if (mesh->bone_aabbs.size() < p_surface.bone_aabbs.size()) {
|
|
||||||
// ArrayMesh::_surface_set_data only allocates bone_aabbs up to max_bone
|
|
||||||
// Each surface may affect different numbers of bones.
|
|
||||||
mesh->bone_aabbs.resize(p_surface.bone_aabbs.size());
|
|
||||||
}
|
|
||||||
for (int i = 0; i < p_surface.bone_aabbs.size(); i++) {
|
|
||||||
const AABB &bone = p_surface.bone_aabbs[i];
|
|
||||||
if (bone.has_volume()) {
|
|
||||||
AABB &mesh_bone = mesh->bone_aabbs.write[i];
|
|
||||||
if (mesh_bone != AABB()) {
|
|
||||||
// Already initialized, merge AABBs.
|
|
||||||
mesh_bone.merge_with(bone);
|
|
||||||
} else {
|
|
||||||
// Not yet initialized, copy the bone AABB.
|
|
||||||
mesh_bone = bone;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
mesh->aabb.merge_with(p_surface.aabb);
|
mesh->aabb.merge_with(p_surface.aabb);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -120,8 +120,6 @@ struct Mesh {
|
||||||
Surface **surfaces = nullptr;
|
Surface **surfaces = nullptr;
|
||||||
uint32_t surface_count = 0;
|
uint32_t surface_count = 0;
|
||||||
|
|
||||||
Vector<AABB> bone_aabbs;
|
|
||||||
|
|
||||||
bool has_bone_weights = false;
|
bool has_bone_weights = false;
|
||||||
|
|
||||||
AABB aabb;
|
AABB aabb;
|
||||||
|
|
|
@ -434,27 +434,8 @@ void MeshStorage::mesh_add_surface(RID p_mesh, const RS::SurfaceData &p_surface)
|
||||||
}
|
}
|
||||||
|
|
||||||
if (mesh->surface_count == 0) {
|
if (mesh->surface_count == 0) {
|
||||||
mesh->bone_aabbs = p_surface.bone_aabbs;
|
|
||||||
mesh->aabb = p_surface.aabb;
|
mesh->aabb = p_surface.aabb;
|
||||||
} else {
|
} else {
|
||||||
if (mesh->bone_aabbs.size() < p_surface.bone_aabbs.size()) {
|
|
||||||
// ArrayMesh::_surface_set_data only allocates bone_aabbs up to max_bone
|
|
||||||
// Each surface may affect different numbers of bones.
|
|
||||||
mesh->bone_aabbs.resize(p_surface.bone_aabbs.size());
|
|
||||||
}
|
|
||||||
for (int i = 0; i < p_surface.bone_aabbs.size(); i++) {
|
|
||||||
const AABB &bone = p_surface.bone_aabbs[i];
|
|
||||||
if (bone.has_volume()) {
|
|
||||||
AABB &mesh_bone = mesh->bone_aabbs.write[i];
|
|
||||||
if (mesh_bone != AABB()) {
|
|
||||||
// Already initialized, merge AABBs.
|
|
||||||
mesh_bone.merge_with(bone);
|
|
||||||
} else {
|
|
||||||
// Not yet initialized, copy the bone AABB.
|
|
||||||
mesh_bone = bone;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
mesh->aabb.merge_with(p_surface.aabb);
|
mesh->aabb.merge_with(p_surface.aabb);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -138,8 +138,6 @@ private:
|
||||||
Surface **surfaces = nullptr;
|
Surface **surfaces = nullptr;
|
||||||
uint32_t surface_count = 0;
|
uint32_t surface_count = 0;
|
||||||
|
|
||||||
Vector<AABB> bone_aabbs;
|
|
||||||
|
|
||||||
bool has_bone_weights = false;
|
bool has_bone_weights = false;
|
||||||
|
|
||||||
AABB aabb;
|
AABB aabb;
|
||||||
|
|
Loading…
Reference in a new issue